[信息] 实战经验 | 使用STM32CubeIDE开发上位机工具

[复制链接]
611|2
STM新闻官 发表于 2025-11-1 15:10 | 显示全部楼层 |阅读模式
本帖最后由 STM新闻官 于 2025-11-1 15:11 编辑

01前言
上位机工具,是STM32开发人员特别是算法开发人员需要面对的一个需求,一般需要专门的桌面环境和语言。MCU开发人员使用最多的环境,是MCU的环境,使用最多的语言是C语言。本文提供一个例子hello world例程,使STM32开发人员能够在熟悉的STM32CubeIDE环境通过熟悉的C语言进行小工具的开发,为MCU各种算法在PC上的验证提供一个基础。

02关于python
如果读者熟悉python,或者了解其他的语言和环境,在做工具时可以根据需要自行选择,本文并没有任何偏好。本文使用C语言,主要是从实际出发,很多时候你运行在STM32上的算法,是C代码,例如X-Cube-AI所生成的MCU代码,那么直接使用C语言进行验证,只是使用不同的编译环境,更加贴近最后的MCU算法代码运行结果。

03需要安装的工具
若想STM32CubeIDE支持上位机开发,除了安装STM32CubeIDE之外,需要一个支持windows的gcc编译器。这里安装的是mingw64。同时需要将mingw64的bin目录加入到系统路径中去。例如:
308996905b1b491971.png


如果安装成功,在windows的命令行窗口输入gcc-v,可以得到如下输出:
462436905b1c52641b.png
Gcc 13.2.0是一个比较新的版本,你可以根据你的需要使用其他的mingw64 gcc。这里没有特别的推荐,因为你只是开发一个辅助STM32开发的工具,用来帮助你验证算法。

04STM32CubeIDE的配置
一旦你安装了gcc并设置了路径,那么就可以直接使用STM32CubeIDE来开发windows工具了。选择【file】->【new】->【C/C++Project】
105096905b1e45ca19.png
然后为了符合MCU习惯,可简单的选择【C managed Build】,然后点击next。
430276905b1f58db59.png
最后在以下画面中选择【Hello World ANSI C Project】,然后选中【MinGW GCC】,同时输入【Project name】为hello,最后点击【Finish】,完成所有配置。
98916905b2085b702.png
最终的工程结构如下:
894726905b219dc980.png
所生成的hello代码如下:
224396905b229c79be.png
05编译
直接使用MCU开发最熟悉的菜单【Build All】或者在存在多个工程只编译选中的项目的【Build Project】。
270146905b23bf0985.png
可以看到编译成功的信息如下:
617456905b24fe88ea.png
如果要修改编译配置,使用的菜单和以前一样,依然是【Project】->【Properties】。
897906905b2644b5d2.png
然后选择【C/C++Build】->【Settings】。只不过工具链是通用的gcc工具链。
268886905b2851468c.png
06调试
调试依然选择【Debug configuration】,只不过要选择【C/C++Application】,如下:
765226905b299e3aa2.png
进行调试配置时,依然可以双击菜单,这里的菜单是【C/C++Application】,可以得到。
820966905b2a7c4262.png
直接点击【Debug】就可以了。其他的调试操作和使用STM32CubeIDE进行STM32开发是一样的,这里就不再重复。当然有些菜单本身是为STM32 MCU所特别添加的,那么在调试界面就无法使用。

07小结
你可以看到在使用STM32CubeIDE时,无需掌握Makefile的复杂写法,而且可以重用许多MCU的经验来开发验证算法的桌面小工具。不过这里的例子几乎没有写一行代码,实际中你需要将你的算法代码象MCU开发一样加入到工程里。
 楼主| STM新闻官 发表于 2025-11-1 15:12 | 显示全部楼层
 楼主| STM新闻官 发表于 2025-11-1 15:12 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:意法半导体(中国)投资有限公司
简介:您的嵌入式应用将得益于意法半导体领先的产品架构、技术、多源产地和全方位支持。意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器。

1428

主题

1758

帖子

25

粉丝
快速回复 在线客服 返回列表 返回顶部