Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.06;
Скачать: CL | DM;

Вниз

COM порт дубль 2   Найти похожие ветки 

 
Phantomouse ©   (2004-12-14 12:46) [0]

Приветствую!

И снова я озадачен небольшой (для знающих) проблемой. После долгих мучений с разными COMпонентами решил сделать обмен с COMом через ReadFile и WriteFile. Но если посылать в COM и получать из него числа (байты, HEX... не знаю как правильно назвать) получается, то послат текст - проблема. Соответственно получить его - тоже.

Далее. Согласно протоколу:

Прием и передача байта осуществляется последовательным потоком 11 бит:  1 стартовый бит, 8 бит данных (младшими битами вперед), 9-ый бит данных 0 или 1, 1 стоповый бит...

Передачу информации по протоколу 0 всегда начинает ЭВМ с  команды синхронизации, в которой восемь бит данных содержат номер весов (от 0 до 99), а девятый бит данных устанавливается в 1. Все остальные команды и данные передаются с девятым битом данных, равным 0.

Как передать комаду с девятым битом 1 или 0. А конкретно как настроить КОМ-порт, чтобы эти команды соответствовали схеме
СТАРТОВЫЙ_БИТ-8БИТ_ДАННЫХ-ДЕВЯТЫЙ_БИТ
???

Вот и все :-). Если что-то непонятно объяснил - поясню конкретнее... Хотелось бы получить хотя-бы небольшие примерчики кода :-).


 
DiamondShark ©   (2004-12-14 13:03) [1]


var
 dcb: TDCB;
 ...
begin
 ...
 GetCommState(hPort, dcb);
 dcb.Parity := MARKPARITY;   // 9-й бит = 1 или
 //dcb.Parity := SPACEPARITY; // 9-й бит = 0
 SetCommState(hPort, dcb);
 ...



Страницы: 1 вся ветка

Текущий архив: 2005.02.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
1-1106299821
Глюк111
2005-01-21 12:30
2005.02.06
окно, вызываемое методом ShowModal не получает фокуса


1-1106546496
Mielofon
2005-01-24 09:01
2005.02.06
EXE, DLL и ShareMem


4-1103283927
__Vic
2004-12-17 14:45
2005.02.06
Путь к каталогу (файлу)


4-1103105914
-=SS=-
2004-12-15 13:18
2005.02.06
Странное поведение Dll


14-1105845675
Думкин
2005-01-16 06:21
2005.02.06
С Днем Рождения! 16 января