STM32F051使用串口中断接收只能接收到第一位数据,后面的7位接收不到

2019-07-14 14:53发布

现在这个程序只能接收到第一位数据
rec_num[]缓存中只有rec_num[0]接收到0XF5,后面的7位接收不到了。
运行平台如下:
STM32F051C8T6    内部8MHz晶振   系统时钟48MHz  通信波特率  57600
最后再说一下问题吧,MCU与串口调试助手对发与接收时,程序没有问题 。MCU与模块发送接收时MCU只能接收第一位数据,后面的7位接收不到,为什么?请大神帮帮忙。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
wq644921241
1楼-- · 2019-07-14 19:28
第一段代码的37行,最好启用USART_IT_RX中断,不要去启用USART_IT_RXNE中断。
第二段代码里没有清除USART_IT_RXNE或USART_IT_RX中断标志的语句。
www030
2楼-- · 2019-07-14 19:37
谢谢楼上朋友,楼主问题如果解决了回复一下哦,如果没有,可以继续追问滴
cnm7
3楼-- · 2019-07-14 19:39
 精彩回答 2  元偷偷看……
陈耿6666
4楼-- · 2019-07-14 22:23
wq644921241 发表于 2018-12-29 10:18
第一段代码的37行,最好启用USART_IT_RX中断,不要去启用USART_IT_RXNE中断。
第二段代码里没有清除USART_IT_RXNE或USART_IT_RX中断标志的语句。

谢谢,问一下,有USART_IT_RX这个参数吗?要怎么设置,第二段有清除的,应该是哪天贴的比较急乱了,你没有看到,现在整理好了
陈耿6666
5楼-- · 2019-07-15 02:03
www030 发表于 2018-12-29 10:30
谢谢楼上朋友,楼主问题如果解决了回复一下哦,如果没有,可以继续追问滴

还没有呢
陈耿6666
6楼-- · 2019-07-15 07:39
cnm7 发表于 2018-12-29 10:41
可能是在中断的地方搞错了位置,或者是参数设置错误

但是我用串口调试助手与MCU互调没有问题,应该不太可能吧

一周热门 更多>