OpenEdv-开源电子网

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

波特率为115200时,第一个字节错误,波特率为9600时,正常

[复制链接]

3

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2015-2-2
在线时间
0 小时
发表于 2015-3-17 21:08:28 | 显示全部楼层 |阅读模式
5金钱
波特率为115200时,第一个字节错误,波特率为9600时,正常,请问这是为什么?
注:代码中的波特率跟串口助手中的波特率设置的是一样的。
波特率115200时


波特率为9600时

USART-115200.rar

4.37 MB, 下载次数: 440

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

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-3-17 22:43:11 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

22

主题

2251

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4480
金钱
4480
注册时间
2013-4-22
在线时间
337 小时
发表于 2015-3-18 09:21:55 | 显示全部楼层
115200时分频不准
回复

使用道具 举报

12

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
232
金钱
232
注册时间
2014-8-6
在线时间
8 小时
发表于 2015-3-18 14:32:57 | 显示全部楼层
是不是U转串硬件速度跟不上,波特率降一下试试,比如57600
回复

使用道具 举报

2

主题

17

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2015-3-18
在线时间
1 小时
发表于 2015-3-19 10:33:31 | 显示全部楼层
我也猜是分频不准的问题,建议把发送端的停止为设置为2bit看看能否解决。
做一只高尚的猿,一只纯粹的猿,一只有益于世界的猿!
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2015-2-2
在线时间
0 小时
 楼主| 发表于 2015-3-19 10:44:01 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
我用您的代码(实验4 串口实验)测试一下,也出现了同样的问题。
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2015-2-2
在线时间
0 小时
 楼主| 发表于 2015-3-19 10:47:31 | 显示全部楼层
回复【4楼】jnfxt95:
---------------------------------
波特率设置为57600是正常的;波特率设置为115200,192000,256000这3个波特率都不正常,现象和1152000的现象一样。
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2015-2-2
在线时间
0 小时
 楼主| 发表于 2015-3-19 10:49:32 | 显示全部楼层
回复【5楼】vinge:
---------------------------------
停止为设为2bit或者1.5bit,波特率设为115200,问题依然存在。
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2015-2-2
在线时间
0 小时
 楼主| 发表于 2015-3-19 10:56:28 | 显示全部楼层
转载:
关于LPC2378串口高波特率通信解决方案
http://blog.csdn.net/yfz000/article/details/8516621
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-3-19 23:03:28 | 显示全部楼层
回复【6楼】CPeasantWallE:
---------------------------------
直接在我们开发板测试的?
战舰板?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

12

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
232
金钱
232
注册时间
2014-8-6
在线时间
8 小时
发表于 2015-3-20 13:46:58 | 显示全部楼层
回复【7楼】CPeasantWallE:
---------------------------------
之前我用U转串线做实验时,也出现过这个问题。当时波特率最高57600,再高就乱码了。
回复

使用道具 举报

1

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
67
金钱
67
注册时间
2015-2-15
在线时间
10 小时
发表于 2019-5-13 22:26:17 | 显示全部楼层
问题解决了吗?遇到同样的问题,应该是硬件的问题,不知道出在哪里,波特率9600正常,115200时好时坏,然后就断开了,同一批五块板子,有一块115200运行正常,其他都是一样的现象,现在考虑,一:处理器批次有问题,bug?二:硬件设计有问题,但是为什么有一块是正常的?
有遇到相同问题的欢迎回答一下。
回复

使用道具 举报

3

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
106
金钱
106
注册时间
2018-7-9
在线时间
19 小时
发表于 2019-5-14 09:45:09 | 显示全部楼层
CPeasantWallE 发表于 2015-3-19 10:47
回复【4楼】jnfxt95:
---------------------------------
波特率设置为57600是正常的;波特率设置为115200 ...

9600以下正常,115200以上有问题,说明波特率可能设置的高了,cpu处理不过来,所以应该是你串口设置的时钟太低,调高时钟就行。
回复

使用道具 举报

3

主题

1907

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4106
金钱
4106
注册时间
2018-8-14
在线时间
696 小时
发表于 2019-5-14 17:49:38 | 显示全部楼层
根据你的扫述, 应该是IO配置的位置放错地方了, 把它放在USART配置及使能之之后吧
如果段配置IO为AF, 而USART还没配置, 这时间IO就会有很短的一段时间为0, 用9600没问题, 是因为这脉冲时间短到不足以触发接收, 但115200, 就相对短的脉冲也足以触发, 这个脉冲就好比你先接收了一个bit, 所以第一个数据会错
回复

使用道具 举报

0

主题

79

帖子

0

精华

高级会员

Rank: 4

积分
727
金钱
727
注册时间
2016-5-27
在线时间
91 小时
发表于 2019-5-14 22:32:47 | 显示全部楼层
什么都不是,换个串口助手试试,这个波特率高时,有时会出问题,我原来也遇到过。顺便把你的使用环境说下。
回复

使用道具 举报

0

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
190
金钱
190
注册时间
2019-5-8
在线时间
16 小时
发表于 2019-5-16 18:15:08 | 显示全部楼层
学习来了,感谢分享。
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-19 16:29

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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