在读取数据时如何识别数据的起始字节和结束字节?
下位机每100MS发送一个数据(速度很快,几乎一直在发),格式如下(十六进制):起始字节 固定为02 结束字节为03 例如;02 36 35 34 33 32 31 c2 c3 b6 03.现在的问题是 我设计的程序如何让它从02 开始读取。03结束? 我的想法是可以从02开始读取,共读取多少字节(数据格式是固定的),但是不知道怎么实现。哪位大大提点提点。或者给个例子。hzxsdingfeng@163.com
收到数据后按string对其进行scan,你如此快显然不是串口,不然我记得串口好像可以指定一个中断,收到特定字符的中断(迷糊记得,不能确定了) 回复 2# 飞雨天 的帖子
你好,我确实是通过串口来通讯,如果显示过快的把。因为我们通讯协议是自己定的。目前是2400. 可以在改低点的。我会用你的方法去试试。谢谢斑竹啊。以后有问题 还要请教你哦 用扫描字符串也行,用匹配模式 也行 都可以,可能前者简洁点 回复 4# zuanshigan 的帖子
好的 谢谢各位大大。还有一个问题就是 如何让串口 VISA read 一直读取数据。我试过放while循环里面,但是好像不行。因为外面已经有一个while循环了。 看看版主这个用了队列,出来的时候有对比起始符
http://www.cpubbs.com/bbs/forum.php?mod=viewthread&tid=63745&fromuid=103783 可以适合你要求 回复 7# 三岁就很帅 的帖子
谢谢你拉。十分感谢
页:
[1]