公司购回一模块,该模块采用标准RS232串口,协议是:4或6字节包(每字节8位),每20msec发送一次,前4字节(0-255)为波形信号,后2个字节偶尔发送,为参数值,波特率:9600,无效验位,数据位8,1个停止位,我用MSCOMM控件初始化串口,添加了串口消息处理函数OnCommMscomm(),但不知道怎么接收这种不固定长的字节包,请各位多帮忙,我是第一次编串口处理程序,在网上搜也没收到,有的说用sleep()延时;有的说设置RThreshold属性值为4,在OnComm事件中首先预读4字节,然后判断这4字节是不是完整的数据帧,若不是则设置InputLen为2,然后使用GetInput()读取缓冲区,该数据与前4个字节数据合为一帧,但我不知道怎么判断是否为一帧,谢谢各位,最好能给出接收该协议的代码,谢谢!!!!!!!
2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 802F 55 3C 80 2F 55 3C 80 2F 55 3C 80 30 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 2F 55 3C 80 30 55 3C 80
2F 55 3C 80 30 55 3C 80 2F 55 3C 80 2F 55 3C 80 30 55 3C 80 2F 55 3C 80 30 55 3C 80 2F 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 2F 55 3C 80 30 55 3C 80 2F 55 3C 80 30 55 3C 80
30 55 3C 80 2F 55 3C 80 30 55 3C 80 2F 55 3C 80 2F 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
2F 55 3C 80 2F 55 3C 80 30 55 3C 80 2F 55 3C 80 2F 55 3C 80 30 55 3C 80 2F 55 3C 80 30 55 3C 80 2F 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 2F 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80
30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 30 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80
31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 32 55 3C 80 31 55 3C 80 31 55 3C 80 31 55 3C 80 32 55 3C 80
32 55 3C 80 32 55 3C 80 31 55 3C 80 32 55 3C 80 32 55 3C 80 31 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80
32 55 3C 80 31 55 3C 80 32 55 3C 80 32 55 3C 80 31 55 3C 80 32 55 3C 80 32 55 3C 80 31 55 3C 80 32 55 3C 80 32 55 3C 80
31 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80
32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80
32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80
32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80
32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80
32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80
32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80 32 55 3C 80
short?
int?
88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 A0 00 88 55 3C 80 00 44 88 55 3C 80 11 68 88 55 3C 80 20 00 88 55 3C 80 30 14
88 55 3C 80 40 00 88 55 3C 80 50 00 88 55 3C 80 60 2A 88 55 3C 80 70 00 88 55 3C 80 80 00 88 4B 3C 80 90 00 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80
88 55 3C 80 A0 00 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 4B 3C 80
88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 88 55 3C 80 A0 00 88 55 3C 80 00 5D 88 55 3C 80 11 36 88 55 3C 80 20 00 88 55 3C 80 30 14
第一行我这样看起来(88 55 3C 80) (88 55 3C 80) (88 55 3C 80) (88 55 3C 80) (88 55 3C 80) (88 55 3C 80 A0 00) (88 55 3C 80 00 44) (88 55 3C 80 11 68) (88 55 3C 80 20 00) (88 55 3C 80 30 14),再往下看有时间是四字节有时是六字节
一般情况下都会有帧尾,别人的模块你没法改只能这样了