STM32:CubeMX+IAR环境搭建全流程

张开发
2026/4/15 22:56:15 15 分钟阅读

分享文章

STM32:CubeMX+IAR环境搭建全流程
一前期准备硬件STM32F103C8T6最小系统板、ST-LINK/V2下载器IDE:STM32CubeMX v6.12.0、IAR for ARM v9.30.1固件包STM32Cube MCU Package for STM32F1 Series v1.8.0补充固件包可在CubeMX中直接下载也可提前从ST官网下载下载后放在STM32Cubed的Repository文件下CubeMX会自动识别。附STM32 Cube 固件包下载地址https://www.st.com.cn/zh/embedded-software/stm32cube-mcu-mpu-packages/products.html二CubeMX工程创建与配置1.新建工程打开STM32CubeMX点击首页Start My project from MCU从MCU新建工程).在MCU搜索框中输入STM32F103C8T6选中对应芯片.2.下载接口及时钟配置开启SWD调试模式晶振配置外部8Mhz高速时钟时钟配置其中除APB1时钟线为36Mhz其余均为72Mhz(APB1最大36M).3.工程设置与代码生成对接IAR设置PC13为推挽输出设置工程名、输出路径和IAR工具链IAR新版本可以覆盖老版本因此这里选择无误。工程输出配置其中copy all used libraries into the projectfolder复制所有库文件到生成的工程目录中Copy only the necessary library files只复制必要的库文件。Add necessary library files as reference in the toolchain projectconfiguration file在工具链项目配置文件中添加必要的库文件作为参考。Generate peripheral initialization as a pair of’.c/.h’ files perperipheral每个外设生成独立的.C .H文件方便独立管理。Backup previously generated files whenre-generating在重新生成时备份以前生成的文件。keep user code when re-generating重新生成代码时保留用户代码。delete previously generated files when not re-generated删除以前生成但现在没有选择生成的文件。所有选项都配置完成后点击右上角的GENERATE CODE生成代码点击打开工程首次打开时会弹出提示工程是CubeMX生成的旧版本格式IAR版本较高直接点击Yes完成工程格式转换转换后会自动备份原文件不影响使用。三IAR代码编写在IAR左侧Project窗口中展开Core→Src双击打开main.c文件在while(1)循环中添加两行核心代码翻转LED电平延时完整代码如下HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_13); // 翻转PC13电平LED亮/灭切换 HAL_Delay(500); // 延时500ms控制闪烁频率如图HAL库函数说明HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_13)翻转GPIOC端口的13号引脚电平实现LED亮灭切换HAL_Delay(500)延时500毫秒参数单位为ms可修改参数调整闪烁频率如1000表示1秒闪烁一次四编译下载工程如果没有配置下载器的需要配置下下载环境详情可见我另一篇文章https://blog.csdn.net/weixin_62938013/article/details/159986094?fromshareblogdetailsharetypeblogdetailsharerId159986094sharereferPCsharesourceweixin_62938013sharefromfrom_link点击F7编译工程后点击F5下载工程按一下开发板上的复位按钮可以看到程序已经在跑了。五IAR IDE常用快捷键功能设置这里以将F5设置为只下载不调试 F6只调试不下载为例器其它可按需自行定义。1.点击IAR顶端的Tools选择Options按图示即可完成快捷键配置。六IAR 9.30.1痛点STLINK下载后需手动复位编译成功后需要将程序下载到STM32芯片中核心问题的是下载后需手动按复位键才能运行尝试了多种办法一直不成功如果有知道如何解决的烦请评论区指教。七写在后面本博客仅记录自己的学习进程无任何商业用途基于论坛上已经存在的内容结合自己实操过程完成了此博客自己也做了一些细节验证在此记录下来作为学习沉淀。如有侵权联系速删。

更多文章