本篇**主要介绍STM32Cube生态系统。
寻求更好的阅读体验,请移步:Mculover666的个人博客。STM32Cube EcosystemSTM32Cube是ST公司开发的一套生态系统,致力于使STM32的开发变的更简单,并且100%开源免费。
在开始介绍之前,先放上两段ST官方的视频,作以欣赏了解:
STM32Cube生态系统宣传片STM32Cube产品概览 - 使STM32开发更简单
它包括两大部分: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等),提供了易于使用且高效的环境,用于读取,写入和验证存储器。
STM32CubeMnitor:强大的监控工具
帮助开发人员实时调试和监控应用程序的行为和性能。
这四个工具伴随着整个STM32的开发流程:
STM32 Embedded SoftwareSTM32 Embedded Softwares是STM32Cube提供的软件包,包括两大部分:STM32Cube MCU PackagesSTM32Cube Expansion
STM32Cube MCU PackagesSTM32Cube MCU Packages是STM32Cube提供的对于每个MCU产品的软件包,其中包括:底层库代码中间件代码用户代码
底层库代码STM32Cube提供的HAL库或者LL库,覆盖STM32全系列,包括:
中间件代码STM32Cube提供的中间件代码非常丰富,包括:
用户代码STM32Cube提供初步写好的用户代码,开发者可以在此基础上开发各种应用:
截止2019年2月,STM32Cube软件包对STM32全系列产品的支持情况如下表:
STM32Cube Expansion
STM32Cube扩展包补充了STM32Cube MCU Packages的功能,目前已有的软件扩展包有:用于云连接的即用型扩展包(Amazon AWS,Microsoft Azure,IBW Watson等)LoRa蜂窝连接NFC工业通信协议加密库传感器驱动程序电机控制算法安全自测库……
至此,对STM32Cube生态系统的介绍完毕,下一节讲述如何获取STM32Cube生态系统中的PC tools和Embeded Software。 |