打印
[综合信息]

华大单片机串口BUG

[复制链接]
1388|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
华大单片机串口BUG
波特率较快时,发送使用查询,接收使用中断方式,波特率为115200,会死机,停在Uart_SendData函数,原因为,虽然发送是不开中断,但是接收会进入中断函数,此时刚好发送产生中断标志,一起把发送的中断完成标志清楚了,导致一直处于发送函数条不出来,解决方法如图二,在中断里面不清除发送标志位。


使用特权

评论回复
沙发
狗啃模拟|  楼主 | 2022-1-26 23:42 | 只看该作者

使用特权

评论回复
板凳
martinhu| | 2022-1-27 14:35 | 只看该作者

你这个是很久之前的库了吧,现在还有这样的么????

使用特权

评论回复
地板
wubangmi| | 2022-1-27 16:27 | 只看该作者
楼主说的bug还有一种情况就是本身MCU的UART接收和发送的buf是共用的,你接收数据比发送数据还快的话,也就是在发送的时候接收中断又来了,那么就导致一帧还没发送完成就被接收数据给冲掉了。所以UART发送完成标志位一直不置位。如果是这种情况就是不根据MCU本身的特性来,任性胡为之。

使用特权

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

本版积分规则

55

主题

700

帖子

0

粉丝