GD32F10x系列单片机下载方式
- 简介
- 烧录接口
- KEIL在线烧录
- 选择下载器
- ST-link
- 接线
- DAP、JLINK等
- 烧录软件烧录
- STlink
- 接线
- 操作
- ISP烧录
- 接线
- 总结
简介
GD32F10x系列的单片机是兆易创新推出对标意法半导体STM32F10x系列的国产单片机。本文将以GD32F103C8T6展开,GD32F103C8T6主频为108MHz,提供了出色的处理性能。基本型片内闪存(Flash)64KB,RAM最大为20KB,供电电压范围为2.6V-3.6V,内核的供电电压为1.2V,I/O口可承受5V电平,内嵌实时时钟(RTC)和2个看门狗(WDG),具有掉电复位(PDR)、上电复位(POR)及电压监测(LVD)功能。经过查看手册可知芯片引脚兼容STM32F103C8T6,下文将用一块STM32F103C8T6的开发板把芯片替换成GD32F103C8T6后进行程序烧录测试。
烧录接口
通过查看手册,我们可以了解到GD32F103C8T6和STM32F103C8T6一样有SW/JTAG调试接口,那就说明可以通过这跟个接口用下载器进行烧录调试,同样BOOT模式说明中也说明了USART1可以对Flash内存里的内容进行传输、更新、重新编程,即是可以通过串口进行ISP烧录。
下面对各种下载方式展开说明。
KEIL在线烧录
上面有说到从手册中了解了到了GD32F103C8T6有SW/JTAG调试接口,即可以例用相应的下载器在KEIL中在线烧录,,程序编译好后可以直接烧录到单片机内,不需要再通过另外的烧录软件进行烧录。
在KEIL里在线烧录需要安装好相应的支持包:传送门
找到相应的型号下载安装好即可,这里不展开过多说明。
安装好KEIL相应的支持包后打开,为了方便测试,创建一个简单的空程序用于下载测试,支持包正确的安装后KELI的设备选择里面就会出现兆易创新相应的芯片型号可供选择,注意程序里的芯片型号需要选择正确。
创建程序略过…
选择下载器
ST-link
相信有很多人是从使用STM32转成GD32的,有上应该会有STlink,所以先用STlink做烧录演示。
接线
表1:
STLINK | GD32 | 3.3v电源 |
---|---|---|
SWCLK | SWCLK | |
SWIO | SWDIO | |
GND | GND | GND |
3.3V | 3.3V | |
BOOT0 | GND |
若不清楚GD32上SWDIO和SWCLK接口在哪里的可以自行参考芯片手册。
注意BOOT0需要接地,这个操作很重要,否则有可能会报stlink通讯出错的错误。
点击KEIL窗口的魔法棒–>点击Debug
选这个好STLINK下载器后点击Settings
port悬着SW,如果看到SW Device栏出现有设备ID那就说明连接成功了,可以通过KEIL在线烧录程序了
编译好程序后,点击下载按键即可烧录。
DAP、JLINK等
DAP、JLINK等烧录配置除了选择下载器和上面STLINK选择的不一样外其他基本一样。这里就不展开过多说明。
需要注意的是接线,DAP和JLINK烧录时可以不把BOOT0拉低也可以连接烧录,但STLINK一定要拉低BOOT0。
烧录软件烧录
STlink
在一些特殊情况下,有可能我们并没有完整的工程文件,只有工程编译好的.hex文件,这时可以通过用STlink和串口把工程编译好的.hex文件下载到GD32中。
STlink烧录我们需要准备STM32 ST-LINK Utility这个烧录软件,传送门
接线
因为是STlink下载器烧录,所以接线可以参考上文的 “STlink在Keil中在线烧录” 的接线说明即 “表1”
注意BOOT0拉低。
操作
安装好“STM32 ST-LINK Utility”烧录软件并连接好单片机后,打开软件。
点击软件中像电器的“插头”一样的图标,进行连接单片机设备。
点击灰色的像电器的“插头”一样的图标是断开连接,“橡皮檫”是擦除Flash
开始烧录,点击写入flash的图标,并选择程序编译好的.hex文件
最后点击Start开始烧录
烧录完成,已擦除的flash里,重新写入了程序。
ISP烧录
上文有说到,BOOT模式说明中说到可以通过USART1更新、写入flash,即可以ISP烧录,兆易创新官方也提供了专用的ISP烧录软件 “GigaDevice MCU ISP Programmer” ,下载传送门。
接线
查看手册可知PA9是GD32F103C8T6 的 USART1_TX引脚;
PA10是GD32F103C8T6 的 USART1_RX引脚;
BOOT0拉高是系统存储器启动方式,即常说的串口下载方式(ISP),所以需要把BOOT0拉高。
USB转TTL | GD32 |
---|---|
RX | PA9 |
TX | PA10 |
GND | GND |
3.3V | 3.3V |
3.3V | BOOT0 |
本次使用的开发板已经板载了串口芯片,所以直接连接usb口就行了,没有引出串口芯片的需要按上面的接线说明接USB转TTL模块。
接好线后打开GigaDevice MCU ISP Programmer软件。
打开后选择正确的串口号和波特率后点击“Next”进入下一步
连接成功识别到了设备信息,点击“Next”。
选择正确的芯片型号,本次实验用的是GD32F103C8T6,选择好后点击“Next”进入下一步
选择“Download to Device”,点击“Open”,找到需要下载的.hex文件的位置载入.hex文件,“Download to Device”选项里其他选功能根据自己的需求选择(比如,是否全片擦除),然后点击“Next”进入下一步开始下载
下载完成,点击Finish退出下载页面。
总结
GD32在Keil上在线烧录时注意正确安装GD32的支持包,没有正确安装芯片支持包无法在keil在线烧录;STlink在Keil上在线烧录GD32时注意BOOT0拉低,否则大概率连不上。ISP烧录手动配一下BOOT0成功率大。