[技术问答]

mini58双串口使用时UART1发送正常RX数据容易出现Framing error

[复制链接]
3290|21
手机看帖
扫描二维码
随时随地手机跟帖
借个火|  楼主 | 2017-5-3 10:30 | 显示全部楼层 |阅读模式
请高手指点,现在使用mini58的双串口,uart0工作正常不存在问题,uart1发送正常但是接收容易出现数据移位产生Framing error。uart1的配置为 数据位8bits, 停止位1bit, 无校验位.烦请指点
借个火|  楼主 | 2017-5-3 10:37 | 显示全部楼层
附件串口中断代码
QQ截图20170503103612.png

使用特权

评论回复
借个火|  楼主 | 2017-5-3 11:00 | 显示全部楼层

使用特权

评论回复
a_ziliu| | 2017-5-3 11:17 | 显示全部楼层
代码看起来还好,主要要看串口信号总线上面是否有noise干扰,造成uart封包错误,信号误判。

使用特权

评论回复
借个火|  楼主 | 2017-5-3 14:45 | 显示全部楼层
a_ziliu 发表于 2017-5-3 11:17
代码看起来还好,主要要看串口信号总线上面是否有noise干扰,造成uart封包错误,信号误判。 ...

我现在是用USB转串口助手直接连的开发板。应该没有什么干扰

使用特权

评论回复
mintspring| | 2017-5-3 16:54 | 显示全部楼层
波特率是多少,是不是太快了。

使用特权

评论回复
借个火|  楼主 | 2017-5-5 22:07 | 显示全部楼层
mintspring 发表于 2017-5-3 16:54
波特率是多少,是不是太快了。

9600问题比较明显,115200性能最好

使用特权

评论回复
wahahaheihei| | 2017-5-7 15:25 | 显示全部楼层
一般都是波特率小了好,波特率大了不好,你这个刚好相反,不是很明白怎么个情况。

使用特权

评论回复
wahahaheihei| | 2017-5-7 15:37 | 显示全部楼层
看了一下,两个串口的时钟电路部分是一样的,应该在时钟初始化上不会出错,唯一不同的是串口1为比串口0功能配置更简

使用特权

评论回复
Lbsonggz| | 2017-5-8 09:11 | 显示全部楼层
看看优先级,同时中断只能执行一个,后一个中断可能就存在延迟或丢失现象了

使用特权

评论回复
借个火|  楼主 | 2017-5-17 15:29 | 显示全部楼层
Lbsonggz 发表于 2017-5-8 09:11
看看优先级,同时中断只能执行一个,后一个中断可能就存在延迟或丢失现象了 ...

和优先级没有关系,当我只打开uart1中断时还是会有这种状况

使用特权

评论回复
稳稳の幸福| | 2017-5-17 15:54 | 显示全部楼层
搞定问题i了吗?没有这个开发板啊,不好实验。

使用特权

评论回复
借个火|  楼主 | 2017-5-17 16:32 | 显示全部楼层
找到原因了,UART1的CLK必须要和HCLK保持一致,否者,UART1的接收就会出现移位的现象。但是UART0就不需要,我是不是可以认为这个是IC的bug呢?

使用特权

评论回复
借个火|  楼主 | 2017-5-17 16:34 | 显示全部楼层
稳稳の幸福 发表于 2017-5-17 15:54
搞定问题i了吗?没有这个开发板啊,不好实验。

已经找到原因了,但是有点不理解。

使用特权

评论回复
借个火|  楼主 | 2017-5-17 16:36 | 显示全部楼层
wahahaheihei 发表于 2017-5-7 15:25
一般都是波特率小了好,波特率大了不好,你这个刚好相反,不是很明白怎么个情况。 ...

这个是代吗处理的小问题已解决。

使用特权

评论回复
稳稳の幸福| | 2017-5-17 16:37 | 显示全部楼层
借个火 发表于 2017-5-17 16:36
这个是代吗处理的小问题已解决。

怎么玩的,代码可以共享一下吗,还没有玩过两个串口同时搞的

使用特权

评论回复
借个火|  楼主 | 2017-5-17 16:42 | 显示全部楼层
稳稳の幸福 发表于 2017-5-17 16:37
怎么玩的,代码可以共享一下吗,还没有玩过两个串口同时搞的

两个串口和一个串口没什么区别,问题出在硬件上两个串口有区别,这才导致出现问题。答案上面已贴出来了。

使用特权

评论回复
稳稳の幸福| | 2017-5-17 17:00 | 显示全部楼层
借个火 发表于 2017-5-17 16:42
两个串口和一个串口没什么区别,问题出在硬件上两个串口有区别,这才导致出现问题。答案上面已贴出来了。 ...

噢,这样啊,还以为软件有区别。。多谢分享经验。

使用特权

评论回复
借个火|  楼主 | 2017-6-5 15:11 | 显示全部楼层
本帖正解在这里之前都是扯犊子

Mini58 Series Errata Sheet

Mini58 Series Errata Sheet

使用特权

评论回复
zhuotuzi| | 2017-6-5 15:48 | 显示全部楼层
我去,人家官方都已经发现了这个错误容易引起。。厉害了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

11

帖子

0

粉丝