Y
yansh
Unregistered / Unconfirmed
GUEST, unregistred user!
我编写一个串口通讯测试软件,我该怎样将edit的字符串变成byte类型?
代码如下:
控件使用SPcomm
procedure TForm1.sendClick(Sender: TObject);
var
s1,s2,s3,s4:string;
ss:String;
begin
ss:=inttohex(strtoint(edit1.Text),8);
//问题在这里该怎样转换??
//如输入12345678 十六进制码为BC 61 4E
//我需要发送 00 BC 61 4E
s1:=copy(ss,1,2);
s2:=copy(ss,3,2);
s3:=copy(ss,5,2);
s4:=copy(ss,7,2);
//*****************
SendBuffer[0]:=s1;
SendBuffer[1]:=s2;
SendBuffer[2]:=s3;
SendBuffer[3]:=s4;
Comm1.WriteCommData(pchar(sendbuffer)^, 4 );
end;
或者有更好的方法
代码如下:
控件使用SPcomm
procedure TForm1.sendClick(Sender: TObject);
var
s1,s2,s3,s4:string;
ss:String;
begin
ss:=inttohex(strtoint(edit1.Text),8);
//问题在这里该怎样转换??
//如输入12345678 十六进制码为BC 61 4E
//我需要发送 00 BC 61 4E
s1:=copy(ss,1,2);
s2:=copy(ss,3,2);
s3:=copy(ss,5,2);
s4:=copy(ss,7,2);
//*****************
SendBuffer[0]:=s1;
SendBuffer[1]:=s2;
SendBuffer[2]:=s3;
SendBuffer[3]:=s4;
Comm1.WriteCommData(pchar(sendbuffer)^, 4 );
end;
或者有更好的方法