打印

GD32 系列微控制器入门开发指南

[复制链接]
1236|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 智芯云技术 于 2023-11-10 14:45 编辑

#技术资源# #申请原创#                                       GD32 MCU 开发资料下载
本章介绍GD32 MCU开发资料下载方式,读者可通过以下途径下载
   网盘下载
具体共享网盘链接如下:https://pan.baidu.com/s/1mhQsNpu,该共享网盘包含GD32 MCU开
发所需的用户手册、数据手册、固件库及相关工具等资料,读者可根据分类自主下载,具体资料
介绍如表 1-1
表 1-1
                               GD32 共享文件夹资料介绍
原理图与封装库---------------------GD32 全系列产品封装库文件(AD 版本)
Keil5 缺少的文件------------------ Keil 版本导致,工程编译提示缺少内核文件时使用
应用经验---------------------------- Application Note
固件库 ------------------------------SDK 函数库,软件例程源码及相关固件库使用指南
选型手册 ---------------------------GD32 全系列产品选型手册
开发板 -----------------------------开发板硬件设计参考原理图、PCB 参考设计、软件例程源码与相关指导文档
软件-------------------------------- 开发环境相关补丁、驱动、工具软件(包含 MDK 选型插件、IAR 选型插件、
                                            GDlink 上位机、ISP 工具、DFU 工具、USB 虚拟串口驱动等)
数据手册&编程手册-------------- Datasheet 以及编程手册
GD32 MCU 开发环境搭建
GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL,IAR、
GCC和Eclipse,客户可以根据个人喜好来选择相应的开发环境。
使用 Keil 开发 GD32
目前市面通用的MDK for ARM版本有Keil 4和Keil 5:使用Keil 4建议安装4.74及以上;使用Keil 5
建议安装5.20以上版本(注意:GD32E23x系列必须使用Keil5开发)。
在 Keil4 中添加 GD32 MCU Device
1. 从GD32官网下载相关系列插件。
下面以 GD32F30x 为例,在官网上下载 MDK-ARM_AddOn_GD32F30x_V1.0.0.rar,如图 2-1
GD32F30x 系列 MCU 型号支持 pack 包名称(keil4)所示。
图 2-1 GD32F30x 系列 MCU 型号支持 pack 包名称(keil4)

2. 双击解压安装至Keil 4的目录,一般都会默认选择,如若同时安装了Keil 4和Keil 5才需要手动
选择。
图 2-2 Pack 包安装示意图(keil4)

3. 安装成功后,重新打开Keil 4,则可以在File->Device Database中出现Gigadevice的下拉选项,
点击可以查看到相应的型号。
图 2-3 Pack 包成功安装示意图(keil4)

4. 为了后续debug工作的顺利进行,建议检查一下安装路径下是否有下载算法,可以通过如下
方式查看:打开一个工程,将型号选为GD32F30x的型号,然后Options for Target -> Debug
->Settings -> Flash Download-> Add,如果下拉选项中有GD32F30x的下载算法则完全安装成功。
图 2-4 Flash 算法文件选择示意图(keil4)

2.1.2. 在 Keil 5 中添加 GD32 MCU Device
1. 从GD32官网下载相关系列插件。
下面以GD32F30x为例,在官网上下载MDK-ARM_AddOn_GD32F30x_V1.0.0.rar
图 2-5 GD32 MCU 型号支持 pack 包名称(keil5)

2. 解压并安装至Keil 5的目录,一般都会默认选择。
图 2-6 Pack 包安装示意图(keil5)

