51单片机串口接收不定长数据

2020-01-13 18:37发布

请教大神,单片机串口如何接收不定长数据啊 ,比如 0x01+0x03+len+data0....datan CRC_H  CRC_L 写了一下午没啥成果
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
32条回答
talkingbeast
2020-01-15 15:59
vjcmain 发表于 2015-12-15 22:40
超时从缓冲区取数据判断这个怎么理解? 还请指点

  1.接收数据存放在缓冲区中;当接收字节超时发生时,调用数据处理函数;
  2.数据处理:从缓冲区中获取接收到的数据流,判断是否符合modbus协议或者自定义协议格式,然后判断;
这样的架构可以处理多种协议格式,比如没有包头包尾结构的modbus协议;或者有包头包尾的协议;接收数据长度固定和可变都可以处理,通用性很好。

一周热门 更多>