OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 31|回复: 3

STM32F407串口通信异常,数据有时正常,有时错误。

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2025-10-10
在线时间
3 小时
发表于 前天 10:23 | 显示全部楼层 |阅读模式
1金钱
我在进行使用单片机串口给电脑发送数据时,出现了一些问题,找了一天了,还是无法解决,真是拼尽全力仍旧无法战胜。

实在没办法了,想找各位单片机大佬求助!

我通过单片机串口给电脑发送数据时,打印出来的信息有时候是正确的,有时候是错误的。附图1
屏幕截图 2025-10-10 232258.png
这里打印出来的0x61是ASCII码的a,而0xE1则是错误数据,我在这里将两者的二进制数列出来0x61 = 0x0110 0001,0xE1 = 0x1110 0001,不知道为什么我的数据最高位被置1了。我写0x81时,也会有错误,错误数据为0x01。
代码如下、
屏幕截图 2025-10-10 233038.png
屏幕截图 2025-10-10 233058.png
屏幕截图 2025-10-10 233105.png




正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

80

帖子

0

精华

高级会员

Rank: 4

积分
600
金钱
600
注册时间
2020-5-26
在线时间
156 小时
发表于 4 小时前 | 显示全部楼层
发送函数里,先判断发送寄存器为空,再发送,是不是更合理一些?
回复

使用道具 举报

9

主题

797

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2042
金钱
2042
注册时间
2017-8-2
在线时间
522 小时
发表于 3 小时前 | 显示全部楼层
发送函数里把while先换成delay200毫秒试试?感觉是还没发完就被打断了
猪猪熊呢?
回复

使用道具 举报

11

主题

2175

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5147
金钱
5147
注册时间
2015-1-10
在线时间
645 小时
发表于 2 小时前 | 显示全部楼层
115200的波特率,发送一个字节才不到0.01ms,除非是在主循环里面一直发,一般不会出现上个字节没发完就被覆盖
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-10-13 14:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表