3. 安装完后重新打开keil5工程,即可在Device->Database中出现Gigadevice的型号。
图 2-7 Pack 包安装成功示意图(keil5

4. 在Options for Target -> Debug ->Settings ->Flash Download 中添加flash算法,会出现
GD32F30X的算法,即说明安装成功。根据相应的芯片选择合适的算法,即可下载仿真。
图 2-8 Flash 算法文件添加示意图(keil5)

5. 用Keil 5打开Keil 4工程,如果报找不到器件信息等错误,将Keil 4的插件安装在Keil 5的目录
下,具体操作方式参考Keil 4插件相关内容。

                                                                       使用 GD-Link 开发 GD32 GD32部分开发板自带GD-link,可以用电路板上的GD-link调试仿真代码,不带的可外接GD-link模块,具体操作方法如下。1. 第一次使用GD-link插入电脑后,会自动安装驱动。在Options for Target -> Debug 中选择“CMSIS-DAP Debugger”,部分客户反馈找不到这一驱动器选项,那是因为MDK版本过低,只有Keil4.74以上的版本和Keil5才支持CMSIS-DAP Debugger选项。
图 2-9 GD-Link 选择 Debugger 类型



2. 在Options for Target -> Utilities,也要选择“CMSIS-DAP Debugger”。
图 2-10 GD-Link 在 Utilities 中选择 Debugger 类型

3. 在Options for Target -> Debug ->Settings勾选SWJ、Port选择 SW。右框IDcode会出现”0xXBAXXXXX”。
图 2-11 GD-Link 成连接目标板示意图

4. 在Options for Target -> Debug ->Settings -> Flash Download中添加GD32的flash算法。
图 2-12 GD-Link 添加 Flash 算法文件示意图

5. 单击下图的快捷方式“debug”,即可使用GD-Link进行仿真。
图 2-13 GD-Link 仿真示意图



                                        用 J-Link 开发 GD32
使用J-Link来debug GD MCU,具体配置如下:1. 在Options for Target -> Debug中选择“J-LINK/J-Trace Cortex“
图 2-14 J-Link 在 Keil 中选择 Debugger 示意图

2. 在Options for Target -> Debug ->Utilities,也要选择“J-LINK/J-Trace Cortex”。
图 2-15 J-Link 在 Utilities 下选择 Debugger 示意图

3. 在Options for Target -> Debug ->Settings勾选SWJ,Port选择 SW。右框IDcode会出现“0xXBAXXXXX”。
图 2-16 J-Link 成功连接目标板示意图

4. 在Options for Target -> Debug ->Settings -> Flash Download中添加GD32的flash算法.
图 2-17 J-Link 在 Keil 下添加 flash 算法文件示意图

5. 单击下图的快捷方式“debug”,即可使用J-Link进行仿真。
图 2-18 J-Link 成功仿真示意图

                                              使用 ULink2 开发 GD32

使用ULink2来debug GD MCU,具体配置如下:1. 在Options for Target -> Debug中选择“ULINK2/ME Cortex Debugger”
图 2-19 ULink2 在 Keil 中选择 Debugger 示意图

2. 在Options for Target -> Debug ->Settings勾选SWJ,Port选择 SW。右框IDcode会出现“0xXBAXXXXX”。
图 2-20 ULink2 成功连接目标板示意图


3. 在Options for Target -> Debug ->Settings -> Flash Download中添加GD32的flash算法。
图 2-21 ULink2 在 Keil 下添加 flash 算法文件示意图

4. 单击下图的快捷方式“debug”,即可使用ULink2进行仿真。
图 2-22 ULink2 成功仿真示意图

                  MDK 使用常见问题解答

1. Keil4打开Keil5工程如果没有安装Keil 5,也是能够使用Keil 4来编译Keil 5的工程,具体做法就是修改工程的后缀名,将Keil5工程的后缀名xxxx.uvprojx修改为xxxx.uvproj,即可使用Keil 4来查看编译了。
2. Keil5打开Keil4工程如果使用Keil 5打开Keil 4工程,打开时会遇到找不到MCU器件的情况,这种可以直接将Keil4工程的后缀名xxxx.uvproj修改为xxxx.uvprojx,即可正常使用Keil 5来查看编译了。
3. Keil5打开Keil4工程,编译报错
图 2-23 编译错误示意图

错误原因是core_cmInstr.h文件的路径在Keil5和Keil4中不同,可在Option for Target的C/C++中添加core_cmInstr.h的文件路径,如图 2-24文件路径添加示意图所示:
图 2-24 文件路径添加示意图


                                                    使用 IAR 开发 GD32
IAR 版本众多,版本之间的兼容性并不好,如果初次使用建议安装 7.3 以上的版本,安装好 IAR 以后再根据该文档来添加 GD 的器件型号,进行相关的 debug 工作
在 IAR 中添加 GD32 MCU Device
1. 从官网上下载相应的 GD32 系列插件。下面以 GD32F30x 系列为例,下载插件 IAR_GD32F30x_ADDON.1.0.0.exe:
2. 运行 IAR_GD32F30x_ADDON.1.0.0.exe,单击 start 开始安装插件。
图 2-25 IAR 中安装支持 GD32 型号 pack 包示意图

3. 安装成功后单击 Finish,结束插件安装。
图 2-26 IAR 下 pack 包安装示意图


   在 IAR 中编译调试 GD32

在上一小节中我们已经添加了 GD32F30x 系列的插件,这一小节我们介绍应如何使用它。
使用 IAR 编译 GD 的型号,有两个办法,一种是使用现有的工程进行修改,还有就是重新
建立工程,这里就不细说具体工程应该如何建立,GD 的工程建立和别的平台都一致,建立
工程时选择GD 的相应型号。如果没有安装 GD 的插件,可以选择别的 M3 厂家型号。
图 2-27 在 IAR 下选择芯片型号示意图

6.1 以后的 IAR 不需要添加 CMSIS 文件(core_cm4.c 和 core_cm4.h),但是需要勾选 General Options->Library Configuration 的 Use CMSIS,如果软件代码有使用到 printf 函数,还需要修改Library 为 FULL。
图 2-28 在 IAR 下添加 CMSIS 文件示意图

芯片的 Link 文件建立工程时会默认根据型号选定,但是编译前还是要有检查的习惯,检查一下 ICF文件是否有配置,是否正确。
图 2-29 在 IAR 下添加 ICF 文件示意图

配置 Debugger->Setup 选项,新建立的工程默认是 Simulator 模拟,如果需要调试那么需要根据实际情况来选择:
1. 使用 GD-Link 选择 CMSIS DAP(兼容性不好,不建议在 IAR 下使用);
2. 使用 J-Link 选择 J-Link/J-Trace;
3. 使用 ULink2 选择 CMSIS DAP。
图 2-30 在 IAR 下选择 Debugger 示意图

配置 Debugger->Download 选项,新建的工程有可能没有配置 download 选项,如果我们需要调试代码那么务必要勾选 User flash loader 选项,且保证 board file 准确,否则程序无法正常下载至芯片内部。
图 2-31 在 IAR 下配置 flash loader 示意图

如果选择了 Debugger 选项,那么还需要根据 Debugger 选项设定对应的调试选项;如果选择的是 GD 的型号,在 IAR 下面已经固定将所有的调试接口都配置为 SWD 接口,可以忽略该选项配置,直接进行相关的代码 debug 工作。


                                                                                使用 Eclipse 开发 GD32
Eclipse 是一个著名的跨平台自由集成开发环境(IDE),起初主要用于 JAVA 语言开发,目前可通过安装不同的插件支持不同的计算机语言,比如 C/C++、Python 等。若** Eclipse 编译的代码支持 ARM,还需要安装 ARM 交叉编译链插件。
         安装 JDK
Eclipse 是使用 Java 语言开发的,因此在安装 eclipse 之前需要安装 JDK (Java Development Kit ) 在 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads2133151.html 下载 JDK。
图 2-32 JDK 下载

1. 下载安装软件并拷贝到安装目录#cp jdk-8u111-linux-x64.gz ~/JDK#cd ~/JDK
2. 解压压缩软件#gunzip jdk-8u111-linux-x64.gz#tar –xvf jdk-8u111-linux-x64
3. 同样需要设置环境变量#sudo gedit /etc/profileJAVA_HOME=/Home/qltang/JDK/jdk1.8.0_111
PATH=#PATH:#HOME/bin:#JAVA_HOME/bin#source /etc/profile
4. 安装完成后,通过#Java version 进行检查

安装 Eclipse
https://www.eclipse.org/downloags/packages/release/neon/1a/eclipse-ide-cc-developers下载Eclipse
图 2-33 Eclipse 下载

1. 下载安装软件并拷贝到安装目录#cp eclipse-cpp-neon-1a-linux-gtk-x86_64.tar.gz ~/Eclipse#cd ~/Eclipse
2. 解压下载软件#tar -zxf eclipse-cpp-neon-1a-linux-gtk-x86_64.tar.gz
3. 打开 exe 可执行文件,IDE 已安装完成,还需安装其他插件

安装 ARM 交叉编译链
https://launchpad.net/gcc-arm-embedded 下载 ARM 交叉编译链。
图 2-34 ARM 交叉编译链下载

1. 将下载软件拷贝到安装目录下:cp gcc-arm-none-eabi-5_4-2016q3-20160926-linux.tar.bz2 ~/toolchain
2. 在安装目录下解压软件# cd ~/toolchain# tar -xjf gcc-arm-none-eabi-5_4-2016q3-20160926-linux.tar.bz2# cd gcc-arm-none-eabi-5_4-2016q3
3. 打开路径配置文件,并修改 PATH#sudo gedit /etc/profileexport PATH=#PATH:/home/qltang/toolchain/gcc-arm-none-eabi-5_4-2016q3/bin# source /etc/profile4. PATH 修改后,可直接通过 arm-none-eabi-gcc 命令进行调用

测试

在 Linux 命令终端中输入:#arm-none-eabi-gcc –v若弹出图 2-35 ARM 交叉编译链测试窗口,表明交叉编译链安装正常。
图 2-35 ARM 交叉编译链测试


    安装 GUN ARM Eclipse 插件包

可选择在 Eclipse 环境下自动下载安装的方式:
1. 打开 Eclipse,选择 Help > Install New Software

2. 选择 ADD


3. name 填写:GNU ARM Eclipse Plug-ins
4. 下载网址填写:http://gnuarmeclipse.sourceforge.net/updates

5. OK 后,选择需要下载安装的插件,注意需要包含 the GNU ARM C/C++ OpenOCD Debugging 插件,下节将用到

安装 OpenOCD
OpenOCD 是一个开源的插件,可提供通过 JTAG 接口进行在线编程和调试功能,其作用为调试服务器。从 https://github.com/gnuarmeclipse/openocd/releases/tag/gae-0.10.0-20161028 下 载OpenOCD。
图 2-36 安装 OpenOCD

1. 下载安装软件并拷贝到安装目录#cp gnuarmeclipse-openocd-debian64-0.10.0-201610281609-dev.tgz ~/OpenOCD
2. 解压压缩软件# cd ~/OpenOCD# tar xvf gnuarmeclipse-openocd-debian64-0.10.0-201610281609-dev.tgz# cd openocd/0.10.0-201610281609-dev/bincheck version#openocd –version
3. 需要通过以下命令进行安装#sudo apt-get install openocd
Eclipse 的使用
通过Eclipse可实现在Linux平台下工程的新建及编译,以及对GD32 MCU的在线编程及调试
图 2-37 Eclipse 编译

图 2-38 Eclipse 调试






681654dc625b7f70.png (54.5 KB )

681654dc625b7f70.png

56715654dd0a21e052.png (23.38 KB )

56715654dd0a21e052.png

使用特权

评论回复
沙发
智芯云技术|  楼主 | 2023-11-10 14:48 | 只看该作者
更新  keil  IAR   Eclipse  开发GD32

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

125

帖子

7

粉丝