开始用示波器查看USART串口波形(直接测量IO口),不容易搞清楚其意义,反复研究,了解一二,总结如下:

由上图看出,无信号是高电平,发送三个字节,0x09 0x02 0x00,每个字节1帧,每帧由三部份组成:
1、一个低电平起始位,不能设置,一定有。
2、八位数据,也可以设成七位,高电平是1,低电平是0,二进制数据流是反的,最左边是低位
3、停止位,0.5-2位,高电平,软件设置,一般设成1位,这里设置2位,波形好理解一些。FreeModBus代码是一个字节一个字节传送,因为速度的问题,停止位会多一些,波特率越高,停止位越多。用DMA传送时就是设置数。
本文深入解析USART串口通信的细节,通过示波器观察波形,揭示无信号高电平状态,发送数据帧结构,包括起始位、数据位及停止位的作用。特别关注FreeModBus代码实现中停止位的设定及其对通信速率的影响。

701

被折叠的 条评论
为什么被折叠?



