STM32能被這么多開發(fā)者認可,它的強大生態(tài)系統(tǒng)起了關(guān)鍵作用。本文圍繞STM32生態(tài)各軟件工具進行相關(guān)描述,其中包含一些技術(shù)細節(jié)。 一、STM32生態(tài)系統(tǒng)總預(yù)覽
STM32提供了全套開發(fā)工具,以及開發(fā)所需的軟件包,下面看一張圖,從全局來了解STM32生態(tài)系統(tǒng)工具和軟件:
主要分為兩大類:1.軟件工具:即左邊部分的STM32CubeMX、 CubeIDE、CubeProgrammer、CubeMontor等。 2.嵌入式軟件包:STM32CubeMCU Packages 和擴展軟件包CubeExpansions.
STM32Cube生態(tài)系統(tǒng)幾個特點:
免費自由使用;
接口一致,方便移植
可裁剪、可擴展
易使用和理解
節(jié)約開發(fā)時間和成本
······
(當然,這是我自己總結(jié)的特點,其實還有很多,歡迎補充) 下面進一步詳細描述各工具和軟件包的內(nèi)容。 二、STM32CubeMX
STM32CubeMX早在2014年就推出了,但早期的STM32CubeMX和HAL相對現(xiàn)在Bug更多,使用也不方便。再加上用戶習(xí)慣了標準外設(shè)庫,所以早期推出STM32CubeMX時,用戶并不買賬。 因此,為了推廣STM32CubeMX,以及讓更多用戶使用STM32CubeMX,ST在14、15年逐漸停止了對各MCU標準外設(shè)庫的更新和維護,讓用戶轉(zhuǎn)向了HAL和LL庫。
STM32CubeMX是一個圖形化的軟件配置工具,使用圖形向?qū)Э梢陨蒘TM32初始化代碼工程。
STM32CubeMX特性:
1.直觀的選擇 STM32 微控制器(MCU)和微處理器(MPU)。
2.豐富易用的圖形化界面:
-自動解決配置沖突
-具有參數(shù)約束動態(tài)驗證的外設(shè)和中間件功能模式
-時鐘樹與配置的動態(tài)驗證
-功耗預(yù)測
3.生成初始化代碼工程,包含:EWARM、 MDK-ARM、 TureSTUDIO、 SW4STM32等。
4.針對部分MPU生成Linux設(shè)備樹。
5.可獨立運行在Windows、Linux和macOS上使用,或作為 Eclipse 插件使用。
當然,更多介紹可以參看我的文章:STM32CubeMX系列教程01_STM32Cube產(chǎn)品介紹 也可以參看官網(wǎng)最新的介紹: www.st.com/stm32cubemx 當然,STM32CubeMX的使用教程,可以參看我的專欄:STM32CubeMX系列教程三、STM32CubeIDE
STM32CubeIDE推出的時間是在19年4月左右,但它的發(fā)展歷程卻有很久了。 STM32CubeIDE的發(fā)展要從早期 Atollic的 TrueSTUDIO 說起,早期的 TrueSTUDIO是 Atollic公司針對嵌入式開發(fā)的一套IDE工具(類似Keil、 IAR)。 在2017年12月的時候,ST收購了Atollic公司,然后TrueSTUDIO for STM32就這樣誕生了。 直到2019年4月份,ST正式推出了STM32CubeIDE,簡單說就是TrueSTUDIO for STM32的“升級版本”,只是這個“升級版本”變化有點大。 這里推薦參看我之前分享過的一篇文章:從TrueSTUDIO遷移到STM32CubeIDE只需要簡單幾步 下面通過一張圖來了解STM32CubeIDE的發(fā)展歷史:
STM32CubeIDE是一個多功能的集成開發(fā)工具(IDE),集成了TrueSTUDIO和STM32CubeMX,它是STM32Cube軟件生態(tài)系統(tǒng)的一部分。 它是一個先進的C/C++開發(fā)平臺,具有STM32微控制器的IP配置、代碼生成、代碼編譯和調(diào)試功能等。 官方地址: https://www.stmicroelectronics.com.cn/en/development-tools/stm32cubeide.html 更多可以參看我之前分享過的文章:STM32CubeIDE介紹、下載安裝,配置生成代碼,在線調(diào)試四、STM32CubeProgmmerSTM32CubeProgmmer之前也有一段很長的歷史,早期的ST芯片下載工具是 STVP(ST Visual Programmer),可能2010年之前的工程師比較熟悉這款工具,但后面的逐漸被ST-LINK Utility取代了。 ST-LINK Utility應(yīng)該現(xiàn)在很多工程師都還在用,但官方也是用STM32CubeProgmmer替代了ST-LINK Utility,同時也停止了對ST-LINK Utility的更新。 這里介紹可以參看我之前分享的一篇文章:STVD、STVP、ST-LINK utility這些工具你了解嗎?
STM32CubeProgrammer有很多地方和ST-LINK Utility相似,但新引入了一些功能,比如安全編程(secure programming)。 這里可以參看文章:幾點關(guān)于STM32CubeProgrammer的內(nèi)容五、STM32CubeMonitor
STM32CubeMonitor是ST今年(2020)推出的一款新的神器,是一款通過實時讀取和顯示變量來幫助調(diào)試和診斷STM32應(yīng)用程序的工具。
STM32CubeMonitor也有一個發(fā)展歷程,它的前生其實是STM Studio。它和STM Studio主要的功能就是監(jiān)控,比如監(jiān)控變量:
主要特征:
?基于圖形流的編輯器,不需要編程來構(gòu)建儀表板
?通過ST-LINK (SWD、JTAG協(xié)議)連接到任何STM32設(shè)備
?在目標應(yīng)用程序運行時,在RAM中實時讀取和寫入變量解析來自應(yīng)用程序可執(zhí)行文件的調(diào)試信息
?直接獲取模式或快照模式
?關(guān)注感興趣的應(yīng)用行為
?允許將數(shù)據(jù)記錄到文件中并重播以進行詳盡的分析
?通過可配置的顯示窗口(如曲線和方框)和大量的小部件(如儀表、條形圖和圖表)提供定制的可視化多探頭支持同時監(jiān)控多個目標
?遠程監(jiān)控,本機支持多格式顯示(PC、平板電腦、手機)
?直接支持Node-RED開放社區(qū)
?支持操作系統(tǒng):Windows,Linux Ubuntu 和 macOS
(以上來自有道詞典翻譯,可能存在錯誤)
詳細可以參看文章:STM32CubeMonitor介紹、下載、安裝和使用教程
官網(wǎng)地址:
www.st.com/stm32cubemonitor
CubeMonitor擴展:
借助Node-RED開放社區(qū),STM32CubeMonitor可提供豐富的擴展功能,可參看:
https://wiki.st.com/stm32mcu/wiki/STM32CubeMonitor_tool_suite_overview
1.STM32CubeMonitor-RF
網(wǎng)址:
www.st.com/stm32cubemonrf
STM32CubeMonRF是STM32CubeMonitor-RF的縮寫,它是一款用于監(jiān)測無線設(shè)備的工具,目前主要用于監(jiān)測STM32WB與藍牙(BLE)和802.15.4設(shè)備的發(fā)送/接收性能。
2.STM32CubeMonitor-Pwwer
網(wǎng)址:
www.st.com/stm32cubemonpwr
STM32CubeMonPwr是STM32CubeMonitor-Power,是一款使開發(fā)人員能夠快速分析目標板低功耗性能的工具。
3.STM32CubeMonitor-UCPD
網(wǎng)址:
www.st.com/stm32cubemonucpd
STM32CubeMonUCPD是STM32CubeMonitor-UCPD,是一款用于監(jiān)視和配置USB Type-C和Power Delivery應(yīng)用程序的工具。
六、STM32CubeMCU PackagesSTM32Cube生態(tài)的嵌入式軟件包種類繁多,但分類比較明確,下面通過一張圖來看下嵌入式軟件包應(yīng)用結(jié)構(gòu)圖:
MCU Packages即MCU軟件包,也是大家最常用、最熟悉的軟件包:
在STM32CubeMX軟件包管理器中可以進行查看和(刪除、增加)管理:
MCU軟件包還可以分兩類:
底層驅(qū)動HAL和LL
中間層Middlewares
其中中間層有ST自家的、也有第三方的,種類比較多,比如:FreeRTOS、 FatFS、 LwIP、 Open Bootloader、 Bluetooth 5 stack、 Zigbee 3 stack、 USB Host & Device stacks等。
通過一張圖全面了解MCU軟件包:
各包支持的情況:
七、STM32Expansion
STM32擴展包,也是STM32Cube生態(tài)系統(tǒng)其中的組成部分,STM32的擴展包有ST自家的,也支持第三方的擴展包。 比如:X-CUBE-AI、 X-CUBE-BLE1、 X-CUBE-NFC4······等很多很多。 下面進行分類一下:
同樣,可以在STM32CubeMX軟件包管理器中可以進行查看和(刪除、增加)管理:
八、總結(jié)
本文總結(jié)了STM32Cube生態(tài)目前(2020.10)所有的軟件工具內(nèi)容,以及描述相關(guān)細節(jié)內(nèi)容。 STM32Cube生態(tài)的軟件工具細節(jié)內(nèi)容其實比較多,并不是所有都需要掌握,初學(xué)者可以從STM32CubeMX和MCU軟件包(HAL)開始學(xué)起,然后一步一步拓展。
責任編輯:lq
-
STM32
+關(guān)注
關(guān)注
2265文章
10858瀏覽量
354429 -
生態(tài)系統(tǒng)
+關(guān)注
關(guān)注
0文章
699瀏覽量
20698
原文標題:全面解讀STM32生態(tài)環(huán)境,介紹、下載安裝、使用教程等
文章出處:【微信號:RTThread,微信公眾號:RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論