尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

GD32F470ZKT6单片机开发板入门学习(一)Keil工程搭建

GD32F470ZKT6单片机开发板入门学习(一)Keil工程搭建
📅 发布时间:2026/7/16 5:52:28

前言

GD32F470ZKT6 是兆易创新(GigaDevice)推出的一款基于 ARM Cortex-M4 内核的高性能微控制器,主频高达 240MHz,内置 1MB Flash 和 256KB SRAM,并集成了丰富的外设资源。本系列教程旨在帮助初学者快速上手 GD32F470ZKT6 开发板,从最基础的开发环境搭建开始,逐步深入掌握其应用开发。

本文作为系列的第一篇,将详细介绍如何在 Keil MDK(Microcontroller Development Kit)环境下搭建 GD32F470ZKT6 的工程。

一、准备工作

1.1 硬件准备

  • GD32F470ZKT6 开发板(或核心板)一块
  • USB 数据线(用于供电和程序下载/调试)
  • 一台 Windows 电脑

1.2 软件准备

  • Keil MDK-ARM:版本建议 V5.30 或以上。可从 ARM 官网或 Keil 官网下载安装。
  • GD32F4xx Device Family Pack (DFP):GD32 的器件支持包。可通过 Keil 的 Pack Installer 在线安装,或从 GigaDevice 官网下载后手动安装。
  • GD32F4xx Firmware Library (固件库):包含芯片外设驱动、示例工程等。从 GigaDevice 官网下载。

1.3 文档支持

  • 《GD32F4xx_用户手册_Rev3.3》:这是 GD32F4xx 系列微控制器的官方核心参考文档。手册详细记录了该系列芯片的完整资源、功能特性、寄存器定义及操作指南,是开发过程中不可或缺的权威资料。主要内容包括: 在开发过程中,遇到任何硬件功能或寄存器配置问题,都应首先查阅此手册获取最准确的技术细节。
    • 芯片概述:介绍 GD32F4xx 系列的产品线、内核特性、性能参数和封装信息。
    • 存储器架构:详细说明 Flash、SRAM、备份寄存器的地址映射和访问方式。
    • 系统与外设:深入讲解时钟系统(RCU)、电源管理、GPIO、中断控制器(NVIC)等所有外设模块的功能、寄存器配置和编程模型。
    • 通信接口:涵盖 USART、I2C、SPI、CAN、USB、以太网等通信协议控制器的使用方法。
    • 模拟功能:包括 ADC、DAC、比较器等模块的配置和校准说明。
    • 定时器与高级控制:详细描述基本定时器、高级定时器、PWM、输入捕获等功能的操作。
    • 附录与电气特性:提供引脚定义、封装尺寸、电气参数、勘误表等实用信息
      • GD32F4xx系列MCU中文用户手册https://download.gigadevice.com/User_Manual/GD32F4xx_%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C_Rev3.3.pdf
  • 《GD32F470xx_Datasheet_Rev2.2》:这是 GD32F470xx 系列芯片的官方数据手册。它提供了该系列芯片的详细电气特性、引脚定义、封装信息、工作条件、直流/交流参数以及订购信息等关键硬件规格。数据手册是进行硬件设计(如原理图绘制、PCB 布局、电源设计、外设选型)时必须参考的核心文档,用于确保芯片在目标应用中的可靠运行。
    • GD32F470xx_Datasheet_Rev2.2.pdfhttps://download.gigadevice.com/Datasheet/GD32F470xx_Datasheet_Rev2.2.pdf

二、安装 GD32 器件支持包

打开 Keil MDK,点击菜单栏Pack Installer图标(或通过Project -> Manage -> Pack Installer打开)。

  1. 在Packs标签页中,搜索 “GigaDevice”。
  2. 找到并展开GigaDevice::GD32F4xx_DFP。
  3. 选择适合你 Keil 版本的最新版本,点击Install进行安装。
  4. 安装完成后,关闭 Pack Installer。

至此,Keil 已能识别并支持 GD32F4xx 系列芯片。

