一、簡介
STM32CubeMX是一個配置STM32代碼的工具,它把很多東西封裝的比較好,硬件抽象層、中間層、示例代碼等。現在ST公司升級和維護的庫主要就是STM32CubeMX的HAL庫和標准外設庫,使用這兩種庫開發STM32各有各的好處,下面簡單描述一下。
如果你是一名剛學STM32的初學者,想要把硬件底層相關的東西搞明白,不建議使用STM32CubeMX這個工具,建議使用之前經典的標准外設庫來開發(先學習標准外設庫,但有必要抽時間了解STM32CubeMX)。標准外設庫可以很簡單直接跟蹤到底層寄存器,而HAL庫里面的代碼想要跟蹤並理解底層很難。
如果你是一名熟練使用標准外設庫的人,有必要學習並使用STM32CubeMX來開發程序。
STM32CubeMX是一個圖形化的工具,也是配置和初始化C代碼生成器(STM32 configuration and initialization C code generation),也就是自動生成開發初期關於芯片相關的一些初始化代碼。它包含了STM32所有系列的芯片,包含示例和樣本(Examples and demos)、中間組件(Middleware Components)、硬件抽象層(Hardwaree abstraction layer)。
STM32CubeMX的特性如下:
1.直觀的選擇 STM32 微控制器。
2.微控制器圖形化配置:
l 自動處理引腳沖突
l 動態設置確定的時鍾樹
l 可以動態確定參數設置的外圍和中間件模式和初始化
l 功耗預測
3.C代碼工程生成器覆蓋了STM32 微控制器初始化編譯軟件,如IAR、KEIL、GCC。
4.可獨立使用或作為 Eclipse 插件使用。
STM32CubeMX是ST意法半導體的主動原創工具,它可以減輕開發的時間和費用。STM32CubeMX集成了一個全面的軟件平台,支持STM32每一個系列的MCU開發。這個平台包括 STM32Cube HAL(一個 STM32 的抽象層集成軟件,確保STM32 系列最大的移植性)。再加上兼容的一套中間件(RTOS、USB、TCP/IP 和圖形),所有內嵌軟件組件附帶了全套例程。
二、下載
1、oracle官方下載jre
由於STM32CubeMX軟件是基於Java環境運行的,所以需要安裝JRE才能使用,目前JRE最新版本是jre1.8.0_131。STM32CubeMX要求JRE最低版本是1.7.0_45,如果你電腦已安裝JRE版本大於1.7.0_45,則可以不用再下載安裝。
http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
接受許可,根據自己電腦系統選擇下載(我們以Windows版本為例),如下圖:

2、ST官方下載STM32CubeMX工具、庫
STM32CubeMX工具、庫都在同一個網址下:
三、安裝
1、先安裝jre1.8.0_131(雙擊“jre-8u131-windows-i586.exe”(有管理員限制時:右鍵 -> 以管理員身份運行),點擊“安裝”)
2、再安裝STM32CubeMX工具(雙擊“SetupSTM32CubeMX-4.20.0.exe”(有管理員限制時:右鍵 -> 以管理員身份運行))
3、最后STM32CubeMX庫(固件支持包)的安裝方式有三種:通過STM32CubeMX軟件在線安裝、導入離線包、解壓離線包。
在線安裝:打開安裝好的STM32CubeMX軟件,進入庫管理界面(Help -> Install New Libraries),會有一個列表,勾選上你要安裝的固件庫,點擊“Install Now”直到安裝成功。
導入離線包:下載好需要安裝的離線包(也就是在官網下載的庫),在庫管理界面(Help -> Install New Libraries),點擊左下角的“From Local” -> 彈出文件選擇框(選擇下載的離線包文件),點擊“Open”,進入解壓安裝過程,直到安裝完成。
解壓離線包:解壓離線包(庫)是最方便的安裝方式,這里重要的一點就是需要知道前面安裝STM32CubeMX工具指定庫的路徑。
查看庫安裝路徑的方法:
Help -> Updater Settings可以看到庫指定路徑。
默認路徑是 C:/Users/Administrator/STM32Cube/Repository(注意:Administrator中一開始是沒有STM32Cube的,只有安裝一個庫之后才會自動生成)
解壓源文件過程就不說了,注意文件名需要匹配才行(打開壓縮文件里面的名稱),如下圖:


