[综合信息] 十分钟搞定VSCode开发N32MCU(使用EIDE插件,支持ARMCC/GCC)

[复制链接]
 楼主| Afanx 发表于 2022-9-11 18:05 | 显示全部楼层 |阅读模式
本帖最后由 Afanx 于 2022-12-23 17:43 编辑

前言:

VSCode作为当前最热门的一款代码编辑器,不仅其编辑功能强大、界面美观,更是其拥有极强的扩展性。对于使用过VSCode的MCU开发者朋友,相信不少喜欢使用VSCode编辑代码,然后使用Keil/IAR进行下载调试。因而不可避免需要频繁切换编辑器与调试工具,为了解决这一繁锁操作(对,程序员就是这么懒),这里给大家介绍一款非常不错的MCU开发插件——EIDE(Embedded IDE),只要配置好环境后,基础功能可以完全取代Keil等IDE工具。


一、准备资料
1、VSCode安装包(官网下载)。
2、Jlink仿真器(硬件)。
3、Jlink添加Nations芯片文件(见附件)。
4、N32MCU开发板。

JLink Add Nations Devices.zip (76.2 KB, 下载次数: 114)

二、安装VSCode以及插件
1、安装VSCode。
2、安装基础插件:

Chinese (Simplified) (简体中文)

C/C++

3、安装开发工具插件:

Embedded IDE

Cortex-Debug




2.1.png

VSCode插件安装方式:
2.2.png

三、配置EIDE环境
1、配置编译工具链路径。
3.1.png

如果已经安装了Keil (5.26以上),可以使用Keil自带的ARMCC工具链,包括ARMCC V5 和 ARMCC V6。

只需要配置选择Keil安装目录下的TOOLS.INI文件即可。选择后重新加载后可以看到相应的工具链路径由×变成了√ 。

3.2.png

如果未安装Keil或想使用GCC工具链,可点击设置GNU Arm Embedded Toolchain安装路径。推荐使用在线安装。


3.3.png

如果你电脑已经安装了GCC工具链,可以选择本地的安装路径,选择带日期版本的文件夹。



3.4.png

2、配置Jlink路径。

如果已经安装了Jlink(推荐6.90a),可以直接配置Jlink的路径。如果没有,也可以通过EIDE在线安装Jlink,点击【安装实用工具】,选择JLink (V6.90)。


3.5.png

选择在线安装后就不需要配置Jlink路径了,系统自动配置完成,下面是配置自己独立安装的Jlink路径。点击【打开插件设置】,找到EIDE.JLink: Install Directory,填入JLink安装路径。


3.6.png

顺便往上找到EIDE.ARM.Option: Axf To Elf,将其勾选上,编译完成后将.axf转换为.elf。此步是为了方便后续调试使用elf文件。


3.7.png
3、将Nations芯片添加到Jlink中。

目前Jlink本身还不支持N32MCU,需要手动添加芯片。在前面准备资料附件中,下载 JLink Add Nations Devices.zip。打开文件如下。


3.8.png

(1)找到Jlink安装目录(如果是EIDE在线安装,路径为C:\Users\<xxx>\.eide\tools\jlink),用记事本打开JLinkDevices.xml,把Nationstech-JLinkDevices.xml文件内容添加进去。注意:开头和结尾的<DataBase>标签不用复制,复制添加中间的<Device>内容。

(2)把【Devices】文件夹里面的【Nationstech】文件夹添加到Jlink目录下的【Devices】文件夹下。

完成以上2步即可添加成功。


至此环境已经搭建完成,是不是很简单

四、测试工程
1、新建项目

这里有2种方式,一是使用在线模板建立工程,二是导入Keil工程。这里使用在线模块建立工程为例。路径不能包含中文!!!


4.1.png

选择MCU。


4.2.png

选择Nations国民技术。


4.3.png

选择MCU系列。


4.4.png

选择N32G45x Demo模板建立工程,该模板内置了ARMCC和GCC工具链的配置,可随意切换。



4.5.png

输入工程名称,确定后选择保存路径。


4.6.png

工程创建完成后,右下角提示“是否立即切换工作区”,点击"Yes" 。之后VSCode会重新加载。


4.7.png

在相应文件夹可以看到工程建立完成。


4.8.png

重新加载的VSCode后,再次点击左侧EIDE图标,可以看到项目自动加载成功。之后也可以通过打开项目的方式,选择xxx.code-workspace,自动加载项目。


4.9.png
2、切换Target(选择模板预设的GCC配置)。

该模板工程,已经配置好了ARMCC工具链设置和GCC工具链设置,默认创建后打开的是ARMCC的Target。如果想要切换到GCC的Target,右键点击项目名称,在弹框最底部选择切换目标。


4.10.png

点击N32G45x_GCC即可。


4.11.png
3、编译下载

工程创建完成后,无需额外配置,可直接使用。鼠标移动到项目名上,右边会出现编译下载图标。


4.12.png

点击构建(编译)。


4.13.png

连接Jlink调试器与开发版,点击下载。


4.14.png

可以看到开发板上的LED (PA8)已成功点亮并闪烁。


4.15.png

4、在线调试

EIDE会自动生成launch.json文件,安装Cortex-Debug后可以直接进行调试。直接按F5,或点击运行和调试,会自动进入调试界面。在此可以单步运行,和查看变量/寄存器等操作。


4.16.png


 楼主| Afanx 发表于 2022-9-11 18:22 | 显示全部楼层
本帖最后由 Afanx 于 2022-9-11 18:24 编辑

推荐一个不错的使用小技巧:

设置EIDE的构建与烧录快捷键,可实现快速编译下载。

比如设置构建为F7,烧录为F8。设置设置F9快速关闭编译信息面板。

4.17.png
xch 发表于 2022-9-11 18:59 来自手机 | 显示全部楼层
thanks
keman11 发表于 2024-1-2 15:20 | 显示全部楼层
Jlink7.8.8已支持N32MCU,如果安装的7.8.8版本,可以省略 “3、将Nations芯片添加到Jlink中。”此步骤。
pattywu 发表于 2024-2-9 16:31 | 显示全部楼层
jlink 不香了, 还是出个 cmsis-dap 版本的吧.
lion187 发表于 2024-8-5 17:13 | 显示全部楼层
pattywu 发表于 2024-2-9 16:31
jlink 不香了, 还是出个 cmsis-dap 版本的吧.

见 VSCode ARM CortexM 开发: https://blog.csdn.net/desert187/article/details/136742807?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22136742807%22%2C%22source%22%3A%22desert187%22%7D
chenqianqian 发表于 2024-8-5 21:46 来自手机 | 显示全部楼层
不错,感谢楼主分享,太实用了。
药无尘 发表于 2024-8-6 11:58 | 显示全部楼层
VSCode的界面比keil舒服太多了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

51

帖子

2

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

13

主题

51

帖子

2

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