三、创建第一个 Keil 工程

3.1 创建工程目录

1.新建文件夹,命令为1_FD32F470_LED,用来保存新创建的工程,如图所示。

2.在该文件夹下创建6个文件夹,分别命名为:

  • Project:放Keil工程文件,编译文件,烧录文件等。
  • Firmware:放ARM内核文件,标准外设库文件等。
  • Hareware:放开发板的硬件配置文件。
  • App:放应用层文件。
  • User:放main函数,gd32f4xx_it文件,systick文件。
  • Doc:放readme.txt文件,工程说明文件。​​​​​​

3.将GD32F4xx_Firmware_Library_V3.0.0\ GD32F4xx_Firmware_Library\Firmware文件夹下的内容全部拷贝到新建目录的Firmware下,如图所示。

4.将GD32F4xx_Firmware_Library_V3.0.0\GD32F4xx_Firmware_Library\ Template文件夹的除工程文件夹、readme.txt文件不拷贝之外全拷贝到新建的 User 文件夹下,如图所示。

5.在Doc文件夹下新建一个readme.txt文件,如图所示。

3.2 新建Keil工程

1.打开 Keil,点击Project -> New uVision Project...。

2.选择刚才创建文件夹下的Project作为工程目录,并为工程命名为GD32F470_LED,如图所示 。

3.在弹出的Select Device for Target对话框中,在搜索框输入 “GD32F470”,选择GigaDevice -> GD32F470->GD32F470ZK,点击OK。

4.接下来会弹出Manage Run-Time Environment对话框,暂时先点击Cancel(我们后续手动添加文件)。

3.3 创建分组并添加源文件

1.在 Keil 的Project窗口中,右键点击Target 1,选择Manage Project Items...。

2.在Project Targets标签页,可以重命名 Target(例如改为 “GD32F470”)。

3.新建分组,点击新建按钮,然后输入要新建的分组名,如图4-7-2所示。

4.创建User分组之后点击Add Files,找到当前文件夹下的User,双击打开后,将里面的gd32f4xx_it文件、main文件、systick文件选中,点击Add就可以添加文件,如图所示。

5.创建Firmware分组之后点击Add Files,找到当前文件夹下的Firmware/GD32F4xx_standard_

peripheral/Source/目录下,将里面的所有源文件选中,点击Add就可以添加文件,如图所示。

6.新建CMSIS分组,添加startup_gd32f450_470.s启动文件(新建工程的Firmware/CMSIS/GD/GD32F4xx/Source/ARM/),和system_gd32f4xx.c文件(新建工程 的Firmware/CMSIS/GD/GD32F4xx/Source/),注意,添加启动文件需要勾选文件类型为All files(*.),因为启动文件是以.s结尾。如图所示。

7.新建Doc分组,然后添加readme.txt文件(新建工程的Doc/),文件类型要选择 All files,不然会不显示,如图所示。

8.新建Hardware分组,暂时不添加任何文件,在后续编写代码中才添加。

9.新建App分组,暂时不添加任何文件。

全部新建分组完成,如图所示。(可以按照自己的习惯自行调整分组的顺序)

10.新建完成点击ok之后,工程目录如图所示。

11.修改工程代码

打开main.c文件,删除一些不必要的代码,剩余部分如图所示。

打开gd32f4xx_it.c文件,拉到最后面,然后删掉Systick_Handler下面的代码。 剩余部分如图所示。

3.3 添加宏

添加宏是为了去使能这个芯片的头文件,这个宏在GD32f4xx.h中有定义,添加头文件路径是为了使编译器能够去寻找到对应的头文件。

1.点击工具栏的魔术棒图标(Options for Target),打开配置对话框。

2.在C/C++ (AC6)标签页的Define框中填写USE_STDPERIPH_DRIVER,GD32F470。

3.4 配置头文件路径

1.点击工具栏的魔术棒图标(Options for Target),打开配置对话框。

