一、GD32 Embedded
GD32 Embedded Builder
是一个集成开发环境(IDE),它是基于Eclipse平台且专门为GigaDevice公司的GD32微控制器系列提供的开发和调试工具。GD32微控制器是一系列32位通用微控制器,兼容多种ARM Cortex核心,如Cortex-M3、Cortex-M4等,由GigaDevice公司设计并生产。
GD32 Embedded Builder
结合了Eclipse的功能丰富性和扩展性与GD32微控制器的硬件特性,提供了一个便利的开发环境,使得开发者可以在一个集成的平台上编写代码、进行编译、调试和程序下载。通常,这个环境会包括相应的编译器和链接器、调试器接口以及针对GD32系列特有的外设和库函数的支持。
1、安装java-jdk
GD32 Embedded Builder是基于Java JDK运行的,需要配置Java-JDK的环境。
下载链接:https://www.oracle.com/java/technologies/downloads/#java16
2、运行GD32 Embedded Builder
GD32 Embedded Builder无需安装,将资料下的安装包 GD32EmbeddedBuilder_v1.4.12.28625
放到英文路径下解压。在解压的文件夹里,找到 GD32EmbeddedBuilder.exe
双击即可运行。
3、工程创建
关闭 Welcome界面,即可看到创建工程成功。
4、编译验证
在main.c中编辑以下代码实现点亮LED灯:
#include "gd32vw55x.h"
#include "systick.h"
#include <stdio.h>
int main(void)
{
// 初始化系统滴答定时器
systick_config();
// 开启GPIOC时钟
RCU_AHB1EN |= (1 << 2);
// 配置引脚为输出模式
GPIO_CTL(GPIOC) &= ~(0x03 << (26));
GPIO_CTL(GPIOC) |= (0x01 << (26));
// 配置引脚为浮空模式,无上拉下拉
GPIO_PUD(GPIOC) &= ~(0x03 << (2*13));
GPIO_PUD(GPIOC) |= (0x00 << (2*13));
// 配置为推挽输出
GPIO_OMODE(GPIOC) &= ~(0x01 << 13);
// 配置引脚速度
GPIO_OSPD(GPIOC) &= ~(0x03 << (2 * 13));
GPIO_OSPD(GPIOC) |= (0x02 << (2 * 13));
//输出高电平,点亮LED
GPIO_BOP(GPIOC) |= (0x01 << 13);
while(1)
{
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
右键工程名,编译该工程。
编译成功显示如下
二、Nuclei Studio
GD32VW553是GD与芯来科技联合开发的,GD32VW553有多种编译环境,基于eclipse的IDE:Nuclei Studio IDE。在使用eclipse之前需要安装JDK。
1、安装java-jdk
下载链接:https://www.oracle.com/java/technologies/downloads/#java16
2、安装Nuclei Studio
下载链接:https://www.nucleisys.com/download.php
下载后直接解压,就可以用了。
3、工程创建
打开NucleiStudio
。在 File->New
下可选择 新建C/C++ Project
。
选择 C Managed Build。
输入 Project name,配置工程类型,为了方便建议将工程放到 工作区 目录下。编译链选择为 RISC V Cross GCC。
设置配置,选择默认即可。
配置交叉工具链。
完成Project的建立。
Refresh方式建立文件夹及添加文件
可以将需要导入的文件连同文件内直接放在与建立的.cproject同级的文件夹内。
在Eclipse IDE中,右击工程名,并选择Refresh,即可将文件夹及文件直接导入工程。
导入后。
注意
“ Refresh ”
方式建立的文件及文件夹,均是真实存在的,并且一旦在Eclipse IDE中删除其 中的某个文件,该文件就会直接从磁盘中删除了。
工程配置
右击工程,选择工程属性Properties选项打开。
Target Processor 配置
在“C/C++ Build->Settings->Tool Settings->Target Processor”下配置如下:
根据目标芯片的内核,选择Target。在本例中,选择RV32I。
Optimization 配置
在“C/C++ Build->Settings->Tool Settings->Optimization”选项中配置优化等级,可选-O0、-O1、-O2、-O3、-Os、-Ofast、-Og。
GNU RISC-V Cross Assembler配置
在“C/C++ Build->Settings->Tool Settings->GNU RISC-V Cross Assembler”选项中配置Cross汇编编译选项。
在”includes->Include paths”选项中添加工程所需的Assembler头文件路径。
在本例中添加:"E:\TEST\NucleiStudio_workspace\key\Firmware\RISCV\drivers"
GNU RISC-V Cross C Compiler配置
在“C/C++ Build->Settings->Tool Settings->GNU RISC-V Cross C Compiler”选项中配置CrossC编译选项。
本例中,在‘’Preprocessor->Defined symbols”选项中添加USE_STDPERIPH_DRIVER预编译宏。
在”includes->Include paths”选项中添加工程所需的头文件路径。
注意
本例中添加的头文件路径为绝对路径。
GNU RISC-V Cross C Linker配置
在“C/C++ Build->Settings->Tool Settings->GNU RISC-V Cross C Linker”配置Cross C链接选项。
在“General ->Script files”选项中添加.
ld脚本负责告诉链接器,编译完成的可执行文件如何配置内存。使用的ld脚本应该符合目标芯片的FLASH及SRAM大小及客户所需的内存配置。
注意
本例中添加的ld文件路径为绝对路径.
在Miscellaneous选项中,勾选Use newlib-nano及Do not use syscalls。(可优化代码大小)
修改 Toolchains
OpenOCD仿真配置
在仿真设置选项中,选择 gdlink_gd32vw55x.cfg
更改字体大小
在最上面的工具栏里找到windows下的perferences
在弹出窗口中找到依次点击General(常规)——Apprearance(外观)——Colors and Fonts(颜色和字体),打开颜色和字体的设置窗口。
在右侧的字体编辑菜单中找到第一项Basic(基本)——Text Font(文字字体)——Edit(编辑),点击编辑按钮打开字体编辑菜单。
然后对字体和大小进行修改,修改完成保存退出即可。