乐乐爱学习 · 2022年04月08日

【GD32F310开发板试用】GD32F310-基于MDK新建工程及烧录

一、开发板介绍

1.前言

很感谢极术社区的评测机会,本来带来评测的开发板是兆易创新的GD32F310K8T6型号的MCU,兆易创新算是行业里做MCU比较优秀的企业啦,本次这款MCU是基于M4内核的32位MCU,不过从它的手册来看资源还是比较有限的,比较适合于占用较少开发资源的工业级和消费级产品来使用。

2. 开发板资源

img

这款MCU主频是72M,Flash为64K,RAM只有8K这个算是比较小的啦,算是轻量级资源。不过该具备的外设却一点都不少,定时器、看门狗、RTC、串口、IIC、SPI、12位ADC等等这都是M3、M4系列的标配,但是这款MCU具有I2S接口,可以做音频设备,这就可以将它使用在 物联网、语音设备等领域来,这种轻量级资源特备适合成本不高的开发来使用。

3. 开发板实物

image.png

到手的开发板就是这个样子,包装和白色的PCB风格有点像STM32的Nucleo开发板,不过兆易贴心的赠送了一根数据线,应该是1米长的,反正线是挺长的。
image.png
PCB四角都做了倒角处理,留有四个螺丝孔,方便固定,板载了GD-Link,目前驱动自动检测是DAP-LINK,毕竟DAP-LINK可以通吃所有的ARM芯片嘛。
image.png
不过在这个到处都是Type-C接口的年代,这个开发板使用的是 MINI-USB接口,这个就比较难受了,不过好在评测是赠送了数据线,贴心+1,可能是为了使用之前剩余的物料吧。做DAP-LINK的芯片是兆易自家的GD32F103C8T6,这个芯片目前还挺贵的,可以直接PIN to PIN 替换STM32F103C8T6。贴心值再次加一。

不过这个评测板 外围的排针是兼容Arduino接口的,没有焊接排针排母,如果使用到需要自行焊接一下。板子上也将SWD接口做成了四个过孔,这里可以焊接它把这块板子当成一个DAP-LINK来使用。

二、环境搭建

本来打算使用这款开发板来移植RTT操作系统,但是它的RAM实在是太小了,如果移植了RTT应用层代码可使用的资源会比较少,所以这里还是使用裸机进行开发。

1.资料获取

本次评测极术社区提供了所有的开发资源,如果大家需要获取PACK包,DataSheet等等可以点击超链接。

Pack包获取

image.png

标准库获取

image.png

2. 开发工具

逻辑开发当然选择最好用的Keil-MDK啦。编译器版本为5

image.png

三、BPS移植

1. 新建工程

准备好开发工具后,我们就开始制作BSP吧,根据官方提供的标准外设库来制作,首先新建一个MDK工程,选择芯片为GD32F310K8。

image.png

2.新建Group

然后可以创建几个Group来归纳和放置文件。因为应用文件比较少,我将应用文件都放在了Code里。

Group功能
CMSISARM标准接口
GD32_Per标准外设库
GD32_Startup启动文件
Code用户代码

image.png

这些文件其实都在 GD32F3x0_Firmware_Library 文件夹中。

3. 添加编译路径

对应的.h文件可以根据编译路径来配置。

image.png

4. 添加宏定义

USE_STDPERIPH_DRIVER,GD32F310

image.png

5. 更改烧录工具

image.png

设置烧录工具为DAP-LINK并开启下载自动复位运行。

6.验证编译

image.png

可以看到官方的Demo中主函数初始化之后 在死循环中进行了一个1HZ的流水灯,我们将其改为10HZ。

image.png

image.png

编译下载无错误,且板载的A8这个GPIO的LED以10HZ的频率进行闪烁。

四、 总结

这款开发板的开发资料比较齐全,这篇测评文章以MCU资源分析和BSP制作为核心,请大家继续关注,下篇测评文件将会以PWM为核心,本文章的对应代码将放置在Gitee上。

推荐阅读
关注数
10697
内容数
187
中国高性能通用微控制器领域的领跑者兆易创新GD系列芯片技术专栏。
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息