串口总是不能一次把数据读完

2019-07-18 02:25发布

本帖最后由 hejin515 于 2015-11-2 11:06 编辑

一个温度传感器发送的数据格式为:0xaa 0xxx 0xxx 0xxx 0xxx 0xff,比如某次发送的数据是:“AA 01 08 B1 BA FF”,可是我却是分两次或四次收到的,比如:先收到“AA”后收“0108 B1BA FF;或者先收到“AA”后收“0108 B1”然后是“BA”最后才收到“FF”。不知道这是什么原因,是设置问题还是时序之类的问题吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
11条回答
hejin515
2019-07-18 17:26
ShuiMoLise 发表于 2015-10-31 18:52
是不能一次就收到的,所以数据帧才会有帧头帧尾,楼主可以延时一会再读取数据,就能一次结束所有数据了,或者使用移位寄存器收集接收到的数据

先谢谢了。都是不能一次收到的吗??因为我最终的目的不仅仅得到这些数据,读完后面我还要提取其中的数据处理计算出温度,我得不停读取串口数据还要运算显示和存储运算结果。所以想最好能一次读取所有的数据,这样读完我里面可以计算,然后再进行下个循环读取计算。如果要分两次或者四次连接起来,那我读数是四次计算一下,我还没想好整个程序怎么实现。

一周热门 更多>