【GD32F310开发板试用】MAC开发&调试环境搭建

首发极术社区。如对兆易创新GD32F310 MCU感兴趣,欢迎添加微信 aijishu2020 加入GD32技术讨论群。

一、开发环境说明

开发板:GD32F310G-START 2022-1 V1.0
桌面操作系统: macOS Monterey 12.3
开发软件: VSCode 1.66.2 (Universal)
编译工具链: arm-none-eabi-gcc (GNU Arm Embedded Toolchain 10.3-2021.10) 10.3.1 20210824 (release)
下载工具:openocd 0.33.1

二、相关工具安装

1. 编译工具链

编译工具使用 arm-none-eabi-gcc 工具链。
在官方下载:https://developer.arm.com/too…
gcc_pack.png

下载最新版本即可
下载之后直接双击根据提示进行安装即可。
gcc_install.png

安装成功后,关掉所有终端,重新打开,输入/Applications/ARM/bin/arm-none-eabi-gcc --version如果出现版本信息,则安装完成。
gcc_version.png

2. 下载工具

下载工具使用的是pyocd
在终端中输入以下代码安装pyocd:
pip3 install pyocd
或者
pip install -U pyocd
(如果未安装python3的同学请自行安装即可)
安装完毕后检查pyocd版本:
pyocd --version
出现版本好即安装成功。

3. 仿真插件

在VSCode搜索并安装扩展Cortex-Debug
Cortex_Debug.png

三、代码编译

使用附件包进行代码编译
下载附件后解压

1. 代码编译

使用VSCode打开附件包解压的文件夹
在目录下执行make命令即可在build目录下生成可执行文件
program_file.png

执行make clean可清除生成文件

2. 重新生成makefile

附件中包含一个可重新生成makefile文件的python脚本CreateMakefile.py,可方便小伙伴们添加自己代码后,重新生成对应的makefile文件。

四、代码仿真&烧录

使用USB线连接上我们的GD32F310G-START开发板
点击VSCode上的“运行和调试”,再点击开始调试(F5),即可进入调试状态,并运行到main函数
debug.png

之后可进行单步调试。

五、问题处理

1. pyocd运行报错

如果在进入调试时无法进入调试,且报错情况如下图所示
pyocd_err1.png

查看gdb-server中有下图中的报错信息
pyocd_err2.png

其原因为pyocd解析GigaDevice.GD32F3x0_DFP.3.0.0.pack包内容时路径缺少包名称
解决方案为:
在/opt/homebrew/lib/python3.9/site-packages/pyocd/target/pack路径下,找到cmsis_pack.py文件
做如下修改
cmsis_charge1.png

在_load_flash_algo(self, filename: str)函数中添加如上图红框中的代码
pack_name = self.pack.filename.split(‘/’)[-1]
pack_name = pack_name.replace(‘.pack’, ‘’) + ‘/’
filename = pack_name + filename
cmsis_charge2.png

在svd(self)函数中添加如上图红框中的代码
pack_name = self.pack.filename.split(‘/’)[-1]
pack_name = pack_name.replace(‘.pack’, ‘’) + ‘/’
svdPath = pack_name + svdPath
保存文件后,重新点击调试即可正常进行。

文件下载
GD32F310G_START.tar.bz2

作者:LJL

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值