STM32——FlagStatus与ITStatus
2020-08-31 来源:eefocus
FlagStatus与ITStatus
eg:
FlagStatus USART_GetFlagStatus(); //获取状态标志位
void USART_ClearFlag(); //清除状态标志位
ITStatus USART_GetITStatus(); //获取中断状态标志位
void USART_ClearITPendingBit(); //清除中断状态标志位
FlagStatus 返回值是中断标志位状态(读SR寄存器)
该函数用于检测串口中断标志位的状态。
在没有使能相应的中断函数时,通常使用该函数来判断标志位是否置位。
ITStatus 返回值是中断发生与否的判断(读CR寄存器)
读取串口控制寄存器CR1,CR2,CR3的状态,获取中断发生的动作,返回SET或RESET。
除了可以判断中断标志位外,还能判断是否发生了中断。
Clear
void USART_ClearFlag();
该函数用于软件清除标志位。可以用在中断处理函数中对标志位进行清除操作。
void USART_ClearITPendingBit();
该函数与USART_ClearFlag(…,…);功能相同,都是对SR寄存器某位进行清除操作,只是概念不一样。
相关文章