我现在开发一个数传项目。PC和电台用串口连接,电台之间通过空中接口进行数据传输。可以传输文字字符,如“我在发送一个中文字符串”,也可以传输任何一个文件(大小限制在150K左右)。在上层我用delphi开发,使用MSCOMM控件接收和发送命令,只是负责PC和电台之间的串口传输。数据接收很正常,控件的设置为MSComm.Settings := '38400,N,8,2';
MSComm.InputLen := 0; //每次读入整个缓冲区
MSComm.InputMode := comInputModeBinary; //输入方式为字节方式
MSComm.RThreshold := 1;但是发送却有问题,我无法把整个命令一起发送,发送前将命令按照字节分开后再发送才有效,如下所示:
SendBuf[1] := byte(STX); //帧头$03
SendBuf[2] := byte($44);
SendBuf[3] := Byte($66);
SendBuf[4] := byte($00);
SendBuf[5] := byte($07);
SendBuf[6] := Byte(ETX); //桢尾$03
MsComm.Output := sendBuf;
简单的命令也无所谓,可是我还要发送如上的字符串和文件阿,大家可否指点该如何发送字符串等文字信息和文件呢,能否有源代码参考。多谢了!
MSComm.InputLen := 0; //每次读入整个缓冲区
MSComm.InputMode := comInputModeBinary; //输入方式为字节方式
MSComm.RThreshold := 1;但是发送却有问题,我无法把整个命令一起发送,发送前将命令按照字节分开后再发送才有效,如下所示:
SendBuf[1] := byte(STX); //帧头$03
SendBuf[2] := byte($44);
SendBuf[3] := Byte($66);
SendBuf[4] := byte($00);
SendBuf[5] := byte($07);
SendBuf[6] := Byte(ETX); //桢尾$03
MsComm.Output := sendBuf;
简单的命令也无所谓,可是我还要发送如上的字符串和文件阿,大家可否指点该如何发送字符串等文字信息和文件呢,能否有源代码参考。多谢了!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货