STM32F0xx_USART收發配置詳細過程


前言

串口對於處理器來說算是一種標配,也是在軟件開發中必不可少的,那就是使用串口來調試信息(打印出相應的信息)。STM32F0系列的芯片,串口根據型號不同,數量也不同,從1個到8個不等。

今天主要總結串口簡單且常用的功能,發送字符中斷接收字符。今天提供的串口發送功能將在后面的各個模塊總結中都需要使用到,主要用於驗證和測試各項功能的正確性。

 

本着免費分享的原則,如果你覺得分享內容對你有用,請關注微信公眾號“EmbeddDeveloper”還有更多精彩內容等着你。

 

下載

ST標准外設庫和參考手冊、數據手冊等都可以在ST官網下載,你也可以到我的360雲盤下載。關於F0系列芯片的參考手冊有多個版本(針對F0不同芯片),但有一個通用版本,就是“STM32F0x128參考手冊V8(英文)2015-07”建議參考該手冊,以后如果你換用一種型號芯片也方便了解。

 

今天的軟件工程下載地址(360雲盤):

https://yunpan.cn/cS5TeTVUWdc7V  訪問密碼 9b8c

 

STM32F0xx的資料可以在我360雲盤下載:

https://yunpan.cn/cS2PVuHn6X2Bj  訪問密碼 8c37

 

准備工作

①新建源程序文件

一個工程項目在增加模塊功能的時候,一般都需要新增加模塊源程序的文件。今天提供的工程由於增加USART模塊,因此針對昨天(上一篇文章)的軟件工程需要增加模塊USART的文件(usart.c 和 usart.h)。

新建了源程序文件,還要添加到工程中進行編譯才行。還有需要添加我們使用到的標准外設庫文件到工程,我已經將文件新建,並添加到軟件工程中,如下圖:

注意:

文件所在位置最好對應目錄,方便管理。比如:usart.c放在bsp文件下,添加在工程中Bsp組下面。

 

源代碼詳情

①RCC時鍾

該函數位於bsp.c文件下面;

我個人習慣第一步配置時鍾,ST官方提供的例程也是把配置時鍾放在前面。關於RCC時鍾的配置比較重要,有好幾次我就是由於沒有配置相應RCC時鍾,讓我找了很久的問題。

 

②USART引腳配置

該函數位於usart.c文件下面;

這里的配置就是對串口收發引腳進行配置(具體參數說明請看上一篇文章)。

注意:

上面紅色框里面的配置是重點,必須對應配置才行。這里第三個參數“GPIO_AF_1”需要和你使用的外設對應。

 

③USART配置

該函數位於usart.c文件下面;

這里是串口相關參數進行配置,詳情請看中文注釋。具體每一個參數的意思,可以參看昨天方式,go to definition...

注意:

上面紅色框處,如果要使用中斷(我們工程是接收),必須對應配置才行。

 

④NVIC配置

該函數位於bsp.c文件下面;

要使用中斷,必須配置NVIC,這點也不能忘記。

 

⑤串口中斷接收函數

該函數位於stm32f0xx_it.c文件下面;

中斷接收到一個字符,就發送出去(可以通過電腦串口發送字符,STM32F0接收到該字符又發送給電腦)。

 

說明

STM32F0的芯片軟件兼容性很好,可以適用於F0其他很多型號的芯片(具體請看手冊、或者親自測試)。

以上實例總結僅供參考,若有不對之處,敬請諒解。

 

 

最后

如果你喜歡我分享的內容,你又想了解更多相關內容,請關注文章開頭的微信公眾號,新內容持續更新中,后期將會有更多精彩內容出現。

 

閱讀原文


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM