Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.09.2010, 17:52   #1
Speeker
Форумчанин
 
Аватар для Speeker
 
Регистрация: 01.12.2006
Сообщений: 241
По умолчанию Работа с com портом

Есть прибор, который подключаеться через com порт к компьютеру.
протокол обмена известен
Как отправить ему 16 ричное значение и как прочитать такое значение от него?
Програмисты - единственные люди, которым платят за исправления их же ошибок
Speeker вне форума Ответить с цитированием
Старый 06.09.2010, 19:37   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Код:
function readcom: string;
var RX_Count : cardinal;
    TempArray: array[1..255] of Byte;
    Count    : Integer;
begin
 result:= '';
 ReadFile(Com, TempArray, 255, RX_Count, nil);
 for Count:= 1 to RX_Count do result:= result + Chr(TempArray[Count])
end;

procedure sendcom(s: string);
var TempArray: array[1..255] of Byte;
    Count    : Integer;
    TX_Count : cardinal;
begin
 for Count:= 1 to Length(S) do TempArray[Count]:= Ord(S[Count]);
 WriteFile(Com, TempArray,Length(S),TX_Count,nil)
end;

// или если компонентом пользуешся
type tb = array[1..255] of Char;  //Определяем символьный массив
     pb = ^tb;
procedure Tmf.comReceiveData(Sender: TObject; Buffer: Pointer;
  BufferLength: Word);
var PX : pb;
    i  : integer;
    str: string;
begin
 PX:= buffer; str:='';
 for i:= 1 to BufferLength do
  str:=str+PX^[i];
 packet(str)
end;
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с com-портом larry Visual C++ 6 12.08.2010 16:21
Работа с com портом Валера777 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 05.12.2009 00:06
Работа с COM-портом jovanny Помощь студентам 2 03.05.2009 18:06
Работа с COM портом hoba Общие вопросы Delphi 3 20.11.2008 03:39
работа с COM портом ShAzat Общие вопросы Delphi 8 28.05.2008 20:08