- 环境依赖:
参考稚晖君的配置CLion用于STM32开发【优雅の嵌入式开发】的第一部分,下载安装必须的工具
注意!!!
由于openOCD主线最新版本还是24年或者25年2月(xpack版本)的并没有完美适配apm32,请使用这个openOCD
1.5. 下载APM32的sdk,并新建环境变量 APM32SDKS,指向你的sdk,例如:

此时这个环境变量就是

复制附件里的Cmake文件放到官方模板的Project目录下新建一个叫cmake的文件夹下面

复制官方模板到随便哪个目录,重命名文件夹名称
使用clion打开你新复制的目录(我这里懒得改名,注意自己实际的文件夹名称和路径)

打开图中所示文件,按需修改红色标记的部分


加载cmake项目

此时你就可以使用clion编写和构建APM32项目了,点击小锤子即可构建如下图所示

下载程序到芯片
首先复制附件压缩包里的两个cfg文件到你的openOCD的share\openocd\scripts\board文件夹下面

然后打开你的clion


根据你的下载器选择以一个,比如stlinkv2就选名字里带stlink的,然后点击使用即可,如果需要修改配置文件就点击复制到项目使用


debug设置,sdk里都会带有svd文件,在clion里选择一下就能用


至此配置完成,因为使用openocd和cmake,这套配置也适用于其它任何现代化ide都可以获得极佳的开发体验,保准如虎添翼
Cmake&openOCD配置.7z CRC32 C8D66529
Cmake&openOCD配置.7z MD5 979FA5BAE7B858C55614F6E11C6807E1
Cmake&openOCD配置.7z SHA-1 FDCB10113B1586085B8B0A663FB4DB034BB1FB9F
Cmake&openOCD配置.7z SHA-256 A7C1EAE8F9CBFE0980AE83DFE257C2C7423E68EE7C86DCD18AC794395373149F
Cmake&openOCD配置.7z SHA-512 206D95A4A4901415F8E20D97A29A8FE945F2D5D95273E1EFE82C517F2BA3C9F7ED6AFC1E5B2C2C6E516C9B2BF9F7D1B50884370A8B46C4AF9EE541B7DC2C6B50
-9. 有个槽不得不吐
003系列的sdk的board.h文件的判断的命名格式是board+xxx
#ifndef __BOARD_H
#define __BOARD_H
#ifdef BOARD_APM32F003_MINI
#include "Board_APM32F003_MINI/inc/Board_APM32F003_MINI.h"
#include "Board_APM32F003_MINI/inc/bsp_delay.h"
#endif
#endif /*__BOARD_H */
到了103就变成 xxx,board前缀就没有了:
#if defined (APM32F103_MINI)
#include "Board_APM32F103_MINI/inc/Board_APM32F103_MINI.h"
#elif defined (APM32F103VCS_MINI)
#include "Board_APM32F103VCS_MINI/inc/Board_APM32F103VCS_MINI.h"
#elif defined (APM32F107_MINI)
#include "Board_APM32F107_MINI/inc/Board_APM32F107_MINI.h"
#else
#error "Please select first the APM32 board to be used (in board.h)"
#endif
这真的让人很迷惑🫠,我花了快10小时好不容易写的cmake,从103换到003测试突然蹦出来个这个,很烦人。
(叠甲:)
请务必注意,本教程和cmake文件未经全面、系统性的测试验证。 由于缺乏完整的硬件环境和详尽的测试用例,我无法也无法完成对所有功能和边缘情况的彻底测试。
因此,强烈建议您在使用本头文件前,仔细审查其内容,并结合您的具体项目需求和硬件平台进行充分的验证和测试。 对于因未经验证而直接使用此文件和教程可能导致的任何问题、故障或损失,本人概不负责。请您自行承担所有风险。
在将此文件集成到您的生产代码或关键应用中之前,进行严格的内部测试是您的责任。