Главная страница
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.024 c
6-1100851087
Julia
2004-11-19 10:58
2005.02.06
Передача файла через прямое модемное соединение


1-1106406831
Polkan
2005-01-22 18:13
2005.02.06
проблема с try ... except


8-1098638844
aladdin
2004-10-24 21:27
2005.02.06
Видео плеер


1-1106071661
Никита
2005-01-18 21:07
2005.02.06
Как затолкать в SubItems ListView a компонент?


1-1106714824
AbramovVi
2005-01-26 07:47
2005.02.06
от Variant к обьекту