目录
系列文章目录
文章目录
前言
目标
内容
开发流程
需求分析
项目新建
代码编写
GPIO初始化
完整代码
程序编译
程序烧录
烧录扩展(熟悉)
官方烧录器烧录(熟悉)
总结
前言
在本次项目中,我们将学习如何点亮LED1灯并进行闪烁的操作,涉及到了基本的开发流程、程序编译、程序烧录以及GPIO初始化流程。
目标
- 掌握基本开发流程
- 掌握程序编译
- 掌握程序烧录
- 掌握GPIO初始化流程
内容
开发流程
- 项目新建
- 代码编写
- 程序烧录
- 验证结果
需求分析
点亮LED1灯,并且闪烁。
项目新建
📎GD32F407_Template.zip
附件为模板代码,解压后修改项目名称。
进入Project
目录,双击uvprojx
文件,即可打开项目
在这里特别强调:
- 不要把项目放到含有中文的路径下
- 文件路径不能够出现特殊字符,空格也不行
代码编写
GPIO初始化
void GPIO_config(void){// 1. 时钟初始化rcu_periph_clock_enable(RCU_GPIOB);// 2. 配置GPIO 输入输出模式gpio_mode_set(GPIOB, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_2);// 3. 配置GPIO 模式的操作方式gpio_output_options_set(GPIOB, GPIO_OTYPE_PP, GPIO_OSPEED_2MHZ, GPIO_PIN_2);
}
// 设置PB2为高电平
gpio_bit_set(GPIOB, GPIO_PIN_2);
// 设置PB2为低电平
gpio_bit_reset(GPIOB, GPIO_PIN_2);
delay_1ms(1000);
完整代码
#include "gd32f4xx.h"
#include "systick.h"
#include <stdio.h>
/*********************
任务目标:点亮LED1: PB2**********************/void GPIO_config(void) {// 1. 时钟初始化rcu_periph_clock_enable(RCU_GPIOB);// 2. 配置GPIO 输入输出模式gpio_mode_set(GPIOB, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_2);// 3. 配置GPIO 模式的操作方式gpio_output_options_set(GPIOB, GPIO_OTYPE_PP, GPIO_OSPEED_2MHZ, GPIO_PIN_2);
}int main(void) {// 系统滴答定时器初始化systick_config();// IO引脚初始化GPIO_config();while(1) {// 设置PB2为高电平gpio_bit_set(GPIOB, GPIO_PIN_2);// 休眠1000msdelay_1ms(1000);// 设置PB2为低电平gpio_bit_reset(GPIOB, GPIO_PIN_2);// 休眠1000msdelay_1ms(1000);}}
程序编译
在keil的操作栏中,点击保存编译,可以进行程序编译
程序烧录
- 将烧录器的排线接到开发板的烧录口,将USB接到电脑端。
- 配置烧录方式。点击魔法棒,进入debug栏目,如下图所示,配置为
CMSIS-DAP Debuger
- 点击烧录按钮,如下图,进行烧录
- 按下开发板中央的重置按钮,开发板开始工作。
烧录扩展(熟悉)
- 烧录器额外配置
- 查看烧录器连接状态
- 配置烧录后自动重启程序
官方烧录器烧录(熟悉)
GD-Link 适配器(adapter)是一个用于GD32系列MCU的三合一多功能开发工具。
它通过JTAG/SWD接口提供CMSIS-DAP调试器端口。用户可以使用GD-Link 适配器(adapter)进行在线编程或在兼容的IDE(如Keil或IAR)中调试代码。
官网链接:兆易创新GigaDevice-资料下载兆易创新GD32 MCU
软件下载:📎GD_Link_Programmer_v4.6.19.15037.7z
GD_Link_Programmer_xxx.7z
压缩包下载后解压,打开其中的GD-Link Programmer.exe
烧录流程如下:
- 连接设备
首先将GD32设备通过DAP_LINK转接器连接至PC。
然后 [Target] - [Connect]
连接设备。(快捷键为F2
)
链接成功后,右侧会显示MCU相关信息,下侧会显示连接成功的输出日志。
- 打开固件
选择.hex或.bin
文件作为烧录固件:[File] - [Open]
(快捷键为Ctrl + O
)
.hex
通常在工程文件xxx.nvprojx
所在目录的Objects
子目录中。
如果找不到.hex文件,或编译后没有生成,请展开此折叠块进行设置
- 打开
Options for Target...
- 勾选
Create HEX File
- 重新编译工程即可。
- 烧录固件
选择 [Target] - [Program]
进行烧录。(快捷键为F7)
提示Successfully!
即为成功烧录
点击OK
确认,此时按下开发板上的RESET
按钮即可使新固件生效。或通过 [Target] - [Run App]
直接运行新的固件。
总结
通过本次项目,我们成功掌握了基本的开发流程,代码编写、程序编译和烧录的步骤,同时深入了解了GPIO的初始化流程。我们通过点亮LED1灯并进行闪烁的任务,实践了这些知识点,为未来的嵌入式开发工作积累了经验。