标题: 单片机串口通信程序如何处理同时发送两条或者三条指令过来可以是实现只能接收到后... [打印本页]

作者: whwteng    时间: 2020-8-10 11:51
标题: 单片机串口通信程序如何处理同时发送两条或者三条指令过来可以是实现只能接收到后...
如何处理同时发送两条或者三条指令过来可以是实现只能接收到后面一条指令而覆盖或者没接受到第一条

作者: man1234567    时间: 2020-8-10 23:06
指令是一条接一条没有并行所以貌似没可能同时接收但可以排队。
作者: whwteng    时间: 2020-8-11 17:21
是我描述错了,就是两条之间间隔的时间比较短发送过来,差不多十几微秒左右,
像80 03 05 00 8F 80 05 00 00 8F这样两条指令过来接收处理只会处理到80 05 00 00 8F
作者: wulin    时间: 2020-8-11 21:05
whwteng 发表于 2020-8-11 17:21
是我描述错了,就是两条之间间隔的时间比较短发送过来,差不多十几微秒左右,
像80 03 05 00 8F 80 05 00  ...

串口每次只能收发一个字节数据,通常实际使用的通讯协议是由若干字节组成一帧数据(数据串)。其中每个字节代表不同含义。接收端收齐一帧完整数据后按通讯协议对其进行解析,获取有效信息。楼主列举的可能是《80 03 05 00 8F》《80 05 00 00 8F》两帧数据。只要判断两者的不同点是很容易判断取舍。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1