
1 串口通信简介 串口通信是一种常见的串行通信方式,分为UART和USART两种,UART是非同步通信,USART可用于同步通信,在使用UART串口通信过程中需要保持发送端 、接受端的通信波特率一致,否则双方接收的数据就会出现异常。 2 问题说明 程序烧录至开发板后,将开发板UART通过USB-TTL模块连接至PC,串口上位机的通信波特率与程序中设置的串口波特率一致,结果PC串口助手接收到的数据出现了乱码。此时我猜测应该是串口波特率出现了异常,可能是其他外设的时钟配置影响到了串口外设的时钟。 3 解决办法0 }8 |% g# E K# O. ] 于是使用示波器观察UART的TX引脚信号波形,使用cursor测量水平宽度得到一个bit位的时间宽度T,由于串口通信的波特率就是比特率,因此实际串口波特率为1/T,此时将1/T计算的结果配置到串口助手中,通信数据准确无误,没有再出现乱码。如果没有示波器,使用逻辑分析仪捕获串口收发信号波形也是没有问题的 1. .png")2 e! K, y0 f/ }7 N; Y( C- v5 b |