USART_GetITStatus()和USART_GetFlagStatus()的区别

USART_GetITStatus()和USART_GetFlagStatus()的区别

 

  都是访问串口的SR状态寄存器,唯一不同是,USART_GetITStatus()会判断中断是否开启,如果没开启,也会返回false。

 

    ITStatus USART_GetITStatus(USART_TypeDef* USARTx, uint32_t USART_IT)

    该函数不仅会判断标志位是否置1,同时还会判断是否使能了相应的中断。所以在串口中断函数中,如果要获取中断标志位,通常使用该函数。------串口中断函数中使用。

  

  FlagStatus USART_GetFlagStatus(USART_TypeDef* USARTx, uint32_t USART_FLAG)

  该函数只判断标志位。在没有使能相应的中断时,通常使用该函数来判断标志位是否置1。------做串口轮询时使用。

posted @ 2020-04-15 23:21  北极星!  阅读(1452)  评论(0编辑  收藏  举报