目录
前言
STM32Cube生态
STM32Cube 是什么?
STM32Cube 软件工具套件
STM32Cube Embedded 软件
STM32CubeMX
编辑
也许大家在学习正点原子或者其他32视频和代码的时候都听过HAL库,是的这是ST官方最新的函数库,而以前的标准库已不再更新与发展。而跟随而来的就是STM32CubeMX图形化编程方式的兴起,图形化编程方式除了编程简单,图形化编程配置好后能够转换成响应的代码,极大的方便了开发者的开发,而且其具有很好的移植性,图形化编程方式已经成为了单片机开发的主流。对于国内的一些教程对其介绍的比较少,因此本人来到了ST管网查看,也建议想了解的去ST官网看。当然也可以看本博客的介绍。
本人接下将整理ST官方上关于STM32CubeMX图形化编程软件和STM32Cube库里面的介绍。
ST官方开发者社区:
STM32 MCU Developer Zone - STMicroelectronicshttps://www.st.com/content/st_com/zh/stm32-mcu-developer-zone.html
STM32Cube - Discover the STM32Cube Ecosystem - STMicroelectronicsSTM32Cube is a combination of software tools and embedded software libraries for STM32 microcontrollers and microprocessors. Get inside the STM32Cube ecosystem and explore our complete and free development environment for STM32 MCUs and MPUs.https://www.st.com/content/st_com/en/ecosystems/stm32cube-ecosystem.html
STM32Cube是软件工具和嵌入式软件库的组合:
STM32CubeMX 是一个图形工具,可以非常轻松地配置 STM32 微控制器和微处理器,以及为 Arm ® Cortex ® -M 内核或用于 Arm ® Cortex ®的部分 Linux ®设备树生成相应的初始化 C 代码-一个核心,通过一个循序渐进的过程。
第一步包括选择与所需外设集匹配的 STMicrolectronics STM32 微控制器、微处理器或开发平台,或在特定开发平台上运行的示例。对于微处理器,第二步允许为整个系统配置 GPIO 和时钟设置,并以交互方式将外设分配给 Arm ® Cortex ® -M 或 Cortex ® -A 世界。特定的实用程序,例如 DDR 配置和调整,可以让您轻松开始使用 STM32 微处理器。对于 Cortex ® -M 内核,配置包括与为微控制器描述的步骤完全相同的额外步骤。
对于微控制器和微处理器 Arm ® Cortex ® -M,第二步是配置每个所需的嵌入式软件,这要归功于引脚冲突解决程序、时钟树设置帮助程序、功耗计算器和配置外设的实用程序(例如 GPIO 或 USART)和中间件堆栈(例如 USB 或 TCP/IP)。借助增强的 STM32Cube 扩展包,可以扩展默认软件和中间件堆栈。STMicrolectronics 或 STMicrolectronics 的合作伙伴包可以直接从 STM32CubeMX 中提供的专用包管理器下载,而其他包可以从本地驱动器安装。
https://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-configurators-and-code-generators/stm32cubemx.html?dl=fm37Hrej2ueFHuPZi%2FFxLA%3D%3D%2CK1PkeEd5kdJI0liSHjkg%2F2%2FyXR3XxkyTHRRMXoxMUpvu7QC61iHrdbcjwYM5BVEYFhNbiqBlYVM%2FBNUQUFtDuM13e0gDgRL%2BBU3x%2F7hiAYLxTeIRfMBi7scEgOk0NgV3D17oXU8RUCZyXDHeTgXj%2F6n2xtdEbH%2Fc9VQpteC7cdmb0oVSE3pxJIV8f27i3kCQekOyneJfLf1Zh5LEcb8GPmQH%2BWvzsmkOSKtlBtLDp4iRpRxTbZcbwOj2qT6c72wyWBXJ8atEFypY56GyEl8DmSaK9v1WQY4CwE6K1%2BJL9ZjsvNX75MOrXq1Cy2A5cCKvsb4TPLaOp1S%2B5femnupfaE5396SWoKib0vbq4L52YDLJuYJ61CUvOmkZIDCvUILo#st_circuit-diagram_sec-nav-tabhttps://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-configurators-and-code-generators/stm32cubemx.html?dl=fm37Hrej2ueFHuPZi%2FFxLA%3D%3D%2CK1PkeEd5kdJI0liSHjkg%2F2%2FyXR3XxkyTHRRMXoxMUpvu7QC61iHrdbcjwYM5BVEYFhNbiqBlYVM%2FBNUQUFtDuM13e0gDgRL%2BBU3x%2F7hiAYLxTeIRfMBi7scEgOk0NgV3D17oXU8RUCZyXDHeTgXj%2F6n2xtdEbH%2Fc9VQpteC7cdmb0oVSE3pxJIV8f27i3kCQekOyneJfLf1Zh5LEcb8GPmQH%2BWvzsmkOSKtlBtLDp4iRpRxTbZcbwOj2qT6c72wyWBXJ8atEFypY56GyEl8DmSaK9v1WQY4CwE6K1%2BJL9ZjsvNX75MOrXq1Cy2A5cCKvsb4TPLaOp1S%2B5femnupfaE5396SWoKib0vbq4L52YDLJuYJ61CUvOmkZIDCvUILo#st_circuit-diagram_sec-nav-tab
STM32Cube 是 STMicroelectronics 的一项原创计划,旨在通过减少开发工作量、时间和成本来显着提高开发人员的生产力。STM32Cube 涵盖了整个 STM32 产品组合。
STM32Cube 包括 STM32CubeMX,这是一个图形软件配置工具,允许使用图形向导生成 C 初始化代码。
它还包含由 STM32Cube 硬件抽象层 (HAL) 和低层 (LL) API 组成的 STM32CubeF4 MCU 包,以及一组一致的中间件组件(RTOS、USB、FAT 文件系统、图形和 TCP/IP)。TouchGFX 图形软件堆栈也包含在 STM32CubeF4 MCU 包中,作为 STM32Cube 生态系统的一部分。它可免费用于 STM32 微控制器的生产和再分发。所有嵌入式软件实用程序都随附在 STMicroelectronics 板上运行的全套示例。
STM32Cube HAL 是一个 STM32 嵌入式软件层,可确保在 STM32 产品组合中实现最大的可移植性,而 LL API 构成了一个快速、轻量级、面向专家的层,它比 HAL 更接近硬件。HAL 和 LL API 可以同时使用,但有一些限制。
HAL 和 LL API 均已投入生产,并且是根据 MISRA-C ® :2004 指南开发的,但有一些记录的例外情况(可按需提供报告)和 ISO/TS 16949。此外,ST 特定的验证过程增加了更深层次的级资格。
STM32CubeF4 将在 STM32F4 微控制器上开发应用程序所需的所有通用嵌入式软件组件集中在一个包中。遵循 STM32Cube 倡议,这套组件具有高度的可移植性,不仅在 STM32F4 系列中,而且在其他 STM32 系列中也是如此。此外,低层 API 以便携性和简单性为代价,为 STM32CubeF4 HAL 提供了一种替代的、高性能、低占用空间的解决方案。
为方便用户,HAL 和 LL API 以开源 BSD 许可证提供。
STM32CubeF4 - STM32Cube MCU Package for STM32F4 series (HAL, Low-Layer APIs and CMSIS, USB, TCP/IP, File system, RTOS, Graphic - and examples running on ST boards) - STMicroelectronics STM32CubeF4 - STM32Cube MCU Package for STM32F4 series (HAL, Low-Layer APIs and CMSIS, USB, TCP/IP, File system, RTOS, Graphic - and examples running on ST boards), STM32CubeF4, Patch-CubeF4, STMicroelectronicshttps://www.st.com/en/embedded-software/stm32cubef4.html