赞
踩
STM32CubeMX可以为我们的MCU进行资源配置,用于生成配置 ST HAL 所需的代码。它可以独立安装,我们的STM32CubeIDE已经包含了这个。需要注意的是,STM32CubeMX生成的代码,可以用Keil打开,但是STM32CubeIDE生成的工程代码,Keil好像不能使用。第一节中已经使用过配置LED,现在详细讲解下相关的内容。
在PROUTC INFO里
后面是一些片内资源/外设,内存大小,定时器个数等等
允许选择官方ST公司的开发板。在PROUTC INFO里
ST公司开发了很多示例来展示如何使用STM32,允许通过这些示例来进行筛选。
Board Support Package Library:使用给定的BSP库的示例(EEPROM,LCD等额外外设)
如果你一直使用其它非STM的MCU,近期想移植到STM32上,可以利用交叉选择器、也可以给STM32 MCU找替代品。
选择完MCU后,会生成一个.ioc文件。这个是CUBEMX的主要文件
可以将引脚配置想要的功能,GPIO,USART,CAN,TIMER等等。
未启用的外设图标是橙色的,你配置了但是关联的外设未启用,不会生成相关的代码,浅黄色是电源引脚,无法更改。BOOT 和 RESET 引脚以卡其色着色,其配置无法更改。
CubeMX还提供了可以为每个单独的MCU信号定义自定义标签。通过右键单击已启用的 PIN,可以选择输入用户标签。LABEL 部分将在 main.h 文件中生成相应的宏。
在这里可以进行时钟的配置。可以设置内核的时钟和外设的时钟。如果需要设置HSE或者LSE,可以看到现在是置灰的状态,需要在“引脚视图和配置(Pinout View & Configuration)”中的System Core->RCC部分开启。先了解到这里,后面详细介绍。
*可以修改PLL实现STM32的超频,但是不建议这么使用,可能会损坏MCU而且可能会碰到难想象的异常问题。
这里可以配置工作区、工具链、源代码生成、堆栈大小和所用 HAL 库类型相关的项目范围配置。
这里配置CubeMX 代码生成相关的,比如将 HAL *.c/h 文件包含在项目中、如何保留模板文件结构等。
这里有更高级的项目选项,可以在 CubeHAL 和更优化的 Cube-LL 库之间进行选择。同时,可以选择不为某些外围设备或中间件组件生成代码,以便你可以添加自己的代码。
可以使用功耗计算器PCC,在给定MCU型号,电池模型和用户定义的功率的情况下,可以提供平均功耗,电池寿命, 平均 DMIPS等参数估计。
在配置好我们的工程后,如何去生成代码?有两种方式,一种是保存.ioc文件,会自动弹出是否生成代码的选项,另外一种是点击Project->Generate Code生成,会生成以下的代码结构
生成编译结束后产生的ELF文件。
头文件包含路径,如果有新建文件,记得添加头文件
核心的文件夹,包含开发应用程序所需的所有文件。
1. main.h:引脚的标签的宏声明就是放在这里的。
2. stm32XXxx_hal_conf.h:使用多个宏定义将 HAL 配置转换为 C 代码的文件。这些宏用于“指示”HAL有关已启用MCU功能的信息。
3. stm32XXxx_it.c:存放中断服务(ISR)的地方。
4. startup_stmXXxx.s:启动文件
包含 CMSIS-CORE 包和 CubeHAL 库。
此文件夹包含编译生成的所有中间文件,如映射文件, ELF 或其他二进制格式的最终二进制文件。可以安全删除,编译会生成。
这些是链接器脚本,定义了FLASH和RAM的大小。
STM32CubeIDE可以管理CubeHAL包和其他扩展包。在Help->Manage Embedded Software Packages可以打开设置。
可以从下面的From Local安装本地的包,From Url从网上下载。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。