STM32CubeMX新建工程+基本IO配置過程


Ⅰ、寫在前面

學習本文之前可以查看我前面的文章:

STM32CubeMX介紹、下載與安裝

 

STM32CubeMX使用方法及功能介紹

 

本文接着上一篇文章結合基本IO配置實例,講述關於STM32CubeMX新建工程的過程。最終通過STM32CubeMX工具配置完成一個驅動IO(點亮LED)的軟件工程,也就是通過STM32CubeMX配置完成之后,打開工程直接下載就能點亮LED的工程。

 

本文使用Keil(MDK-ARM) V5軟件為編譯環境,如果你沒有安裝最新版本的軟件,請安裝最新版本的軟件,具體過程可以參考我的一篇文章:

MDK-ARM下載與安裝

 

關於本文的更多詳情請往下看。

 

Ⅱ、STM32CubeMX新建工程描述

在上一篇文章中簡單講述了新建一個工程的步驟,這里結合實例來講述新建工程的每一個步驟的細節。

 

1.打開STM32CubeMX軟件,點擊“新建工程”

 

2.選擇MCU 選擇(ST官方)開發板

A.如果是我們網上購買的,或者自己畫的開發板,點擊“MCU Selector”進入MCU選擇器。選擇器在網頁上常見,根據自己需求進行選擇(我們以STM32F103E為例)。

1.根據“系列”選擇;如:F0、F1、F2......F7、L0、L1、L4等;

2.根據“產品線”選擇;

3.根據“封裝”選擇;

4.根據“其他特征”選擇;如:FLASH大小、RAM大小、IO數量等。

層層篩選下來,最后就可以看到自己想要的芯片型號,雙擊“選中”芯片,如下圖:

 

B.如果你的開發板是購買ST官方的開發板(或評估板),點擊“Board Selector”進入開發板選擇器。(我們以STM3210E-EVAL為例)。

1.根據“廠商”選擇;目前只有ST廠商,估計以后會拓展其他廠商;

2.根據“板子類型”選擇;

3.根據“芯片系列”選擇;

層層篩選下來,最后就可以看到自己想要的芯片型號,雙擊“選中”芯片,如下圖:

 

上面兩種選中的方法類似,以及后面的的配置也很類似,我們下面以第一種選中MCUSTM32F103ZE)為例來講述。

 

3.工程配置

在上一步“選中”芯片之后,就進入了芯片工程配置界面。

 

A.Project -> Settings彈出設置窗口;

 

B.在彈出的設置窗口有3個選項:

Project工程設置:這個選項是主要設置的選項,配置信息描述在下面;

Code Generator代碼生成配置:這個選項是關於代碼生成的配置。如:拷貝HAL庫的配置、生成.c和.h的配置(一般不用修改,默認配置)。

Advanced Settings高級設置:這個選項在配置芯片(引腳功能)之后才能設置。

 

C.Project工程設置,這個選項是配置工程重要的一個選項,其中配置的信息也比較重要,且容易理解。

 

4.Pinout配置

這接下的配置才是與我們最終運行代碼密切相關的,我們這里以簡單的配置IO(PF11引腳)驅動LED為例來講述。

A.放大芯片圖標,找到PF11(可以通過Find查找):

 

B.選中PF11 -> 左鍵 -> 彈出列表 -> 選中“GPIO_Output”

 

C.配置“晶振”引腳(RCC配置)

如果使用“外部晶振”就還需要繼續配置(我們配置HSE為例),包含三個配置:

HSE外部高速時鍾、LSE外部低速時鍾、MCO時鍾輸出。

 

5.Clock配置

這里的配置是比較人性化的配置,結合時鍾樹,一看就明白(也可以根據參考手冊時鍾樹配置),配置方法一樣。

 

6.“綜合”配置

由於我們只配置了PF11引腳,其他功能(如DMA、USB等)沒有配置,如果前面配置的有,這里配置的信息就比較多,所以叫“綜合配置”。

點擊GPIO,彈出配置對話框,按步驟依次填寫完信息,點擊“OK”就好了:

 

7.低功耗配置

一般在學習階段,低功耗配置比較少,在實際項目中配置低功耗需要考慮的東西比較多(包括硬件)。

 

8.生成代碼

在完成上面所有配置之后,最后的工作就是點擊“生成代碼”按鈕:

 

如果前面配置的生成軟件工程,就會拷貝HAL庫文件在你的工程:

 

最后提示打開軟件工程(前提是你已經安裝了IDE:MDK-ARM)

 

9.編譯下載

打開工程,編譯沒有錯誤,沒有警告,下載,程序運行;

 

至此,整個過程就完成了。如果你的開發板LED燈引腳(PF11)和上面配置一樣,則下載到開發板,從新復位則可見LED燈亮(低電平點亮LED)。

STM32CubeMX基本IO配置過程(原始版),提供給大家下載地址(360雲盤):

https://yunpan.cn/cMm9rBQZNX3H4  訪問密碼 6735

 

10.添加代碼

上面的工程是簡單的工程(配置初始化代碼),可以在提示處(如 USER CODE BEGIN)添加自己代碼。

我在“USER CODE BEGIN 0”下添加了一個“測試延時”函數; 在“USER CODE BEGIN WHILE”處添加了一個LED亮滅語句。

添加以上兩處代碼就能實現LED間隔(延時)一段時間亮滅變化。

STM32CubeMX基本IO配置過程(修改版),提供給大家下載地址(360雲盤):

https://yunpan.cn/cMmUMDSY8KSgi  訪問密碼 8304

 

Ⅲ、說明

以上就是一個“基本IO配置過程”的詳細步驟,后續會定期更新使用STM32CubeMX新建各種外設資源工程的文章,敬請等待。

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

 

Ⅳ、最后

更多精彩文章我將第一時間在微信公眾號里面分享,對本文有什么疑問可微信留言。

本着免費分享的原則,方便大家手機學習知識,定期在微信平台分享技術知識。如果你覺得分享的內容對你有用,又想了解更多相關的文章,請用微信搜索“EmbeddDeveloper” 或者掃描下面二維碼、關注,將有更多精彩內容等着你。


免責聲明!

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



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