本文记录一下如何从零开始使用STM32CubeMX,包括软件的安装,环境的搭建,配置代码的生成等;
本文以STM32G030C8T6为例,如果你的单片机不是以STM32G030C8T6为例,换成你的单片机类型即可,过程都是通用的;
STM32CubeMX 是意法半导体推出的针对STM32 系列芯片的图形化配置工具,通过简单的操作便能实现相关
配置,生成一个完整项目,包含所有必需的库和初始化C 代码,支持多种工具链,比如MDK、IAR For
ARM、TrueStudio 等。
STM32CubeMX 有以下主要特性:
1.微控制器选择方便,覆盖整个STM32 产品。
2.可从一系列意法半导体的开发板中选择板子。
3.微控制器配置简单(引脚、时钟树、外设、中间件)以及生成对应的初始化C 代码,凭借
STM32CubeMX 内置的STM32 微控制器、外设和中间件(LwIP 和USB 通信协议栈,
用于小型嵌入式系统的FatFs 文件系统,FreeRTOS),移植时间大大缩短。
4.将以前保存的配置导入新的MCU 项目即可轻松地转换到其他微控制器。
5.将当前配置轻松地导出到兼容的MCU,生成配置报告。
6.为一系列集成开发环境工具链生成嵌入C 项目 STM32CubeMX 项目包括生成的初始化
C 代码、兼容MISRA 2004 的HAL 驱动程序、用户配置所需的中间件协议栈,以及在选择
的IDE 中打开和编译项目的所有相关文件。
简介:
STM32CubeMX是一款由STMicroelectronics开发的强大而全面的软件工具,用于帮助开发人员快速而简便地配置和初始化STMicroelectronics的STM32微控制器。
STM32CubeMX提供了一个直观易用的图形用户界面(GUI),使开发人员能够轻松地生成STM32微控制器的启动代码,并进行必要的硬件和软件配置。它支持跨多个STM32系列,涵盖了广泛的功能和性能选项。
通过STM32CubeMX,开发人员可以通过简单且交互式的方式来配置各种外设和时钟源,包括GPIO、UART、SPI、I2C、ADC、定时器等等。该工具还提供了通过直观的界面配置中断、DMA、电源管理和时钟树等重要设置的能力。
STM32CubeMX还支持自动生成基于ARM CMSIS(Cortex Microcontroller Software Interface Standard)标准的启动文件和外设驱动库。这些库为开发人员提供了丰富的API和示例代码,以便更快地开始开发应用程序,加速产品上市时间。
此外,STM32CubeMX集成了一组先进的代码生成功能,包括RTOS(实时操作系统)集成、调试和日志记录。开发人员可以选择使用可选的RTOS,并在生成的代码中针对常见RTOS进行配置。该工具还可生成检测冲突和错误的报告,并提供了一些自动优化选项,以实现最佳性能和资源利用。
对于项目专家而言,STM32CubeMX提供了一种快速启动新项目或调整现有项目的方式。通过选择适当的STM32系列和外设配置,在图形界面中设置所需的选项,开发人员可以通过简单的几步就生成一个完整且可立即使用的项目框架。这大大减少了项目初始化和配置的时间和复杂性。
总之,STM32CubeMX是一款功能强大、易于使用的软件工具,为开发人员提供了简化和加速STM32微控制器开发过程的便捷方式。它通过图形界面和自动生成代码等特性,使得硬件和软件配置变得更加简单和可靠,从而提高了产品开发的效率和质量。
JAVA运行环境的安装包链接:https://download.csdn.net/download/AnChenliang_1002/87989908,点击下载,是jre-8u291-windows-x64,以管理员身份运行 jre-8u291-windows-x64.exe(如下图),然后直接点安装(如下图),最后提示您已成功安装Java 说明JAVA 运行环境已经安装成功(如下图):
从官网(https://www.st.com/en/development-tools/stm32cubemx.html)下载STM32CubeMX;
解压之后, 以管理员身份运行,然后直接点Next,后面如图所示一直按Next,无需修改安装路径,最后提示您已成功安装完成,再点击Done,完成安装。
STM32CubeMX 库(固件支持包)的安装支持在线安装:
以STM32G030C8T6 单片机为例进行库安装:
3. 找到图2.13 所示箭头1 所示的STM32G0,选择箭头2 所示Package of STM32G0 Series 打钩,再点击箭头3 所示Install
4.安装过程中会有进度条显示
如果安装成功,原先打钩地方会变成绿色方框,点击CLOSE 完成安装
如果公司有防火墙策略,那么在线安装不会成功,且在官网下载的包也是不完整的,会导致在离线导入的时候一直包解压失败的错误;
所以建议直接点击我的链接(STM32CubeMX MCU包,G0系列,v1.6.0)或者(STM32CubeMX MCU包,G0系列,v1.4.0(解压密码666))进行下载;
官网下载地址: https://www.st.com/zh/embedded-software/stm32cubeg0.html
点击Get Software下载软件,按照页面提示填写姓名邮箱等信息,然后通过邮箱收到的链接点进去下载:
下载后不要解压,打开STM32CubeMX, 选择菜单Help 下面的Manage embedded software packages
点击从本地导入,选择刚刚下载的zip包:
接受许可即可;
安装成功后如下所示:
在线安装有可能会因为公司防火墙而无法安装,离线安装的方法1可能会因为安装了1.6.0版本,但是缺失1.6.1版本而生成代码失败,会让你再去在线安装1.6.1,所以前两种方法都不如第三种:直接将包复制到\Repository目录,最推荐这种方法;
因为我在自己的笔记本上(没有特殊防火墙)在线安装好1.6.1版本的库文件后,发现在存放这个库的目录下,比不装1.6.1的时候,也就只多出了一下STM32Cube_FW_G0_V1.6.1
这个文件夹,如下图所示:
至于这个Repository 文件夹怎么确认是哪个路径?如下图所示:
所以我想到了另外一种离线安装的方法,想办法得到这个多出来的文件夹,手动放到公司那台不能在线安装的电脑的对应Repository Folder文件夹不就可以了。
所以最后一种方法就是把这个文件夹直接放到上图所示的Repository Folder路径下,得到这个目标文件夹有两种方法,
拿到资源后解压到Repository Folder路径下即可,如下图所示: