求购一源代码,关于串口.(100分)

  • 主题发起人 主题发起人 bobodon
  • 开始时间 开始时间
B

bobodon

Unregistered / Unconfirmed
GUEST, unregistred user!
06 60 01 00 06 02 03 04 14 10 37 03 04 14
10 40 02 03 00 03 04 14 10 42 01 00 01 00 00 00 00 00
这是单片机发送到串口的样例数据,要求程序能正确接收并显示
同样的数据.要源代码,哪儿大虾能帮忙?
 
用控件,自己编
 
问题是我现在接收的数据不对,是乱码!
 
哪位能给我一个完整的源代码,我可以再加送100分
 
先看看通讯协议,一般来说,06是数据开始ACK(似乎),
连接方式是怎样的?
 
申明,客户没有通讯协议,上面的数据是我用串口通讯工具接收的.
我希望能接收到同样的数据就OK了.
 
04 40 03 00 04 02 03 04 14 10 37 03 04 14 10 40 01 10 00 03 04 14 (03年4月14日)
10 42 01 00 01 00 00 00 00 00(5个保留)
//////////////
05 50 02 00 05 01 03 04 14 10 37 03 04 14 10 40 02 03 00 03 04 14
10 42 01 00 01 00 00 00 00 00
////////////////
01 10 00 00 01 02 03 04 14 10 37 03 04 14 10 40 02 03 00 03 04 14
10 42 01 00 01 00 00 00 00 00
////////////////////
这是用串口测试程序得到的三组样例数据
 
哪位大虾有意帮我,也可以直接用QQ:37434800联系.
 
怎么没人回答?是嫌分太少吗?还是每人能搞定?不会吧.
 
用 SPCOMM,看看下面的接收代码是不是你要的
procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
Buf: PByteArray;
i: Integer;
Line: String;
begin
Buf:=PByteArray(Buffer);
for i:=1 to BufferLength do
begin
Line:=Line+InttoHex(Buf[i-1],2)+' ';
if (i mod 16=0) and (i<>0) then
begin
Memo1.Lines.Add(Line);
Line:='';
end;
end;
if Line<>'' then
Memo1.Lines.Add(Line);
end;

 
to pihome
大哥,谢谢,可能有用,我先给你加分.
 
接受答案了.
 
后退
顶部