STM32
直播中

王萍

7年用户 1319经验值
私信 关注
[问答]

STM32F051 USART1接收数据乱码的原因?

求助:STM32F051 USART1发送没有中断,接收使能中断,发送数据正常,接收数据乱码,确认进入了接收中断,但数据出现乱码,请问有哪些原因

回帖(2)

安瑞娟

2024-4-16 15:46:53
串口接收分十六进制格式和ASCII格式,既然发送正常,可以改变一下接收格式看看
举报

cherry1989

2024-4-16 16:33:30
导致STM32F051 USART1接收数据乱码的可能原因有以下几点:

1. 波特率不匹配:发送方和接收方的波特率设置不一致,导致数据接收错误。

2. 数据位设置错误:发送方和接收方的数据位设置不一致,导致数据接收错误。

3. 奇偶校验位设置错误:发送方和接收方的奇偶校验位设置不一致,导致数据接收错误。

4. 停止位设置错误:发送方和接收方的停止位设置不一致,导致数据接收错误。

5. 串口接收中断处理函数代码错误:接收中断处理函数没有正确处理接收到的数据,导致数据解析出错。

6. 缓冲区溢出:接收数据的缓冲区长度不够,导致数据溢出,产生乱码。

7. 噪声干扰:在数据传输过程中受到干扰,导致数据接收错误。

以上是可能导致STM32F051 USART1接收数据乱码的几个常见原因,可以逐一排查以解决问题。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分