[技术问答] 小华HC32F4A0的串口中断接受第一次后,不会再次进入中断!!

[复制链接]
 楼主| 小安博 发表于 2024-1-13 16:32 | 显示全部楼层 |阅读模式
我使用串口USART1、2、3. 其中1、2串口中断能正常运行。 但是USART3的中断接受第一次后,不会再次进入; 三个串口的配置是相同的,这是什么原因??
 楼主| 小安博 发表于 2024-1-15 09:43 | 显示全部楼层
问题已解决;
串口收发一定要进行标志位的判断和清除!!
我在EI中断中加入下面代码。分别清除了 奇偶校验错误标志 、帧错误标志、溢出错误标志 ;
  1. (void)USART_ReadData(CM_USART3);
  2.     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 | 显示全部楼层
中断未清除
jcky001 发表于 2024-1-31 10:07 | 显示全部楼层
中断未清除
两只袜子 发表于 2024-1-31 10:07 | 显示全部楼层
检查USART3的中断优先级是否与其他串口的中断优先级相同。
elephant00 发表于 2024-1-31 10:08 | 显示全部楼层
USART3的硬件连接有没有问题,包括引脚配置、电平配置等。此外,检查其他硬件相关的问题,如电源、地线等。
 楼主| 小安博 发表于 2024-2-21 17:05 | 显示全部楼层
多谢大家的解答; 是因为中断未清除标志位导致的,问题已经解决了!!
小华单片机代理 发表于 2024-2-21 17:18 | 显示全部楼层
小华代理,有FAE,13538292986
无法去污粉 发表于 2024-2-24 15:44 | 显示全部楼层
中断标志位清除:

确保在串口接收中断服务程序的开头,你清除了中断标志位。有时候,中断标志位没有及时清除会导致中断服务程序不再触发。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

22

帖子

0

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