Delphi CnPack CnRs232 以16进制 串口发送消息 WriteCommData
使用Delphi组件CnPack里面的CnRs232,以十六进制对串口发送消息 WriteCommData
找了好久,尝试了N个方法,不想安装MSComm,SPComm在新版Delphi有点怪怪的,还是用cnRs232
直接上代码:
procedure TForm1.Button1Click(Sender: TObject);
var
DataArray:array of byte;
Wlen:integer;
begin
Setlength(DataArray,8); //如果包是4位的,可以改为 Setlength(DataArray,4);
DataArray[0]:=160; // 16进制字符串 A0
DataArray[1]:=0; // 16进制字符串 00
DataArray[2]:=1; // 16进制字符串01
DataArray[3]:=4; // 16进制字符串11
//如果只有只有4位,下面DataArry的4567就不用了
DataArray[4]:=170; // 16进制字符串 B0
DataArray[5]:=2; // 16进制字符串10
DataArray[6]:=3; // 16进制字符串10
DataArray[7]:=161; // 16进制字符串A1
Wlen:=High(DataArray)+1;
cnRs232.WriteCommData(@DataArray[0], Wlen);
end;