前言
本期我们介绍一下GD32F4标准外设库,看一看如何从0搭建一个项目模版。首先我们先来了解一下GD32,GD32是一款由中国芯片制造商GigaDevice推出的32位ARM Cortex-M微控制器系列。它们与STMicroelectronics的STM32系列微控制器非常相似,使用相同的ARM Cortex-M内核,提供广泛的外设和功能,包括各种通信接口、模拟输入输出、数字输入输出、定时器、中断控制器等等。开发板我们用的是立创·梁山派 GD32F470ZGT6开发板。
https://item.szlcsc.com/5810323.html立创·梁山派 GD32F470ZGT6开发板:https://item.szlcsc.com/5810323.html
标准外设库获取
标准固件库获取我们可以从官网进行下载。
下载链接:兆易创新GigaDevice-资料下载兆易创新GD32 MCU
目录介绍
打开下载的 GD32F4xx 标准固件库,里面的目录如图:
- Examples:此文件夹包含的是官方编写的示例代码,涉及芯片的大部分功能。
- Firmware:此文件夹里面有 3 个文件夹,包含 CMSIS,标准外设库和 USB 库,存放官方封装的一些库函数,方便用户开发使用。
- Template:此文件夹是工程模板文件夹,里面包含 IAR 和 Keil 的工程示例。
- Utilities:此文件夹包含一些第三方组件和 GD32 配套的开发板文件。
Firmware
- CMSIS:微控制器软件接口标准(CMSIS:Cortex Microcontroller Software Interface Standard) 是Cortex-M 处理器系列的与供应商无关的硬件抽象层。规定了处理器内核与外设的接口,统一了内核访问外设寄存器的方法。
- GD32F4xx_standard_peripheral: 从名称也可以看出,这个是 GD32F4 系列的标准外设库,存放一些封装了寄存器的库函数,我们后面编程也是依赖于这个库进行开发。
- GD32F4xx_usb_library: 这个是 GD32F4 系列的 USB 库函数,可以帮助我们开发一些关于 USB 的应用,如鼠标,键盘,CDC 串口,模拟 U 盘等等。
CMSIS
内部主要是汇编代码,这个是直接和芯片进行交互的,每种不同的芯片需要配套不同的cmsis接口实现。
GD32F4xx_standard_peripheral
这个里面都是一些外设库文件,包含 GD32F4 芯片的绝大部分功能,包含 ADC,CAN,SDIO,SPI 等。
这个库是嫁接在cmsis的基础上的,F4系列不同的芯片可用公用这一套实现。
项目模版搭建
前期准备
- 已经安装好 Keil 软件
- 已经安装好 GD32F4xx 的 Pack 包
- 已经下载好 GD32F4xx 标准固件库
工程文件目录创建
- Project:放工程文件,编译文件等。
- Firmware:放 ARM 内核文件,标准外设库文件等。
- Hardware:放开发板的硬件驱动文件。
- User&