GD32F30x 系列单片机 Keil MDK5 工程从零搭建教程
1、下载官方 SDK
官方 SDK:GD32F3 系列下载页面
GD32F30x 工程搭建主要有两种方式:
- 使用官方工程:如果不想花费过多时间配置开发环境,可以直接使用官方提供的完整工程框架,快速进入应用开发。
- 手动搭建工程:如果想深入了解 GD32 工程结构、启动流程及底层配置,也可以参考下面的文档,从零开始,一步一步搭建属于自己的工程。
2、创建目录结构
GD32F303CCT6_Project/ │ ├── application/ // 应用程序 │ └── main.c │ ├── cmsis/ // 内核和芯片底层 │ ├── include/ │ ├── source/ │ └── startup/ │ ├── doc/ // 技术文档 │ ├── firmware/ // GD32 标准外设库 │ ├── inc/ │ └── src/ │ ├── project/ // Keil 工程 │ └── user/ // 用户配置和中断2.1、芯片类型说明
| 产品类型 | 宏定义 | 说明 |
|---|---|---|
| 高密度产品(HD) | GD32F30X_HD | FLASH 容量为 256KB~512KB 的相应 GD32F30x |
| 超高密度产品(XD) | GD32F30X_XD | FLASH 容量大于 512KB 的相应 GD32F303xx |
| 互联型产品(CL) | GD32F30X_CL | GD32F305xx 和 GD32F307xx 微控制器 |
2.2、移植 CMSIS 内核头文件
官方目录:GD32F30x_Firmware_Library_V3.0.3\Firmware\CMSIS\core_cm\*.h(4 个文件)
项目目录:cmsis/include/
2.3、移植 GD32 芯片头文件
官方目录:GD32F30x_Firmware_Library_V3.0.3\Firmware\CMSIS\GD\GD32F30x\Include\
项目目录:cmsis/include/
官方目录:GD32F30x_Firmware_Library_V3.0.3\Template\gd32f30x_libopt.h
项目目录:cmsis/include/
2.4、移植系统初始化文件
官方目录:GD32F30x_Firmware_Library_V3.0.3\Firmware\CMSIS\GD\GD32F30x\Source\
项目目录:cmsis/source/
2.5、移植启动文件
官方目录:GD32F30x_Firmware_Library_V3.0.3\Firmware\CMSIS\GD\GD32F30x\Source\ARM\
项目目录:cmsis/startup/
2.6、移植标准外设库头文件
官方目录:GD32F30x_Firmware_Library_V3.0.3\Firmware\GD32F30x_standard_peripheral\Include\
项目目录:firmware/inc/
2.7、移植标准外设库源文件
官方目录:GD32F30x_Firmware_Library_V3.0.3\Firmware\GD32F30x_standard_peripheral\Source\
项目目录:firmware/src/
3、Keil MDK5 配置
3.1、创建工程
打开 Keil MDK5,新建工程,并将工程文件保存至项目的project/目录。
3.2、配置运行环境
创建工程后,进入运行环境配置界面(Manage Run-Time Environment)。此处暂时无需修改,直接点击OK即可。
3.3、选择芯片型号
根据实际使用的芯片型号,选择对应的工程目标(Target)。
3.4、添加工程文件
在Manage Project Items窗口中创建工程分组,并将源文件添加至对应分组。
- 只需添加
.c源文件和.s启动汇编文件,头文件无需单独添加。 - 完成配置后,Keil 工程的文件分组及目录结构如下图所示。
- 在
application/目录下创建main.c文件,编写主程序入口:
#include"gd32f30x.h"#include<stdio.h>intmain(void){while(1){}}3.5、配置对应的启动文件
根据芯片类型选择对应的启动文件,确保每个 Target 只有一个启动文件参与编译。
| 芯片类型 | 启动文件 |
|---|---|
GD32F30X_HD | startup_gd32f30x_hd.s |
GD32F30X_XD | startup_gd32f30x_xd.s |
GD32F30X_CL | startup_gd32f30x_cl.s |
3.6、配置头文件包含路径
在Options for Target → C/C++ → Include Paths中添加以下路径:
..\cmsis\include ..\cmsis\startup ..\firmware\inc3.7、配置预处理宏
在 Keil 工程中,打开Options for Target → C/C++ → Define,添加以下宏定义:
USE_STDPERIPH_DRIVER,GD32F30X_HD宏定义说明:
USE_STDPERIPH_DRIVER:启用 GD32 标准外设库。GD32F30X_HD:指定当前芯片属于高密度系列。
3.8、编译完成
文章到这里就告一段落,希望这些步骤能帮你更快搭建好 GD32 工程框架,也欢迎在评论区交流你的心得与疑问。