
1 串口通信简介 串口通信是一种常见的串行通信方式,分为UART和USART两种,UART是非同步通信,USART可用于同步通信,在使用UART串口通信过程中需要保持发送端 、接受端的通信波特率一致,否则双方接收的数据就会出现异常。 2 问题说明 程序烧录至开发板后,将开发板UART通过USB-TTL模块连接至PC,串口上位机的通信波特率与程序中设置的串口波特率一致,结果PC串口助手接收到的数据出现了乱码。此时我猜测应该是串口波特率出现了异常,可能是其他外设的时钟配置影响到了串口外设的时钟。 3 解决办法 于是使用示波器观察UART的TX引脚信号波形,使用cursor测量水平宽度得到一个bit位的时间宽度T,由于串口通信的波特率就是比特率,因此实际串口波特率为1/T,此时将1/T计算的结果配置到串口助手中,通信数据准确无误,没有再出现乱码。如果没有示波器,使用逻辑分析仪捕获串口收发信号波形也是没有问题的 1. .png") |
STM32F407+USART+485+DMA+FIFO+查询
基于STM32L476+64M QSPI接口PSRAM(IPS6404L)开源分享(含源码)
兔哥的L4【001】——32脚的小板
经验分享 | 为何主程序运行不下去?
【经验分享】利用STM32F103单片机输出SPWM波
STM32F429使用TouchGFX制作图形化界面
【MCU实战经验】+STM32F103的uCOSII详细移植
STM32硬件结构学习
STM32中BOOT的作用
STM32如何分配原理图IO