刚开始用 UART1_ITConfig(UART1_IT_RXNE, ENABLE) 开启接收中断,调试发现死机,分析发现参数不允许
改用 UART1_ITConfig(UART1_IT_RXNE_OR, ENABLE) 后正常。
在参数宏定义发现如下:
#define IS_UART1_CONFIG_IT_OK(Interrupt) \
(((Interrupt) == UART1_IT_PE) || \
((Interrupt) == UART1_IT_TXE) || \
((Interrupt) == UART1_IT_TC) || \
((Interrupt) == UART1_IT_RXNE) || \ //注意这行之前没有,自行加上
((Interrupt) == UART1_IT_RXNE_OR ) || \
((Interrupt) == UART1_IT_IDLE) || \
((Interrupt) == UART1_IT_LBDF))
难道官方不推荐单独使用UART1_IT_RXNE作为接收中断还是遗漏? |