恭喜,你发布的帖子
发布于 2025-08-17 10:42:32
2楼
串口通讯在报文协议、字节协议(9600 8-N-1)之外,还有一底层约定,就是报文之间的静默时钟脉冲数。静默信号的ascii码就是null=00hex,静默间隔既是报文结束标志,也是下一个报文开始的标志,这是为了保证收发双方对通讯数据脉冲理解是同步的。软硬件的多样性,收发双方对静默间隔长短的理解不一定一致。
因此通讯双方软硬件处理静默时钟就有两种可选,一是静默时钟只是同步信号,但不是数据。静默时钟之后的高低电平才记为数据。二是一律根据字节协议记录信号脉冲,后续软件识别处理。
楼主反映的问题极可能就是收发双方在静默间隔的处理出现的偏差。如果接收报文前面的00稳定出现,我的推断就应该成立。处理也简单,直接忽略多余的00。
仅供参考。
请填写推广理由:
分享
只看
楼主