STM32CubeMX 6.11 是一個(gè)新的里程碑,因?yàn)樗试S開發(fā)人員使用新 STM32H7R 和 STM32H7S 的獨(dú)特功能。 該軟件還通過(guò)提供流行的 USB 中間件作為獨(dú)立軟件包的一部分,繼續(xù)簡(jiǎn)化 STM32 上的開發(fā)。同樣,它是第一個(gè)支持 CMake 的版本,這將顯著優(yōu)化工作流程。因此,STM32CubeMX 繼續(xù)作為 STM32 開發(fā)人員的參考應(yīng)用程序,這要?dú)w功于其 UI,它消除了復(fù)雜性并提高了 STM32 生態(tài)系統(tǒng)的可訪問(wèn)性。此外,新版本還首次支持 NUCLEO-U031R8、NUCLEO-U083RC、NUCLEO-H7S3L8、NUCLEO-H533RE。
STM32CubeMX 6.11 中的新功能
支持 STM32H7R 和 STM32H7S
STM32CubeMX 6.11 是新款 STM32H7R 和 STM32H7S MCU 的關(guān)鍵更新,因?yàn)樵撥浖兄诔浞掷闷鋬?nèi)存功能。事實(shí)上,這些設(shè)備的閃存更小,這使它們成為最具成本效益的 STM32H7。由于該設(shè)備面向必須使用外部存儲(chǔ)的應(yīng)用程序,因此新內(nèi)存可以幫助顯著降低物料清單。 此外,為了使嵌入式閃存更有意義,ST 引入了啟動(dòng)閃存,它存儲(chǔ)整個(gè)啟動(dòng)序列,從而取代了我們?cè)?MCU 上看到的 ROM。 因此,嵌入式存儲(chǔ)變得更加靈活和實(shí)用,因?yàn)樗粌H用于應(yīng)用程序,還用于啟動(dòng)和初始化。
為了使啟動(dòng)閃存更易于訪問(wèn),我們?cè)?STM32CubeMX 上公開了該功能。 簡(jiǎn)而言之,GUI 將幫助開發(fā)人員配置嵌入式閃存以利用其啟動(dòng)功能。 同樣,由于 STM32H7R 和 STM32H7S 將用于具有外部存儲(chǔ)器的系統(tǒng),因此 STM32CubeMX 可以設(shè)置外部加載器,以便 STM32CubeProgrammer 等應(yīng)用程序可以直接對(duì)這些分立閃存模塊進(jìn)行編程。它還將幫助開發(fā)人員將主應(yīng)用程序加載到嵌入式存儲(chǔ)器中,將系統(tǒng)的其余部分加載到外部存儲(chǔ)器中。
支持 USBX 中間件
新版 STM32CubeMX 增加了對(duì)裸機(jī)環(huán)境中 USBX 中間件的支持。USBX 是一個(gè)允許使用 USB 主機(jī)或設(shè)備的軟件堆棧。到目前為止,想要使用它的開發(fā)人員必須安裝 ThreadX RTOS。問(wèn)題是,如果團(tuán)隊(duì)想要消除操作系統(tǒng)來(lái)優(yōu)化他們的系統(tǒng),他們就無(wú)法使用 USBX。得益于 STM32CubeMX,現(xiàn)在在項(xiàng)目中包含正確的中間件變得更加容易。
使項(xiàng)目生成
STM32CubeMX 6.11 開始支持 CMake,這是一套開源工具,允許開發(fā)人員構(gòu)建、測(cè)試和打包他們的軟件。它在大型多平臺(tái)項(xiàng)目中特別有用,因?yàn)樗兄诤?jiǎn)化大型工作流程。當(dāng)前的 CMake 支持主要針對(duì)在單核 MCU 上運(yùn)行且不使用 Trustzone 的應(yīng)用程序。隨著時(shí)間的推移,我們將繼續(xù)更新我們的 CMake 支持,以允許 STM32CubeMX 為更多 STM32 微控制器生成項(xiàng)目。
什么是STM32CubeMX?
STM32CubeMX 是一款圖形工具,可幫助開發(fā)人員生成初始化微控制器及其應(yīng)用程序的代碼。 用戶可以通過(guò)界面配置 MCU 的引腳排列、解決沖突以及設(shè)置硬件外設(shè)和中間件。用戶還可以配置時(shí)鐘樹,并受益于自動(dòng)執(zhí)行特定計(jì)算的向?qū)АM瑯樱梢詭椭O(shè)置和調(diào)整 STM32 MPU 上的 DDR。該工具還有助于選擇 MCU 或 MPU 并下載其軟件包。因此,它通常是與開發(fā)人員的第一個(gè)接觸點(diǎn)。該工具可在 STM32CubeIDE 中使用,也可以單獨(dú)下載。
STM32CubeMX 還協(xié)助開發(fā)人員完成其工作的其他部分。例如,找到合適的文檔可能很棘手,尤其是在如此龐大的庫(kù)中。ST 以其廣泛的文檔而聞名,合作伙伴告訴我們,這是他們選擇我們?cè)O(shè)備的原因之一。因此,我們?cè)?STM32CubeMX 的獨(dú)立版本中提供教程視頻,以幫助開發(fā)人員搜索信息。我們提供有關(guān)配置時(shí)鐘樹、引腳或不同軟件功能的內(nèi)容。 剛接觸我們工具的程序員可以更快地啟動(dòng)他們的應(yīng)用程序,從而進(jìn)一步降低進(jìn)入門檻并減少摩擦 。
對(duì)于可能不太熟悉 STM32CubeMX 的讀者,這里列出了我們過(guò)去發(fā)布的一些功能。
用于快速訪問(wèn)功能的用戶界面
嵌入式系統(tǒng)開發(fā)人員必須掌握其生態(tài)系統(tǒng)中的眾多抽象層。典型的 PC 或移動(dòng)應(yīng)用程序開發(fā)人員僅使用一種或極少數(shù)高級(jí)語(yǔ)言和腳本框架即可完成所有工作。 相反,使用微控制器會(huì)迫使團(tuán)隊(duì)考慮許多現(xiàn)有層。 例如,尋求最終優(yōu)化的團(tuán)隊(duì)將使用低級(jí)代碼盡可能接近硬件。但是,那些尋求更實(shí)用的方法但仍能產(chǎn)生出色性能的人將使用我們的硬件抽象層 (HAL),而那些優(yōu)先考慮快速開發(fā)的人將使用我們的板級(jí)支持包 (BSP),它抽象了 HAL。
然而,太多嵌入式生態(tài)系統(tǒng)未能理解,抽象程度越高,開發(fā)人員越追求便利。事實(shí)上,如果團(tuán)隊(duì)必須花費(fèi)數(shù)小時(shí)甚至數(shù)天來(lái)設(shè)置抽象層,那么它就變得毫無(wú)意義。 因此,CubeMX 6.10.0 引入了一個(gè)新 UI,可幫助在“新項(xiàng)目”->“啟動(dòng)我的項(xiàng)目”下初始化我們的 BSP 函數(shù)。 該 UI 目前僅適用于我們最新的幾個(gè)開發(fā)平臺(tái)(NUCLEO-C031C6,以及禁用 TrustZone 時(shí)的 NUCLEO-H563ZI 和 NUCLEO-U5A5ZJ-Q),但我們的團(tuán)隊(duì)正在努力隨著時(shí)間的推移支持更多的開發(fā)板。
讓我們以 NUCLEO-H563ZI 上的閃爍燈演示為例。 第一步是確保USER LED GREEN
在人機(jī)界面下拉菜單中選擇至少。在新 UI 中選擇此選項(xiàng)時(shí),系統(tǒng)會(huì)自動(dòng)提交正確的引腳,而不僅僅是建議使用哪個(gè)引腳并設(shè)置 HAL,以便開發(fā)人員可以立即使用 BSP 函數(shù)來(lái)打開或關(guān)閉 LED。因此,用戶只需按下GENERATE CODE
右上角的按鈕并打開 main.c 文件Core/Src/
即可看到BSP_LED
已初始化并準(zhǔn)備在主函數(shù)中使用并準(zhǔn)備在while
循環(huán)中使用的函數(shù)。
此外,ST 還包含一個(gè)“生成演示代碼”選項(xiàng),該選項(xiàng)可在生成的主 C 文件中添加注釋和示例。 因此,除了自動(dòng)執(zhí)行初始化過(guò)程之外,新 UI 還可以作為新開發(fā)人員的指南,他們可以打開新文件并了解如何打開和關(guān)閉燈光。因此,即使是對(duì) C 語(yǔ)言一知半解的開發(fā)人員也可以在極少的指導(dǎo)下運(yùn)行閃爍燈光應(yīng)用程序。簡(jiǎn)而言之,新版 STM32CubeMX 旨在使嵌入式系統(tǒng)更容易使用,即使是那些在該領(lǐng)域經(jīng)驗(yàn)最少的人也可以使用。
無(wú)需管理員權(quán)限
借助 6.10.0 版,適用于 Windows 的 STM32CubeMX 成功取消了管理員權(quán)限要求。以前,操作系統(tǒng)會(huì)在安裝實(shí)用程序時(shí)要求輸入管理員密碼。 現(xiàn)在,由于重新設(shè)計(jì)了安裝過(guò)程,Windows 不再要求管理員權(quán)限,這對(duì)鎖定計(jì)算機(jī)的用戶來(lái)說(shuō)是一個(gè)巨大的幫助。 通常,公司會(huì)鎖定他們的機(jī)器以防止黑客攻擊或?yàn)E用,而要求管理員授權(quán)安裝可能非常麻煩。STM32CubeMX 6.10.0 解決了這個(gè)問(wèn)題。由于每個(gè)操作系統(tǒng)管理用戶權(quán)限的方式不同,Linux 和 macOS 版本的 STM32CubeMX 不會(huì)遇到同樣的問(wèn)題。
新增對(duì) STM32H5 和 STM32MP13 的支持
STM32CubeMX 通常是開發(fā)人員在使用 STM32 MCU 時(shí)啟動(dòng)的第一個(gè)實(shí)用程序,因?yàn)樗试S他們初始化設(shè)備、選擇正確的固件包、配置時(shí)鐘樹等。因此,ST 旨在不斷增加對(duì)我們最新設(shè)備的支持。例如, 這個(gè)新版本兼容為我們的新 STM32H5 上運(yùn)行的安全項(xiàng)目生成文件的功能,這引入了新的安全保障措施。 同樣,STM32CubeMX 現(xiàn)在為 STM32WB 和 STM32WBA MCU 提供了內(nèi)存管理工具。后者還可以選擇支持其 Thread、Zigbee 和 802.15.4 毫米波 RF 功能。最后,正如承諾的那樣,我們還將為新的 STM32MP13 添加 RTOS 支持。
內(nèi)存管理工具 (MMT)
STM32CubeMX 附帶內(nèi)存管理工具。圖形用戶界面極大地方便了 STM32H5 或 STM32U5 等設(shè)備上寄存器的配置。 例如,只需單擊幾下,它就可以幫助設(shè)置設(shè)備以使用 TrustZone、安全環(huán)境或內(nèi)存保護(hù)單元。 以前,開發(fā)人員必須弄清楚哪些寄存器控制哪些功能。新的 MMT 消除了大部分復(fù)雜性,從而創(chuàng)造了更加直觀的體驗(yàn)。此外,正如 STM32CubeMX 6.10.0 所示,我們將繼續(xù)將 MMT 引入新的 STM32 設(shè)備。
引導(dǎo)路徑管理
引導(dǎo)路徑管理器有助于配置 STM32H5 上可用的新引導(dǎo)加載程序。ST 的最新主流 MCU 支持不可變信任根 (iRoT) 和可更新信任根 (uRoT)。根據(jù)他們的安全需求,開發(fā)人員可以選擇使用兩者、其中之一或不使用。STM32CubeMX 通過(guò)幫助用戶從菜單中選擇配置、自動(dòng)生成密鑰以及設(shè)置引導(dǎo)路徑來(lái)保護(hù)微控制器,從而實(shí)現(xiàn)這一點(diǎn)。隨著 STM32H5 開發(fā)板的普及,我們確保 STM32CubeMX 可以幫助他們利用新功能。
安全管理器
安全管理器是 2023 年初宣布的另一項(xiàng)重要功能,現(xiàn)在可以通過(guò) STM32CubeMX 訪問(wèn)。安全管理器是我們的第一個(gè)可信執(zhí)行環(huán)境。作為 STM32 Trust 計(jì)劃的一部分,它包含二進(jìn)制文件,并可在系統(tǒng)級(jí)別幫助認(rèn)證。因此,以 SESIL 和 PSA 3 級(jí)認(rèn)證為目標(biāo)的客戶可以大大加快他們的資格認(rèn)證過(guò)程。簡(jiǎn)而言之,開發(fā)人員使用 STM32CubeMX 設(shè)置安全管理器中的所有功能,然后系統(tǒng)使用依賴于最新版本的 STM32CubeProgrammer CLI 的腳本機(jī)制來(lái)配置 MCU。
飛行前和飛行后的腳本
ST 在?? STM32CubeMX 中增加了運(yùn)行前和運(yùn)行后腳本功能,以自動(dòng)執(zhí)行各種任務(wù)。 簡(jiǎn)而言之,用戶可以要求應(yīng)用程序在執(zhí)行代碼生成之前和之后啟動(dòng)腳本,以滿足專家用戶的需求。 例如,程序員可以自動(dòng)將文件復(fù)制到新文件夾或發(fā)送到 GitHub,然后再由生成的新文件將其刪除。這將使工程師能夠保留其配置的歷史記錄,以防他們想要恢復(fù)到以前的狀態(tài)。同樣,運(yùn)行后腳本可以將新生成的文件添加到項(xiàng)目中并啟動(dòng) IDE。
驗(yàn)證
STM32CubeMX
STM32CubeMX 要求用戶在下載軟件包之前登錄 my.ST.com 帳戶,這可能會(huì)讓社區(qū)中的一些人感到困惑。以前,用戶在下載軟件時(shí)必須離開應(yīng)用程序,轉(zhuǎn)到 ST.com,然后輸入他們的憑據(jù)。 幾個(gè)版本之前,STM32CubeMX 通過(guò)確保用戶不必離開軟件來(lái)創(chuàng)建更具凝聚力的體驗(yàn)。然而,這確實(shí)意味著要求他們提供憑據(jù)。然而 ,在此之前,仍然可以在沒有帳戶的情況下使用 STM32CubeMX。
審核編輯 黃宇
-
微控制器
+關(guān)注
關(guān)注
48文章
7492瀏覽量
151074 -
內(nèi)存
+關(guān)注
關(guān)注
8文章
3004瀏覽量
73893 -
STM32
+關(guān)注
關(guān)注
2266文章
10875瀏覽量
354883 -
GUI
+關(guān)注
關(guān)注
3文章
650瀏覽量
39551 -
stm32cubemx
+關(guān)注
關(guān)注
5文章
282瀏覽量
14763
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論