iar stm32_STM32强大的生态,在这里一起总结!
STM32能被这么多开发者认可,它的强大生态系统起了关键作用。本文围绕STM32生态各软件工具进行相关描述,其中包含一些技术细节。
一、STM32生态系统总预览
STM32提供了全套开发工具,以及开发所需的软件包,下面看一张图,从全局来了解STM32生态系统工具和软件:
主要分为两大类:
1.软件工具:即左边部分的STM32CubeMX、 CubeIDE 、 CubeProgrammer 、 CubeMontor等。
2.嵌入式软件包:STM32 CubeMCU Packages 和 扩展软件包CubeExpansions.
STM32Cube生态系统几个特点:
- 免费自由使用;
- 接口一致,方便移植
- 可裁剪、可扩展
- 易使用和理解
- 节约开发时间和成本
- ······
(当然,这是我自己总结的特点,其实还有很多,欢迎补充)
下面进一步详细描述各工具和软件包的内容。
二、STM32CubeMX
STM32CubeMX早在2014年就推出了,但早期的STM32CubeMX和HAL相对现在Bug更多,使用也不方便。再加上用户习惯了标准外设库,所以早期推出STM32CubeMX时,用户并不买账。
因此,为了推广 STM32CubeMX,以及让更多用户使用 STM32CubeMX, ST在14、15年逐渐停止了对各MCU标准外设库的更新和维护,让用户转向了HAL和LL库。
STM32CubeMX是一个图形化的软件配置工具,使用图形向导可以生成STM32初始化代码工程。
STM32CubeMX特性:
1.直观的选择 STM32 微控制器(MCU)和微处理器(MPU)。
2.丰富易用的图形化界面:
-自动解决配置冲突
-具有参数约束动态验证的外设和中间件功能模式
-时钟树与配置的动态验证
-功耗预测
3.生成初始化代码工程,包含:EWARM、 MDK-ARM、 TureSTUDIO、 SW4STM32等。
4.针对部分MPU生成Linux设备树。
5.可独立运行在Windows、Linux和macOS上使用,或作为 Eclipse 插件使用。
当然,更多介绍可以参看我的文章:STM32CubeMX系列教程01_STM32Cube产品介绍
也可以参看官网最新的介绍:
当然, STM32CubeMX的使用教程,可以参看我的专栏:STM32CubeMX系列教程
三、STM32CubeIDE
STM32CubeIDE推出的时间是在19年4月左右,但它的发展历程却有很久了。
STM32CubeIDE的发展要从早期 Atollic 的 TrueSTUDIO 说起,早期的 T rueSTUDIO 是 Atollic公司针对嵌入式开发的一套IDE工具(类似Keil、 IAR)。
在2017年12月的时候,ST收购了Atollic公司,然后TrueSTUDIO for STM32就这样诞生了。
直到2019年4月份,ST正式推出了 STM32CubeIDE,简单说就是 TrueSTUDIO for STM32的“升级版本 ”,只是这个 “升级版本”变化有点大。
这里推荐参看我之前分享过的一篇文章:从TrueSTUDIO迁移到STM32CubeIDE只需要简单几步
下面通过一张图来了解 STM32CubeIDE的发展历史:
STM32CubeIDE是一个多功能的集成开发工具(IDE),集成了TrueSTUDIO和STM32CubeMX,它是STM32Cube软件生态系统的一部分。
它是一个先进的C/C++开发平台,具有STM32微控制器的IP配置、代码生成、代码编译和调试功能等。
官方地址:
更多可以参看我之前分享过的文章:STM32CubeIDE介绍、下载安装,配置生成代码,在线调试
四、STM32CubeProgmmer
STM32CubeProgmmer之前也有一段很长的历史,早期的ST芯片下载工具是 STVP(ST Visual Programmer) ,可能2010年之前的工程师比较熟悉这款工具,但后面的逐渐被ST-LINK Utility取代了。
ST-LINK Utility应该现在很多工程师都还在用,但官方也是用 STM32CubeProgmmer替代了 ST-LINK Utility,同时也停止了对 ST-LINK Utility的更新。
这里介绍可以参看我之前分享的一篇文章:STVD、STVP、ST-LINK utility这些工具你了解吗?
STM32CubeProgrammer有很多地方和 ST-LINK Utility相似,但新引入了一些功能,比如安全编程(secure programming)。
这里可以参看文章:几点关于STM32CubeProgrammer的内容
五、STM32CubeMonitor
STM32CubeMonitor是ST今年(2020 )推出的一款新的神器, 是一款通过实时读取和显示变量来帮助调试和诊断STM32应用程序的工具。
STM32CubeMonitor也有一个发展历程,它的前生其实是STM Studio。它和 STM Studio主要的功能就是监控,比如监控变量:
主要特征:
•基于图形流的编辑器,不需要编程来构建仪表板
•通过ST-LINK (SWD、JTAG协议)连接到任何STM32设备
•在目标应用程序运行时,在RAM中实时读取和写入变量解析来自应用程序可执行文件的调试信息
•直接获取模式或快照模式
•关注感兴趣的应用行为
•允许将数据记录到文件中并重播以进行详尽的分析
•通过可配置的显示窗口(如曲线和方框)和大量的小部件(如仪表、条形图和图表)提供定制的可视化多探头支持同时监控多个目标
•远程监控,本机支持多格式显示(PC、平板电脑、手机)
•直接支持Node-RED开放社区
•支持操作系统:Windows,Linux Ubuntu 和 macOS
(以上来自有道词典翻译,可能存在错误)
详细可以参看文章:STM32CubeMonitor介绍、下载、安装和使用教程
官网地址:
www.st.com/stm32cubemonitor
CubeMonitor扩展:
借助Node-RED开放社区,STM32CubeMonitor可提供丰富的扩展功能,可参看:
https://wiki.st.com/stm32mcu/wiki/STM32CubeMonitor_tool_suite_overview
1.STM32CubeMonitor-RF
网址:
www.st.com/stm32cubemonrf
STM32CubeMonRF是STM32CubeMonitor-RF的缩写,它是一款用于监测无线设备的工具,目前主要用于监测STM32WB与蓝牙(BLE)和设备的发送/接收性能。
网址:
www.st.com/stm32cubemonpwr
STM32CubeMonPwr是STM32CubeMonitor-Power,是一款使开发人员能够快速分析目标板低功耗性能的工具。
网址:
www.st.com/stm32cubemonucpd
STM32CubeMonUCPD是STM32CubeMonitor-UCPD,是一款用于监视和配置USB Type-C和Power Delivery应用程序的工具。
六、STM32CubeMCU Packages
STM32Cube生态的嵌入式软件包种类繁多,但分类比较明确,下面通过一张图来看下嵌入式软件包应用结构图:
MCU Packages即MCU软件包,也是大家最常用、最熟悉的软件包:
在STM32CubeMX软件包管理器中可以进行查看和 (删除、增加)管理:
MCU软件包还可以分两类:
其中中间层有ST自家的、也有第三方的,种类比较多,比如:FreeRTOS、 FatFS、 LwIP、 Open Bootloader、 Bluetooth 5 stack、 Zigbee 3 stack、 USB Host & Device stacks等。
通过一张图全面了解MCU软件包:
各包支持的情况:
七、STM32Expansion
STM32扩展包,也是STM32Cube生态系统其中的组成部分,STM32的扩展包有ST自家的,也支持第三方的扩展包。
比如:X-CUBE-AI 、 X-CUBE-BLE1、 X-CUBE-NFC4······等很多很多。
下面进行分类一下:
同样,可以在STM32CubeMX软件包管理器中可以进行查看和(删除、增加)管理:
八、总结
本文总结了STM32Cube 生态目前()所有的软件工具内容,以及描述相关细节内容。
STM32Cube生态的软件工具细节内容其实比较多,并不是所有都需要掌握,初学者可以从STM32CubeMX和MCU软件包(HAL)开始学起,然后一步一步拓展。
免责声明:本文系网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容。
iar stm32_STM32强大的生态,在这里一起总结!相关推荐
- iar stm32_STM32延时函数的四种方法
关注.星标公众号,不错过精彩内容 单片机编程过程中经常用到延时函数,最常用的莫过于微秒级延时delay_us()和毫秒级delay_ms().本文基于STM32F207介绍4种不同方式实现的延时函数. ...
- 【STM32的Cube和HAL生态】
STM32的Cube和HAL生态 目录 章节介绍 一.单片机软件开发的时代变化 二.STM32软件开发的各种模式 三. STM32CubeMX工具入门与MDK5 四.STM32的FW补丁结构分析 五. ...
- 多个硬件体验如一,华为终端分布式技术会重构IoT生态吗?
文|编程浪子 来源 | 螳螂财经(ID:TanglangFin) 随着新基建理念的深入贯彻,从事硬件行业的人们不禁提出了一个至关重要的问题:物联网的商业价值在什么情况下才能最大化? 物联网的概念由比尔 ...
- 基于互联网生态积累,百度Apollo智舱产品斩获智能网联创新奖
12月16日,由国家发展改革委国际合作中心.广州市人民政府.亚洲数据集团共同主办的2021世界智能汽车大会于广州南沙正式开幕.本次大会以"智行·创驶新篇"为主题,基于智能汽车在发展 ...
- python规模_python语言计算生态规模有多大?
学习python语言需要用到什么软件,内存多大? 其运行时安装的扩展插件可支持Python语言! 4. GNU Emacs GNU Emacs是一款终身免费且兼容任何平台的代码编辑器,使用强大的Lis ...
- 英特尔携手百度全方位深化合作 共筑智能生态
2021年7月29日,英特尔公司今日出席智能经济高峰论坛暨百度云智峰会2021并分享了一系列与百度在人工智能.云计算.智能边缘等方面的最新合作进展.在智能技术方面,百度基于第三代英特尔®至强®可扩展处 ...
- 阿里云首次公布年度3大战略方向,中台做厚,做强生态,还要再招5000人
钉钉+阿里云= "云钉一体",是阿里云在疫情之后强推的新型操作系统. " 6月9日,2020年阿里云线上峰会召开,这也是阿里云今年首个大型峰会.会上阿里云智能总裁张建锋不 ...
- Onew Ex凝聚共识,维护生态繁荣
过去的2018年,数字资产领域迅速爆发,比特币在一年内上涨了14倍,涨幅最高的时候甚至市值超过了英镑,这是不可思议却又已经发生的事情.所以,会有人预言"2019年是数字资产革命元年" ...
- 华为发布鸿蒙开发版,华为发布首款鸿蒙开发板,基于RISC-V架构,软硬生态一起抓?...
原标题:华为发布首款鸿蒙开发板,基于RISC-V架构,软硬生态一起抓? 华为已经官宣了,6月2日将鸿蒙OS将正式转正,面向普通消费者正式升级体验,到时候华为的手机可以升级成鸿蒙了,同时华为还会带来基于 ...
最新文章
- UITextField与UITextView的区别
- linux shell if 或和且的表示方法
- supervisor使用指南
- Winform DataGridView控件添加行号
- 怎么用c语言实现万年历,用C语言如何编写“万年历”
- 定量库存控制模型_经济订货批量不是最终的订货批量,计算订货批量的最高库存定量法...
- 大众点评被合并至美团? 官方回应:不存在这种可能性
- js 计算 往前(后)几天(月、年)
- Opera系统Oracle,超详细的酒店Opera系统中英讲解1
- CentOS7增加或修改SSH端口号
- CeH2.5-NaH-Al复合储氢材料/金属Ce氢化物催化NaH-Al复合储氢材料/Ce氢化物催化的NaAlH4复合储氢材料定制
- [数字疾控]-从业人员健康体检管理系统
- Win10 实现对计算机的远程控制 (Windows自带+QQ)
- 干预型ASO手段——积分墙
- 导致计算机重启的原因,电脑自动重启的原因分析
- php写前端还是nodejs,javascript - 新手想在短期内写一个个人博客,是用php还是用nodejs?...
- Golang的Redis简单使用及集群配置(Win10)
- 公司测试员用例写得乱七八糟,测试总监制定了这份《测试用例编写规范》
- 机器学习 | 特征重要性判断
- 网络显示连接,不能还是上网,找不到DNS怎么办?