Ⅰ、寫在前面
學習本文之前可以查看我前面的文章:
STM32CubeMX使用方法及功能介紹
本文接著上一篇文章結(jié)合基本IO配置實例,講述關(guān)于STM32CubeMX新建工程的過程。最終通過STM32CubeMX工具配置完成一個驅(qū)動IO(點亮LED)的軟件工程,也就是通過STM32CubeMX配置完成之后,打開工程直接下載就能點亮LED的工程。
本文使用Keil(MDK-ARM) V5軟件為編譯環(huán)境,如果你沒有安裝最新版本的軟件,請安裝最新版本的軟件,具體過程可以參考我的一篇文章:
MDK-ARM下載與安裝
關(guān)于本文的更多詳情請往下看。
Ⅱ、STM32CubeMX新建工程描述
在上一篇文章中簡單講述了新建一個工程的步驟,這里結(jié)合實例來講述新建工程的每一個步驟的細節(jié)。
1.打開STM32CubeMX軟件,點擊“新建工程”
2.選擇MCU或選擇(ST官方)開發(fā)板
A.如果是我們網(wǎng)上購買的,或者自己畫的開發(fā)板,點擊“MCU Selector”進入MCU選擇器。選擇器在網(wǎng)頁上常見,根據(jù)自己需求進行選擇(我們以STM32F103E為例)。
1.根據(jù)“系列”選擇;如:F0、F1、F2......F7、L0、L1、L4等;
2.根據(jù)“產(chǎn)品線”選擇;
3.根據(jù)“封裝”選擇;
4.根據(jù)“其他特征”選擇;如:FLASH大小、RAM大小、IO數(shù)量等。
層層篩選下來,最后就可以看到自己想要的芯片型號,雙擊“選中”芯片,如下圖:
B.如果你的開發(fā)板是購買ST官方的開發(fā)板(或評估板),點擊“Board Selector”進入開發(fā)板選擇器。(我們以STM3210E-EVAL為例)。
1.根據(jù)“廠商”選擇;目前只有ST廠商,估計以后會拓展其他廠商;
2.根據(jù)“板子類型”選擇;
3.根據(jù)“芯片系列”選擇;
層層篩選下來,最后就可以看到自己想要的芯片型號,雙擊“選中”芯片,如下圖:
上面兩種選中的方法類似,以及后面的的配置也很類似,我們下面以第一種選中MCU(STM32F103ZE)為例來講述。
3.工程配置
在上一步“選中”芯片之后,就進入了工程配置界面。
A.Project ->Settings彈出設置窗口;
B.在彈出的設置窗口有3個選項:
Project工程設置:這個選項是主要設置的選項,配置信息描述在下面;
Code Generator代碼生成配置:這個選項是關(guān)于代碼生成的配置。如:拷貝HAL庫的配置、生成.c和.h的配置(一般不用修改,默認配置)。
AdvancedSettings高級設置:這個選項在配置芯片(引腳功能)之后才能設置。
C.Project工程設置,這個選項是配置工程重要的一個選項,其中配置的信息也比較重要,且容易理解。
4.Pinout配置
這接下的配置才是與我們最終運行代碼密切相關(guān)的,我們這里以簡單的配置IO(PF11引腳)驅(qū)動LED為例來講述。
A.放大芯片圖標,找到PF11(可以通過Find查找):
B.選中PF11-> 左鍵 -> 彈出列表 -> 選中“GPIO_Output”
C.配置“晶振”引腳(RCC配置)
如果使用“外部晶振”就還需要繼續(xù)配置(我們配置HSE為例),包含三個配置:
HSE外部高速時鐘、LSE外部低速時鐘、MCO時鐘輸出。
5.Clock配置
這里的配置是比較人性化的配置,結(jié)合時鐘樹,一看就明白(也可以根據(jù)參考手冊時鐘樹配置),配置方法一樣。
6.“綜合”配置
由于我們只配置了PF11引腳,其他功能(如DMA、USB等)沒有配置,如果前面配置的有,這里配置的信息就比較多,所以叫“綜合配置”。
點擊GPIO,彈出配置對話框,按步驟依次填寫完信息,點擊“OK”就好了:
7.低功耗配置
一般在學習階段,低功耗配置比較少,在實際項目中配置低功耗需要考慮的東西比較多(包括硬件)。
8.生成代碼
在完成上面所有配置之后,最后的工作就是點擊“生成代碼”按鈕:
如果前面配置的生成軟件工程,就會拷貝HAL庫文件在你的工程:
最后提示打開軟件工程(前提是你已經(jīng)安裝了IDE:MDK-ARM)
9.編譯下載
打開工程,編譯沒有錯誤,沒有警告,下載,程序運行;
至此,整個過程就完成了。如果你的開發(fā)板LED燈引腳(PF11)和上面配置一樣,則下載到開發(fā)板,從新復位則可見LED燈亮(低電平點亮LED)。
STM32CubeMX基本IO配置過程(原始版),提供給大家下載地址(360云盤):
https://yunpan.cn/cMm9rBQZNX3H4 訪問密碼 6735
10.添加代碼
上面的工程是簡單的工程(配置初始化代碼),可以在提示處(如 USER CODE BEGIN)添加自己代碼。
我在“USER CODE BEGIN 0”下添加了一個“測試延時”函數(shù); 在“USER CODE BEGIN WHILE”處添加了一個LED亮滅語句。
添加以上兩處代碼就能實現(xiàn)LED間隔(延時)一段時間亮滅變化。
STM32CubeMX基本IO配置過程(修改版),提供給大家下載地址(360云盤):
https://yunpan.cn/cMmUMDSY8KSgi 訪問密碼 8304
-
引腳
+關(guān)注
關(guān)注
16文章
1181瀏覽量
50274 -
stm32cubemx
+關(guān)注
關(guān)注
5文章
280瀏覽量
14751
發(fā)布評論請先 登錄
相關(guān)推薦
評論