本帖最后由 天亮fight 于 2019-8-10 18:14 编辑
本篇文章主要介绍STM32Cube生态系统。
STM32Cube EcosystemSTM32Cube是ST公司开发的一套生态系统,致力于使STM32的开发变的更简单,并且100%开源免费。
在开始介绍之前,先放上两段ST官方的视频,作以欣赏了解:
它包括两大部分: - PC软件工具:STM32CubeMX、STM32CubeIDE、STM32CubeProgrammer、STM32CubeMnitor等
- 软件库:STM32 Embedded Software bricks
STM32Cube PC ToolsSTM32Cube MX:适用于任何STM32设备的配置工具
该工具用Java编写,所以可以在Windows、Linux、Mac上运行,它可以使用用户通过图形用户界面对微控制器进行配置,然后为Cortex-M内核生成初始化C代码,或者为Cortex-A内核生成Linux设备树源(下面两张图对STM32CubeMX的作用作以诠释):
STM32CubeIDE:集成开发环境
该工具是基于Eclipse+GNU C/C++工具链的,除了基本的编辑和编译功能,还包括代码编译报告功能和高级调试功能,另外,该IDE还集成了CubeMX。
STM32CubeProgrammer:编程工具(给编程指给单片机烧录程序)
该工具通过各种可用的通信方式(比如JTAG,SWD,UART,USB DFU,I2C,SPI,CAN等),提供了易于使用且高效的环境,用于读取,写入和验证存储器。
这四个工具伴随着整个STM32的开发流程:
STM32 Embedded SoftwareSTM32 Embedded Softwares是STM32Cube提供的软件包,包括两大部分: - STM32Cube MCU Packages
- STM32Cube Expansion
STM32Cube MCU PackagesSTM32Cube MCU Packages是STM32Cube提供的对于每个MCU产品的软件包,其中包括:
底层库代码STM32Cube提供的HAL库或者LL库,覆盖STM32全系列,包括:
中间件代码STM32Cube提供的中间件代码非常丰富,包括:
用户代码STM32Cube提供初步写好的用户代码,开发者可以在此基础上开发各种应用:
截止2019年2月,STM32Cube软件包对STM32全系列产品的支持情况如下表:
STM32Cube Expansion
- 用于云连接的即用型扩展包(Amazon AWS,Microsoft Azure,IBW Watson等)
- LoRa
- 蜂窝连接
- NFC
- 工业通信协议
- 加密库
- 传感器驱动程序
- 电机控制算法
- 安全自测库
- ……
至此,对STM32Cube生态系统的介绍完毕,下一节讲述如何获取STM32Cube生态系统中的PC tools和Embeded Software。
|