你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

串口通信波特率异常的解决办法

[复制链接]
AndyQ 发布时间:2024-12-5 20:30
1 串口通信简介
7 C/ U3 a' e$ p- p- t3 C! E4 |- k      串口通信是一种常见的串行通信方式,分为UART和USART两种,UART是非同步通信,USART可用于同步通信,在使用UART串口通信过程中需要保持发送端 、接受端的通信波特率一致,否则双方接收的数据就会出现异常。
6 g/ [1 O- Z. X/ w; Q! ?2 问题说明
  X4 J6 g1 O& s: @$ _6 X4 \3 d) G      程序烧录至开发板后,将开发板UART通过USB-TTL模块连接至PC,串口上位机的通信波特率与程序中设置的串口波特率一致,结果PC串口助手接收到的数据出现了乱码。此时我猜测应该是串口波特率出现了异常,可能是其他外设的时钟配置影响到了串口外设的时钟。
& m$ J: l" _6 m3 解决办法0 }8 |% g# E  K# O. ]
      于是使用示波器观察UART的TX引脚信号波形,使用cursor测量水平宽度得到一个bit位的时间宽度T,由于串口通信的波特率就是比特率,因此实际串口波特率为1/T,此时将1/T计算的结果配置到串口助手中,通信数据准确无误,没有再出现乱码。如果没有示波器,使用逻辑分析仪捕获串口收发信号波形也是没有问题的
' Q& X* t/ ?% O8 |! L; Q8 M' P
/ j: L" `0 f* v# R1. ![aaa2.png](data/attachment/forum/202412/05/203025jbuhqv0i10r990ux.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/300 "aaa (2).png")2 e! K, y0 f/ }7 N; Y( C- v5 b
A)[BY[[M__(~0KPU{$FO(3P.png
aaa (2).png
收藏 评论0 发布时间:2024-12-5 20:30

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版