STM32CubeMx入門教程(1):點亮LED

2023-07-11 15:19:44 來源:嵌入式開發始站

“使用stm32cubeMX 工具進行代碼生成,以LED點燈為例”


(相關資料圖)

01STM32CubeMx的使用條件

1.硬件條件:

(1)野火STM32F103開發板-指南者

(2)原理圖

原理圖可以參考官網,在stm32CubeMx入門教程的使用中會將用到的部分原理圖以圖片的形式貼出。

2.軟件

(1)STM32CubeMX 從STM公司官網下載

(2) STM32CubeF1 這是F1系列的HAL庫,使用cubeMx進行代碼初始化配置和代碼生成就使用的這個庫,可以根據自己的單片機系列選擇下載地址。

(3) MDK 這個軟件大家可以自己下載,如果使用其他的編譯軟件CubeMX 也是支持的。

注意:SetupSTM32CubeMX最新的版本是6.1.0,安裝可簡單,一路next 可以完成,但是這個軟件是使用Java開發,需要使用Java的運行環境。安裝 jre軟件:jre-8u271-windows-x64,我會在百度云提供,大家可以自行下載最新版本。

02STM32CubeMx點亮LED燈

2.1 STM32CubeMx新建項目

菜單 File->New Project

新建項目如出現服務器的軟件更新等,選擇Cancel。

出現芯片選擇界面,根據需求選擇,這里選擇野火指南者的芯片STM32F103VET6,LQFP100,100引腳的芯片,點擊start project。

2.2 初始化代碼

(1)根據原理圖選擇時鐘

在CubeMX中配置選擇時鐘,外部高速時鐘。

(2)時鐘配置

點擊 Clock Configuration,輸入外部8MHz,HCLK 72MHz。

(3)

GPIO 配置,根據LED引腳選擇GPIO

以LED-G

綠燈為例,配置LED引腳PB0,低速,輸出模式,上下拉,LED 為LED-G。

項目配置

(4)項目配置,如圖所示,添加項目名稱,可以選擇項目生成的位置,工具鏈選擇(這里使用MDK),堆棧設置,HAL庫的位置選擇。

(5)Code Generator 的設置

(6)代碼生成

配置到這兒,cubeMX已經完成了時鐘配置,GPIO配置。使用MDK打開項目就可以控制LED了,可以可出cubeMX主要完成代碼初始化配置。

03MDK 項目編寫應用代碼

使用MDK打開工程

對于cubeMX生成的代碼可以從圖中看出,軟件已經幫我們完成了基本的初始化,我們只需要在main.c while(1)主函數中添加我們的應用代碼,不像標準庫一樣手動的添加外設初始化、時鐘初始化的配置代碼。

現在我們需要操作GPIO來控制LED的燈的亮 or滅。GPIO的操作函數有很多,在stm32f1xx_hal_gpio.h 中查找。

我們在main.c 的主函數中while(1)循環中加入控制LED燈的代碼,如下圖所示:

HAL_Delay()是毫秒延遲函數,參數3000是3s。使用HAL_GPIO_WritePin() 寫入RESET 和SET 控制寫1和寫0。

編譯程序

編譯程序沒有出錯,配置編譯器進行程序下載。下載器的選擇配置如下圖所示。

04看效果如何

可以看出LED-綠色的燈美三秒閃爍一下。

標簽:

上一篇:STM32CubeMx入門教程(2):USART的使用
下一篇:最后一頁