【官方原创】如何使用STM32CubeMX2新建工程
内容概要
本教程介绍如何通过STM32CubeMX2新建工程,讲解软件的主要特性与功能,涵盖单片机选型、引脚配置、时钟配置、外设与中间件管理、工程代码生成等核心步骤,帮助用户快速熟悉开发环境操作流程。
简介
STM32CubeMX2是一款图形化配置工具,用于简化STM32单片机的参数配置与初始化。软件提供可视化界面,支持单片机选型、引脚分配、时钟树配置、外设及中间件配置,可大幅提升开发效率、降低嵌入式系统设计复杂度。
本文将分步讲解在STM32CubeMX2中新建工程的完整流程,介绍软件核心功能,并演示如何生成可直接用于目标开发环境的工程代码。
前置准备
需提前安装以下工具:
STM32CubeMX2
最新版STM32C5 HAL2底层驱动库
Visual Studio Code中的STM32CubeIDE for Visual Studio Code
本次硬件平台:NUCLEO-C562RE开发板
1. 首页界面
打开STM32CubeMX2后,主界面会显示代码开发常用功能入口;界面右侧提供各类开发辅助资源,可供开发过程中查阅使用。
下图以v0.1.514-beta2.46为例,各版本可能有微调。
STM32 MCU portfolio
STM32单片机产品选型页:可根据应用需求优选适配的STM32单片机型号。
STM32 example browser
STM32例程浏览器:汇集各类工程示例项目,助力快速开发。
STM32 SDK builder
STM32软件开发套件定制工具:用于自定义配置并生成专属软件开发套件。
STM32 documentation library
STM32文档资料库:收录各类技术文档与参考资料。
STM32 MCU community
STM32单片机技术社区:提供技术交流、互助答疑与协作分享平台。
STM32 MCU wiki
STM32单片机知识库:包含教程、常见问题解答及用户使用指南。
STM32CubeMX2主界面左下角有两个图标,用于开发环境的相关管理操作。
图标1用于管理软件固件包,可下载、更新器件支持包及中间件组件。图标2用于配置STM32CubeMX2的偏好设置与各项功能选项。
页面中央提供三个创建工程的主入口选项:
MCU:基于单片机型号新建工程
Board:基于开发板型号新建工程
Project:从本地文件打开已有工程
选择通过单片机型号新建工程后,会跳转至选型界面,可在可搜索列表中挑选对应的STM32单片机,开始工程配置。
2. 基于单片机创建应用工程
输入单片机型号,在列表中选中匹配型号,点击[Continue]按钮即可进入下一步。
输入工程名称(例如:NewProject),并将工程保存路径修改为目标文件夹。
软件会根据你填写的信息自动生成工程文件路径。
设置完成后,点击[Automatically Download, Install & Create Project]按钮,即可继续下一步。
工程创建完成后,即可开始使用STM32CubeMX2中的以下功能:
1.Pinout:以图形化方式配置单片机引脚及引脚功能
2.Clock:配置系统时钟与外设时钟
3.Peripherals:使能并配置单片机硬件外设
4.Middleware and utilities:添加并配置中间件组件与工具类库
5.Parts:查看单片机型号信息与封装详情
6.Project Settings:配置IDE工程、代码生成、HAL库相关参数,包括自定义回调函数等
7.IDE project generation:管理适配所选IDE的工程生成相关设置
之后会有其他文章来详细介绍这些功能,本文仅简单介绍。
2.1 引脚配置标签页
相较于旧版本,STM32CubeMX2使用了全新配色方案。引脚状态通过新的颜色标识,具体如下所示:
2.2 时钟配置标签页
点击[clock]按钮,即可打开时钟配置界面。可根据工程需求自定义配置系统时钟与外设时钟。界面以图形化形式展示时钟树,可在其中配置时钟源、预分频器及倍频系数。
STM32CubeMX2新增了一套快捷操作方式。例如,按住鼠标滚轮拖动,即可在时钟树界面内平移视图;按住Ctrl键同时滚动鼠标滚轮,可进行放大/缩小缩放。
点击任意一个时钟模块方框,软件会高亮该时钟所有分支通路,便于清晰查看各外设资源与时钟源之间的关联关系。
2.3 外设配置标签页
点击[Peripherals]按钮,打开侧边配置栏,用于配置工程中所用到的片上外设。该标签页将所有可用外设按类别整理,并支持搜索查找。
外设按功能分组,包含:模拟外设、安全加密、运算单元、系统模块、Cortex内核、通信互联、输入输出、存储器、定时器等类别。
选择任一外设类别,即可展示该类别下所有可用外设列表。
点击具体外设条目,便可进入对应的参数配置界面。
快捷菜单可快速跳转至关键配置项,比如选中外设所用到的GPIO引脚、DMA通道及中断相关设置。
STM32CubeMX2还新增了代码预览(Code Preview)功能,开发者可基于当前配置查看并复制自动生成的代码。
同时支持将预览代码与上一次生成的代码进行对比,无需重新生成整个工程,即可快速查看配置修改带来的代码变化效果。
2.4 中间件与实用工具标签页
点击[Middleware&Utilities]按钮,打开侧边栏,用于管理中间件和工具组件。点击[Add middleware],即可引入FreeRTOS等中间件软件包。同理,可添加各类工具组件,搭建自定义的工具与服务组件集。
点击添加中间件后,会自动弹出对应的配置界面。
启用某一中间件(例如FreeRTOS™)后,会自动新增对应的配置标签页,可在其中选择并开启所需的工作模式。
2.5 器件标签页
点击[Parts]按钮,打开侧边栏,用于管理额外硬件器件。
点击[Add part (s)],可加入独立外设器件,丰富硬件设计资源。
添加器件完成后,会自动生成新的配置标签页,可在其中选择并启用所需的工作模式。
2.6 工程设置与代码生成
完成所有引脚配置后,点击界面右上角的[Project Settings]按钮。滑动至IDE工程生成区域,选择你偏好的集成开发环境或编译工具链,包括IAR、CMake或支持Open-CMSIS的Keil®。
CMake是STM32CubeIDE for Visual Studio Code扩展插件所使用的工程格式。
点击[Generate]按钮即可创建工程文件。您也可以点击左下角的黄色按钮,直接生成代码。
通过[Advanced]按钮,开发者可自定义代码的生成与重新生成规则。
[Global services]选项支持对HAL库进行配置修改,例如更改HAL时基,以及为中断请求(IRQ)添加自定义回调函数。
可针对每个外设单独添加自定义回调函数。
例如在配置UART时,通过快捷菜单快速定位,并勾选启用使用寄存器回调(Use register callback)即可。
总结
本文以STM32C5系列为重点,完整演示了如何使用STM32CubeMX2配置并生成STM32工程。全程引导用户完成核心操作步骤:单片机选型、引脚配置、时钟树配置、外设与中间件管理,以及适配目标开发环境的工程生成。
按照本文流程操作,开发者可快速搭建软硬件基础开发环境,简化复杂功能的开发与集成流程。在此基础上,可根据项目实际需求,开发出可扩展、性能最优的嵌入式应用程序。
