Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Технологии
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 30.03.2015, 11:15
sforce sforce вне форума
Прохожий
 
Регистрация: 30.03.2015
Сообщения: 4
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Передать двоичный код в COM

Добрый день. Помогите, пожалуйста, по следующему вопросу.
У меня данные типа string отправляются на com порт с помощью следующей процелуры:

Код:
Procedure WriteStrToPort(Str:String);
Var
ByteWritten:cardinal;
MyBuff:Array[0..1023] Of Char;
Begin

FillChar(MyBuff,SizeOf(MyBuff),#0);
Str:=Str+#13#10;
StrPCopy(MyBuff,Str);
If Not WriteFile(hPort,MyBuff,Length(Str),ByteWritten,Nil) Then
Begin
SysErrorMessage(GetLastError);
fmMain.btnStop.Click;
Exit;
End;
End;

Все работает, но мне необходимо отправить команду в двоичном виде, со следующими условиями

Цитата:
Длина посылки от компьютера к компаратору фиксированная – 4 байта.
Состав посылки:
SOM=0x01 – заголовок
CMD – команда
DAT0 – данные, если нужны
DAT1 – данные, если нужны
EOF=0x1a – конец посылки
Таким образом, минимальная длина посылки – 3 байта.
Необходимая команда GETCOUNT - 0x3a

Подскажите, как необходимо изменить код?
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:08.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter