MDK工程转换Vscode+EIDE方法
1、Vscode+EIDE环境搭建方法
请按下方视频完成环境搭建,并编译成功。下载,单步调试如无视频中芯片可暂不执行。
https://www.bilibili.com/video/BV1Zu4y1f72H/?spm_id_from=333.337.search-card.all.click&vd_source=73306704b9ceb89ff1b8290b5392fef2
- MDK工程转换
2.1、STM32F767工程例实例
2.1.1、VScode新建项目
EIDE插件---> 新建项目---> 空项目----> Cortex-M项目---> 输入工程名---> 选择保存位置
2.1.2、STM32CubeMX生成makefie工程
1)、找到之前MDK工程STM32CubeMX文件,复制到vscode工程中。
2)、打开vscode工程中.ioc文件。进行如下操作。
3)、完成后。
4)、将startup_stm32f767xx.s手动移入Src文件夹。
2.1.3、VScode项目配置
1)、打开.code-workspace。
2)、复制.ld文件名称到编译器。
3)、加载项目资源。
EIDE插件---> 项目资源--->普通文件夹--->选中STM32cubeMX生成代码文件夹
4)、配置编译器、下载器。
5)、复制MDK中自己编写文件到VScode工程目录。
6)、打开makefile 、配置项目属性。
7)、配置MDK中自建源码目录。本实例中“USER”为自建目录,包含.c、.h文件。如工程没有此种目录可跳过。
8)、编译,下载。
2.2、HC32F460工程实例
2.2.1、VScode新建项目
EIDE插件---> 新建项目---> 空项目----> Cortex-M项目---> 输入工程名---> 选择保存位置
具体参考2.2.1章节。
2.2.2、官方库移入VScode项目
1)、打开工程文件,创建如下两个文件夹
2)、将用户代码资源(.c)文件放入Core\Src文件夹中,头(.h)文件放入Core\Inc文件夹中,)、并将官方库中GCC目录下的.S文件放入Core文件夹下。
3)、将代码使用的驱动库和官方库GCC文件夹下的cmsis文件夹放入Drivers文件夹下。
4)、将官方库GCC文件夹下的ld文件放入工程目录下,将本例程中的makefile文件粘贴入工程目录下。
5)、将如下文件夹加入项目资源。
6)、根据项目使用的芯片信息,项目资源文件包含目录,项目使用的宏定义,链接文件名称,修改Makefile文件以中相关信息,以及左侧画红框的信息。
7)、编译文件导入,点击下载按钮,下方会出现Jlink.exe文件地址。
8)、找到该文件,按照第二张方法导入芯片支持包。
9)、重新打开VScode选择下载支持包即可。
2.2.3、用户代码移入工程
参考2.1.2章节第七步。
3、关于使用
3.1、 APP工程
3.2、printf重定义
由fputc--->_write
3.3、%f无法打印
如在freertos的任务中,需要手动调大空间
4、异常问题处理
- 编译出的hex以及bin文件为1k,切无法单步调试。
原因startup_stm32f767xx.s文件被VScode工程破坏,使用STM32CubeMX重新生成即可。
2、GCC编译器编译出IAP文件请核对大小。Boot空间过小时容易超出范围。