PS:本篇为个人学习的记录,一是方便回忆,二是相同时方便给像我一样的小白一点建议。本文默认已安装好STM32Cubemx和VSCode,以及VsCode下的Eide
Cubemx部分
- 选择好需要使用的对应单片机创建工程。
- 在Project Manager选项下 选择Toolchain/IDE下的makefile方式来创建工程。
什么是makefile:Makefile 文件描述了 Linux 系统下 C/C++ 工程的编译规则,它用来自动化编译 C/C++ 项目。一旦写编写好 Makefile 文件,只需要一个 make 命令,整个工程就开始自动编译,不再需要手动执行 GCC 命令。一个中大型 C/C++ 工程的源文件有成百上千个,它们按照功能、模块、类型分别放在不同的目录中,Makefile 文件定义了一系列规则,指明了源文件的编译顺序、依赖关系、是否需要重新编译等。
- 按如图操作。
- 直接点击右上角的代码生成即可。
VsCode部分
- 在Eide下创建一个空项目,选择Cortex-M内核。
- 命名注意一定要和之前创建的Cubemx一致。
- 选择文件的保存位置,选在之前创建的Cubemx工程目录的上一级。比如我此处,Cubemx的工程是创建在STM32中(即工程文件名为STM32),那么创建的文件就应保存在STM32cube这个目录下。
- 创建完后,右下角会弹出文件已存在xxxxx的提示,点击确定即可。
- 将启动文件复制到Core目录下。
- 在创建好的工程下找到Makefile,双击打开。找到这两段。
上边的DEFS部分添加到项目属性下的预处理宏定义下(—D以及斜杠不要);INCULDE下的文件位置添加到包含目录下(注意—ID以及后边的斜杠删去)。
- 接下来就是配置烧录器。本人用的DAPlink,配置成如图方式即可。
使用cmsis-dap-v1.cfg,注意编译后会有错误,需要在一个配置文件中删去一行注释。将报错复制粘贴到网上搜索就有解决办法。
调试
- 下载插件Cortex-Debug。
- 右键STM32,如图一键生成配置。开箱立用。