【萤火工场GD32VW553-IOT V2】介绍、环境搭建、工程测试
介绍了萤火工场 GD32VW553-IOT V2 开发板硬件资源、开发环境搭建流程、固件烧录、工程测试等。
兆易创新GD开发板,GD32VW553,RISC-V内核的32位MCU的开源硬件。支持2.4GHz Wi-Fi 6及BLE5.2无线连接标准、WiFi蓝牙物联网lOT设备、智能家居。
介绍
中电港萤火工场推出基于兆易创新(GigaDevice) GD32VW553 一款 RISC-V内核的 32位 MCU的开源硬件板 GD32VW553-IOT。
该板集成了主控芯片卓越的无线连接能力 、 强大的性能与能效比以及丰富的外设接口,可享受到开源社区带来的丰富资源和便利,极大地方便了开发者的快速部署和应用创新 。
主控
GD32VW553HMQ7

GD32VW553系列芯片是以RISC-V为内核的32位微控制器(MCU),包含了Wi-Fi4/ Wi-Fi6 及 BLE5.3 连接技术。GD32VW553 Wi-Fi+BLE SDK 集成 Wi-Fi 驱动、BLE 驱动、LwIP TCP/IP协议栈、MbedTLS等组件,可使开发者基于GD32VW553快速开发物联网应用程序。
系统资源

详见:AN158 GD32VW553 Wi-Fi 开发指南
GD32VW553 系列芯片包含了 Wi-Fi4/ Wi-Fi6 及 BLE5.3 连接技术。
GD32VW553 Wi-Fi+BLE SDK 集成 Wi-Fi 驱动、BLE 驱动、LwIP TCP/IP协议栈、MbedTLS等组件,可使开发者基于GD32VW553快速开发物联网应用程序。
开发板
Top view

Bottom view

引脚分布

资源特点

原理图
MCU

USB

Boot

Button

若采用 SWD 调试或烧录固件,则需引出触点或使用专业工具。
启动模式
若采用串口烧录固件,需注意 Bootloader 配置,根据启动模式表可知,上电后要执行引导装载程序,要求 Boot0 置高电平,Boot1 置低电平;

根据 GD32VW553HMQ7 数据手册 中的引脚复用表可知,串口 USART0 对应 PB15 和 PA8 引脚,分别作为 TX 和 RX 端,已连接板载 CH340N 串口芯片,可直接使用 Type-C 数据线通信。
芯片内嵌的引导装载程序位于系统存储器中,用来对片上闪存的主存进行重新编程 。 该引导装载程序可通过以下串行接口工作:USART0: PB15 -- PA8 UART1:PA4 -- PA5UART2:PA6 -- PA7
环境搭建
介绍了 GD32 Embedded Builder 开发环境的搭建流程。
准备工作
下载并安装 IDE 软件 GD32 Embedded Builder ;
下载 GD32VW55x Wi-Fi&BLE SDK 开发套件;
下载工具链 nuclei_riscv_newlibc_prebuilt_win32_2022.04 ;
将下载下来的压缩包解压至 EmbeddedBuilder 的安装目录 ...\EmbeddedBuilder_v1.4.7.26843\Tools 路径即可。
开始
介绍软件开发环境的部署,以及固件的编译和生成。
1.启动 IDE
workspace 设置为 SDK 所在文件夹,即 GD32VW55x_RELEASE_V1.0.2
2.导入 MBL 工程
File - Open Projects from file System
选择路径 GD32VW55x_RELEASE_V1.0.2\MBL\project\eclipse
3.导入 MSDK 工程
File - Open Projects from file System,
路径选择 GD32VW55x_RELEASE_V1.0.2\MSDK\projects\eclipse\msdk
4.配置工具链
右键 MBL 工程 - properties - C/C++ Build - Settings,选项卡点击 toolchain settings
路径为 .\Tools\nuclei_riscv_newlibc_prebuilt_win32_2022.04\gcc\bin

5.构建工程
右键 MBL 文件夹,选择 Build Project;

右键 MSDK 文件夹,选择 Build Project;

- MSDK 编译完成后,会生成 image-ota.bin 和 image-all.bin,位于 GD32VW55x_RELEASE_V1.0.2\scripts\images 文件夹内;
- 生成 gd32vw553_led.bin 文件,位于 GD RISC-V MCU Debug 文件夹内;
参考:GD32VW55x_快速开发指南 .
工程测试
- 运行 Embedded Builder 软件,File - New - Project ... ;
- 选择 C/C++ - C Project - 点击 Next ;
- 设置工程名称、工程路径,目标设备选择 GD32VW553HMQ7 ,点击 Finished 完成工程创建。
硬件连接
| GD32VW553 | RGB LED | Readme |
|---|---|---|
| PA3 | R | Red pin |
| PA4 | G | Green pin |
| PA5 | B | Blue pin |
| GND | GND | Ground |
工程代码
打开 ../src/main.c 文件,添加如下代码
#include "gd32vw55x.h"
#include "systick.h"
#include <stdio.h>
#include "main.h"
void led_spark(void)
{
static __IO uint32_t timingdelaylocal = 0U;
if(timingdelaylocal) {
if(timingdelaylocal < 500U) {
} else {
}
timingdelaylocal--;
} else {
timingdelaylocal = 1000U;
}
}
int main(void)
{
systick_config();
/* enable the LED clock */
rcu_periph_clock_enable(RCU_GPIOA);
/* configure LED GPIO port */
gpio_mode_set(GPIOA, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_3);
gpio_bit_reset(GPIOA, GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_3);
while(1) {
/* turn on PA3, turn off PA4 and PA5 */
gpio_bit_set(GPIOA, GPIO_PIN_3);
gpio_bit_reset(GPIOA, GPIO_PIN_4);
gpio_bit_reset(GPIOA, GPIO_PIN_5);
delay_1ms(500);
/* turn on PA4, turn off PA3 and PA5 */
gpio_bit_set(GPIOA, GPIO_PIN_4);
gpio_bit_reset(GPIOA, GPIO_PIN_3);
gpio_bit_reset(GPIOA, GPIO_PIN_5);
delay_1ms(500);
/* turn on PA5, turn off PA3 and PA4 */
gpio_bit_set(GPIOA, GPIO_PIN_5);
gpio_bit_reset(GPIOA, GPIO_PIN_3);
gpio_bit_reset(GPIOA, GPIO_PIN_4);
delay_1ms(500);
}
}代码参考官方 Demo 例程 GD32VW55x_Firmware_Library_V1.2.0\Examples\GPIO\Running_led .
- 右键工程 - 编译程序,生成 Debug 文件夹,右键 bin 文件 - Show In - System Explorer ,
- 打开系统路径并找到生成的 *.bin 固件
固件烧录
可采用 ISP 方式或 SWD 模式上传固件至开发板。
这里采用串口烧录方式。
- 将 BOOT0 拉高,Type-C 数据线连接开发板;

- 下载并运行 GD32 All-In-One Programmer 软件,设备端口选择、串口参数设定如下,加载镜像固件、设置起始地址,点击 Download 按钮;
- 配置好串口参数,点击 Connect 连接芯片;
- 连接成功后,加载二进制固件 gd32vw553_led.bin ;
- 点击 Download ;

- 待进度条走完,将拨码开关 1 切换至 OFF ,自动运行程序。
效果展示
三色 LED 循环点亮;

总结
本文介绍了萤火工场 GD32VW553-IOT V2 开发板硬件资源、开发环境搭建流程、固件烧录、工程测试等,为相关产品的快速开发和应用设计提供了参考。

开源社区 


