打印
[技术问答]

小华HC32F4A0的串口中断接受第一次后,不会再次进入中断!!

[复制链接]
1337|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
小安博|  楼主 | 2024-1-13 16:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我使用串口USART1、2、3. 其中1、2串口中断能正常运行。 但是USART3的中断接受第一次后,不会再次进入; 三个串口的配置是相同的,这是什么原因??

使用特权

评论回复
来自 2楼
小安博|  楼主 | 2024-1-15 09:43 | 只看该作者
问题已解决;
串口收发一定要进行标志位的判断和清除!!
我在EI中断中加入下面代码。分别清除了 奇偶校验错误标志 、帧错误标志、溢出错误标志 ;
(void)USART_ReadData(CM_USART3);
    USART_ClearStatus(CM_USART3, (USART_FLAG_PARITY_ERR | USART_FLAG_FRAME_ERR | USART_FLAG_OVERRUN));


使用特权

评论回复
板凳
只是个新人-| | 2024-1-14 18:47 | 只看该作者
需要技术支持+   V  13554256038 沟通

使用特权

评论回复
地板
jcky001| | 2024-1-31 10:07 | 只看该作者
中断未清除

使用特权

评论回复
5
jcky001| | 2024-1-31 10:07 | 只看该作者
中断未清除

使用特权

评论回复
6
两只袜子| | 2024-1-31 10:07 | 只看该作者
检查USART3的中断优先级是否与其他串口的中断优先级相同。

使用特权

评论回复
7
elephant00| | 2024-1-31 10:08 | 只看该作者
USART3的硬件连接有没有问题,包括引脚配置、电平配置等。此外,检查其他硬件相关的问题,如电源、地线等。

使用特权

评论回复
8
小安博|  楼主 | 2024-2-21 17:05 | 只看该作者
多谢大家的解答; 是因为中断未清除标志位导致的,问题已经解决了!!

使用特权

评论回复
9
小华单片机代理| | 2024-2-21 17:18 | 只看该作者
小华代理,有FAE,13538292986

使用特权

评论回复
10
无法去污粉| | 2024-2-24 15:44 | 只看该作者
中断标志位清除:

确保在串口接收中断服务程序的开头,你清除了中断标志位。有时候,中断标志位没有及时清除会导致中断服务程序不再触发。

使用特权

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

本版积分规则

8

主题

22

帖子

0

粉丝