電子工程網
標題:
STM32串口通訊的問題
[打印本頁]
作者:
狂風
時間:
2013-7-11 17:21
標題:
STM32串口通訊的問題
stm32的串口通訊一次只能接收一個字節,接收一個字節后出現標志位,那要想繼續接收數據,是不是每次接到一個字節的數據后都要清零標志位?還有:USART_GetFlagStatus與USART_GetITStatus的區別是不是前者是接收到一個字節的標志;后者是串口中斷的標志?后者的中斷是不是所用的數據發送完畢才產生?
作者:
taxuelangzi110
時間:
2013-8-20 00:37
①是不是每次接到一個字節的數據后都要清零標志位?答:是的,在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的置位。
歡迎光臨 電子工程網 (http://www.portaltwn.com/)
Powered by Discuz! X3.4
精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