在學(xué)習(xí) STM32 的時候,你學(xué)的是標(biāo)準(zhǔn)外設(shè)庫還是HAL庫?
過去大家都使用標(biāo)準(zhǔn)外設(shè)庫進(jìn)行開發(fā),因為它是對STM32芯片的完整封裝,包括所有標(biāo)準(zhǔn)器件外設(shè)的器件驅(qū)動器。但隨著STM32的發(fā)展,目前標(biāo)準(zhǔn)外設(shè)庫已停止更新,未來會逐漸被淘汰,由HAL庫取而代之。
HAL是 ST 公司主推的 STM32Cube 生態(tài)系統(tǒng)的器件驅(qū)動庫,STM32Cube 生態(tài)系統(tǒng)是個高效的生產(chǎn)力工具,包含豐富的工具軟件和器件驅(qū)動庫。
目前,HAL 庫已經(jīng)支持STM32 全線產(chǎn)品。
所以,現(xiàn)在學(xué)習(xí) STM32 開發(fā),應(yīng)該學(xué)習(xí)基于STM32Cube 生態(tài)系統(tǒng)的開發(fā)方式。
01
STM32Cube是什么?
在 ST 公司的發(fā)展過程中,STM 系列嵌入式單片機(jī)也得到了飛速發(fā)展,目前 STM32 系列單片機(jī)(MCU)是國內(nèi)市場占有率最高的32位單片機(jī)。從誕生至今,STM32 的開發(fā)方式已經(jīng)發(fā)生了很大的變化。
2014年,ST公司推出了HAL庫和MCU圖形化配置軟件STM32CubeMX;
2019年4月,ST公司正式推出了IDE工具軟件STM32CubeIDE 1.0.0;
2020年2月,ST公司正式推出了STM32CubeMonitor 1.0.0。
至此,一個完整的 STM32Cube 生態(tài)系統(tǒng)誕生了。
▲STM32Cube生態(tài)系統(tǒng)
02
為什么要選擇STM32Cube?
STM32Cube 生態(tài)系統(tǒng)包括嵌入式軟件和軟件工具兩大部分。
嵌入式軟件
包括各個 STM32 系列 MCU 的固件庫和一些擴(kuò)展庫,固件庫包含 STM32 MCU 的 HAL 驅(qū)動庫和移植好的各種中間件,例如嵌入式操作系統(tǒng) FreeRTOS、文件系統(tǒng)FatFS等。
▲STM32Cube生態(tài)系統(tǒng)的工具軟件及其作用
軟件工具
STM32Cube 生態(tài)系統(tǒng)的軟件工具支持配置、開發(fā)、燒錄和監(jiān)測的整個流程。其中,STM32CubeMX和STM32CubeIDE是STM32Cube 生態(tài)系統(tǒng)的兩個核心軟件。
·STM32CubeMX用于MCU片上資源和外設(shè)的圖形化配置,可以生成多種IDE軟件的項目框架和外設(shè)初始化C語言代碼,可大大提高開發(fā)效率。
·STM32CubeIDE是一個STM32編程IDE軟件,使用STM32CubeIDE可以編程、編譯、下載和調(diào)試。STM32CubeIDE完全可以替代Keil或IAR的商業(yè)軟件的功能。
03
STM32Cube開發(fā)方式有什么優(yōu)勢?
我們稱使用 STM32CubeMX 和 STM32CubeIDE 的開發(fā)方式為 STM32Cube 開發(fā)方式,這種開發(fā)方式有如下的優(yōu)點:
·使用的軟件都是ST公司提供的免費軟件,避免了使用盜版軟件可能出現(xiàn)的風(fēng)險。
·使用STM32CubeMX進(jìn)行MCU可視化配置并生成初始化代碼可大大提高工作效率,并且生成的代碼準(zhǔn)確性高,結(jié)構(gòu)性好,降低了STM32開發(fā)的學(xué)習(xí)難度。
·STM32Cube生態(tài)系統(tǒng)具有豐富的嵌入式軟件庫資源,除了ST官方的MCU固件庫和擴(kuò)展庫,還有很多第三方的中間件和擴(kuò)展庫,可縮短項目開發(fā)時間。
現(xiàn)在,ST公司已經(jīng)淘汰了標(biāo)準(zhǔn)外設(shè)庫,全力推進(jìn) STM32Cube 生態(tài)系統(tǒng)的應(yīng)用。所以,學(xué)習(xí) STM32 開發(fā)應(yīng)該學(xué)習(xí) STM32Cube 開發(fā)方式。
04
如何學(xué)習(xí)STM32Cube開發(fā)?
市面上介紹 STM32 開發(fā)的書比較多,但是很多書是基于標(biāo)準(zhǔn)外設(shè)庫編程的,內(nèi)容早已過時。介紹HAL庫編程的書比較少,有的書在介紹HAL庫編程時還帶有標(biāo)準(zhǔn)庫的印記,并沒有完全發(fā)揮STM32CubeMX的作用,且這些介紹HAL庫編程的書都采用MDK作為開發(fā)軟件。
STM32CubeIDE 1.0.0 是在2019年4月推出的,推出的時間比較晚,所以一直沒有介紹使用 STM32CubeMX 和 STM32CubeIDE 進(jìn)行 STM32 開發(fā)的書,直到《STM32Cube高效開發(fā)教程》的出現(xiàn)。
《STM32Cube高效開發(fā)教程》以STM32CubeMX和 STM32CubeIDE 為開發(fā)軟件,以 STM32F407為例,全面而系統(tǒng)地介紹 STM32 的開發(fā),包括相關(guān)工具軟件的使用、STM32 片上資源和外設(shè)的 HAL 編程方法、FreeRTOS 等中間件的編程開發(fā)方法。
《STM32Cube高效開發(fā)教程》內(nèi)容很多,所以分為基礎(chǔ)篇和高級篇兩本?;A(chǔ)篇介紹 STM32Cube 開發(fā)方式所用的工具軟件,以及 STM32F407 系統(tǒng)功能和常用外設(shè)的使用。
基礎(chǔ)篇共 22 章,分為兩大部分。
●第一部分是軟硬件基礎(chǔ),介紹STM32Cube生態(tài)系統(tǒng)的組成,介紹STM32CubeMX、STM32CubeIDE、STM32CubeMonitor軟件的使用,介紹STM32F407的基本架構(gòu)和最小系統(tǒng)電路原理。
●第二部分介紹STM32F407系統(tǒng)功能和常用外設(shè)的原理和編程方法,包括中斷系統(tǒng)原理和使用、DMA原理和使用、低功耗原理和使用,以及定時器、RTC、ADC、USART、SPI、I2C等常用外設(shè)的編程方法。
高級篇介紹固件庫中一些中間件的使用,還介紹一些高級接口的使用。高級篇共 22 章,內(nèi)容分為三大部分。
●第一部分是嵌入式操作系統(tǒng)FreeRTOS的使用,包含11章內(nèi)容,全面介紹了FreeRTOS各種功能的使用,包括任務(wù)管理、中斷管理、進(jìn)程間通信技術(shù)等,其中進(jìn)程間通信技術(shù)包括隊列、信號量、互斥量、事件組、任務(wù)通知、流緩沖區(qū)和消息緩沖區(qū)。
●第二部分是使用FatFS管理文件系統(tǒng),包含6章內(nèi)容。這一部分介紹了在SPI接口Flash芯片上移植FatFS的過程,在SD卡、U盤上使用FatFS管理文件系統(tǒng)的方法。
●第三部分是圖片的獲取與顯示,包含5章內(nèi)容。這一部分介紹了BMP和JPG圖片文件的讀寫和顯示,電阻式觸摸屏和電容式觸摸屏的使用,以及簡單的GUI程序設(shè)計方法。
05
選擇這套書學(xué)習(xí)
STM32Cube開發(fā)有哪些好處?
STM32 是軟硬件結(jié)合的編程,程序需要在開發(fā)板上運行,才能看到效果。為了讓讀者更好地理解書中介紹的原理,以及看到示例運行的效果,本書提供了多種配套資源。
審核編輯 :李倩
-
單片機(jī)
+關(guān)注
關(guān)注
6067文章
44990瀏覽量
650372 -
嵌入式
+關(guān)注
關(guān)注
5150文章
19668瀏覽量
317466 -
STM32
+關(guān)注
關(guān)注
2293文章
11032瀏覽量
364820
原文標(biāo)題:玩單片機(jī)的你,了解STM32Cube開發(fā)嗎?
文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
意法半導(dǎo)體根據(jù)特定負(fù)載需求量身定制解決方案
STM32Cube學(xué)習(xí)筆記 (十六篇全)
stm32cube固件庫導(dǎo)入,已經(jīng)有低版本庫,導(dǎo)入更高版本的庫出現(xiàn)問題,怎么解決?
STM32f103RE FatFs初始化導(dǎo)致DMA傳輸異常怎么解決?
STM32CUBE programmer軟件為什么打不開?
cube stm32g030f6p6 adc analog watchdog1為什么無法配置?
win7 64位系統(tǒng)STM32CubeMX安裝完成后數(shù)據(jù)包無法升級到最新版本,怎么解決?
STM32G474利用高精度HRTIM怎么捕獲外部波形計算波形頻率?
如何在STM32CubeMX中集成Flexible Safety RTOS

如何在STM32f4系列開發(fā)板上部署STM32Cube.AI,
X-CUBE-CLASSB以及生態(tài)系統(tǒng)為何如此重要
瑞薩電子EZ-CUBE3操作指南
瑞薩e2studio----使用EZ-CUBE3燒錄

評論