2.在C/C++ (AC6)标签页的Include Paths 框中添加路径: (具体的路径根据实际情况而定)

3.5配置工程

1.勾选使用UseMicroLIB

这是一个Keil自带的简易的库,一般在串口进行重定向的时候使用。 点击Optionsfor target(魔术棒),在target选项卡下,然后勾选UseMicroLIB,如图所示。

2.修改ARMCompiler版本

点击Optionsfor target(魔术棒),在Target选项卡下,修改ARMCompiler为Userdefault compiler version 5,如图所示。

3.勾选生成hex文件

点击Optionsfor target(魔术棒),在Output选项卡下,勾选CreateHEXFile,如图所示。

3.6 配置调试器

在Debug标签页:

  • 选择你使用的调试器(如 ST-Link, J-Link, CMSIS-DAP 等),我这里的开发板使用的是CMSIS-DAP,所以下面以CMSIS-DAP进行操作设置。
  • 点击Optionsfor target(魔术棒),在Dubug选项卡下,选择CMSIS-DAP Debugger,如图所示。
  • 点击Settings,确认 SWD 接口和芯片识别正确。

3.7编译

完成上述操作后,点击编译,如图所示。

编译结果,0个错误,0个警告,生成Hex文件,至此,工程模板创建完成如图所示。

四、常见问题与解决

  • 编译错误 “undefined symbol SystemCoreClock”:检查是否添加了system_gd32f4xx.c文件,并且头文件路径包含正确。
  • 无法识别芯片/下载失败:
    • 确认调试器连接和驱动安装正确。
    • 在 Debug 配置中检查 SWD 时钟频率是否过高,可适当调低(如 1MHz)。
    • 检查开发板供电是否正常。

总结

本文完成了 GD32F470ZKT6 开发板在 Keil MDK 环境下的第一个工程搭建。通过这个过程,你掌握了:

  1. Keil 中安装 GD32 器件支持包。
  2. 创建工程、添加固件库文件、配置头文件路径和调试器。

这是嵌入式开发的第一步。在后续文章中,我们将探索更多外设(如 LED、USART、TIMER、ADC 等)的使用,并介绍更高效的开发方式(如使用 HAL 库或 RTOS)。

祝你学习顺利!

相关新闻

  • 硬件工程师转型软件设计的思维转变与实践指南
  • 泰格豪雅中国官方售后服务中心|服务热线及门店官方地址权威信息通告(2026年7月更新) - 亨得利官方服务中心
  • C++实现HDLC协议栈:从原理到嵌入式工业通信实战

最新新闻

  • 亨得利官方名表服务中心|热线电话与网点地址权威信息声明(2026年7月最新) - 亨得利官方博客
  • 2026年合肥废品回收怎么挑?从铜铁铝回收、不锈钢到电线电缆的5个经验关键点 - 本地品牌推荐
  • 2026鱼缸定做厂家,五大口碑工作室深度解析不花冤枉钱 - myqiye
  • 格拉苏蒂售后保养多少钱?官方报价及保养周期说明权威公示(2026年7月最新) - 亨得利钟表维修中心
  • 亨得利官方钟表服务中心|全部地址与售后热线电话权威信息公示(2026年7月更新) - 亨得利官方
  • 积家中国官方售后服务中心|服务电话与网点地址权威信息公告(2026年7月更新) - 积家官方售后服务中心

日新闻

  • Toon Boom Harmony 高效工作流:从节点视图到镜头标记的实战技巧
  • 真力时售后维修电话,为您提供专业腕表保养与故障修复服务权威公示(2026年7月最新) - 亨得利官方服务中心
  • 【C++】类和对象--构造函数进阶(初始化列表与explicit)

周新闻

  • IX9104 PCIe5.0 高速交换芯片@ACP#完整规格 + 应用场景总结
  • Unity游戏集成Coze智能体:实现NPC智能对话与知识库联动
  • SAP EPIC 建行回单查询:从标准类CL_EPIC_EXAMPLE_CN_CCB_GHTD到Z类的5处关键修改

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号