GD32单片机开发--点亮第一盏灯

知不足而奋进 望远山而前行


目录

系列文章目录

文章目录

前言

目标

内容

开发流程

需求分析

项目新建

代码编写

GPIO初始化

完整代码

程序编译

程序烧录

烧录扩展(熟悉)

官方烧录器烧录(熟悉)

总结


前言

在本次项目中,我们将学习如何点亮LED1灯并进行闪烁的操作,涉及到了基本的开发流程、程序编译、程序烧录以及GPIO初始化流程。


目标

  1. 掌握基本开发流程
  2. 掌握程序编译
  3. 掌握程序烧录
  4. 掌握GPIO初始化流程

内容

开发流程

  1. 项目新建
  2. 代码编写
  3. 程序烧录
  4. 验证结果

需求分析

点亮LED1灯,并且闪烁。

项目新建

📎GD32F407_Template.zip

附件为模板代码,解压后修改项目名称。

进入Project目录,双击uvprojx文件,即可打开项目

在这里特别强调

  1. 不要把项目放到含有中文的路径
  2. 文件路径不能够出现特殊字符,空格也不行

代码编写

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);
    // 休眠1000ms
    delay_1ms(1000);
    // 设置PB2为低电平
    gpio_bit_reset(GPIOB, GPIO_PIN_2);
    // 休眠1000ms
    delay_1ms(1000);
  }

}

程序编译

在keil的操作栏中,点击保存编译,可以进行程序编译

程序烧录

  1. 将烧录器的排线接到开发板的烧录口,将USB接到电脑端。
  2. 配置烧录方式。点击魔法棒,进入debug栏目,如下图所示,配置为CMSIS-DAP Debuger

  1. 点击烧录按钮,如下图,进行烧录

  1. 按下开发板中央的重置按钮,开发板开始工作。

烧录扩展(熟悉)

  1. 烧录器额外配置

  1. 查看烧录器连接状态

  1. 配置烧录后自动重启程序

官方烧录器烧录(熟悉)

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

烧录流程如下:

  1. 连接设备

首先将GD32设备通过DAP_LINK转接器连接至PC。

然后 [Target] - [Connect] 连接设备。(快捷键为F2

链接成功后,右侧会显示MCU相关信息,下侧会显示连接成功的输出日志。

  1. 打开固件

选择.hex或.bin文件作为烧录固件:[File] - [Open] (快捷键为Ctrl + O

.hex通常在工程文件xxx.nvprojx所在目录的Objects子目录中。

如果找不到.hex文件,或编译后没有生成,请展开此折叠块进行设置

  • 打开Options for Target...

  • 勾选Create HEX File

  • 重新编译工程即可。
  1. 烧录固件

选择 [Target] - [Program] 进行烧录。(快捷键为F7)

提示Successfully!即为成功烧录

点击OK确认,此时按下开发板上的RESET按钮即可使新固件生效。或通过 [Target] - [Run App] 直接运行新的固件。


总结

通过本次项目,我们成功掌握了基本的开发流程,代码编写、程序编译和烧录的步骤,同时深入了解了GPIO的初始化流程。我们通过点亮LED1灯并进行闪烁的任务,实践了这些知识点,为未来的嵌入式开发工作积累了经验。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薛慕昭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值