|
①是不是每次接到一個字節的數據后都要清零標志位?答:是的,在STM32單片機的串口通訊中,每當SBUF接收到一個字節數據后,相應的接收標志位會被置1,該位需要軟件清零;如果要想繼續接收數據,必須先將該位軟件清零。
②USART_GetFlagStatus與USART_GetITStatus的區別:IT主要就是與中斷相關的,檢查USART中斷產生與否,當USART發送完成后會有USART_IT_TC中斷,因此可以用來判斷,而USART_GetFlagStatus是USART標志位設置與否,其中就有發送完成標志位USART_Flag_TC所以也可用來判斷。而最終都是操作SR寄存器。另外,USART_GetFlagStatus僅僅是把SR相應的標志位置位,但是USART_GetITStatus還會去操作相應的CR1,CR2,CR3,完了再去進行SR的置位。  |
|