GD32系列MCU支持SWD和JTAG(部分型号不支持)接口进行下载调试,这些功能通过ARM CoreSight组件的标准配置和链状连接的TAP控制器来实现的。调试和跟踪功能集成在ARM Cortex-M内核中。调试系统支持串行(SW)调试和跟踪功能,部分型号也支持JTAG调试。调试和跟踪功能具体请参考下列文档: Cortex-M4技术参考手册; ARM调试接口V5结构规范。 目前GD32 MCU主要支持的调试下载设备有:J-linkV8/V9、U-link、标准的CMSIS-DAP调试工具如GD-link。SWD/JTAG的优势在于及下载和调试功能一体,可直接在集成开发环境IDE(如MDK、IAR)中进行下载和在线仿真。同时还有丰富的下载以及调试上位机,如J-flash和GD-link Programmer工具。J-flash可使用6.3版本及以上可选择GD MCU型号,也可在网盘->共享文件夹->软件中下载绿色版J-flash。GD-link Programmer请使用官网发布的最新版本。 注意:M23内核型号的E23x系列仅支持J-linkV9、U-link2、GD-link。 2.1 SWD/JTAG引脚定义同时支持SWD/JTAG的系列有GD32A50x、GD32C10x、GD32C11x、GD32F10x、GD32F20x、GD32F30x、GD32F4xx、GD32E10x、GD32E11x、GD32E50x、GD32FFPR,仅支持SWD的系列为:GD32L23x、GD32F1x0、GD32F3x0、GD32E23x,仅支持JTAG的系列为GD32VF103。 SWD/JTAG调试下载引脚定义如下表所示,GD32A50x引脚不同于以下定义,请参考用户手册。 2.2 SWD/JTAG烧录软件J-link烧录需使用J-flash上位机,Jflash6.2版本及以上可选择到GD MCU型号。J-flash支持擦除、烧录、读取Flash、读保护、去读保护等操作。同时使用J-flash还可以进行Bin文件的截取、合并等操作。 GD-link烧录需使用GD-link Programmer,可支持擦除、烧录、读取、读保护、去读保护等功能,同时还可以将Bin装载到GD-link中实现脱机离线烧录功能,离线烧录在第4章节会详细介绍。 2.3 SWD/JTAG下载电路SWD/JTAG下载电路如下图所示,如使用4线的SWD下载方式保留下图中SWDIO(PA13)、SWDCLK(PA14)、VCC、GND即可。注意:SWD/JTAG下载模式需要BOOT0拉低为正常的Flash启动模式。 2.4 Jlink仿真器接口Jlink仿真器是标准的Jtag接口,同时支持Jtag/SWD模式下载,其中除调试信号线外,还有Reset、VCCvref(Pin1)、VCCoutput(Pin2)引脚、GND引脚,引脚定义如下表所示。使用SWD模式下载时调试信号只需SWDIO(Pin7)、SWDCLK(Pin9)即可。一般可以做一个转接板方便连接和调试,如图所示。 需注意有的Jlink硬件必须连接VCCvref(Pin1)获取MCU的工作电压,一般在Jlink内部有一个跳线帽可以选择VCCoutput(Pin2)是否对外供电。 Jlink 仿真器接口 ![]() Jlink引脚定义 ![]() Jtag接口转接板 ![]() 2.5 GD-link仿真器接口GD-link仿真器接口为10针,支持Jtag/SWD模式下载和调试,接口定义如下图。使用SWD时只需使用Pin2、Pin4连接目标板PA13、PA14即可,Pin1电源引脚可以对目标板进行供电。为方便连接和调试可以使用转接板,如下图。 GDlink接口 GDlink引脚定义 GDlink转接板 2.6 J-flash下载流程- 在Project Settings界面中的MCU选项卡下设置Device选项选择需要下载的MCU型号,如图1。在Target Interface选项卡下选择调试口的类型和速度,如图2。
J-flash软件MCU型号选择 J-flash软件调试口设置 - 选择好型号后,相关操作便都在Jflash首页面的Target菜单栏下,首先点击Connect进行连接,连接成功后下方Log框会有信息提示,如图。
J-flash软件连接目标板 ![]() J-flash打开Bin文件 ![]() - 在Target菜单栏下Manual Programming选项下有上锁(读保护)、解锁(去读保护)、擦除、编程、读等操作可选,如图3-23。如需下载只需点击Target菜单栏下Production Program或按下F7即可下载,下载成功后会有弹窗提示,如图,如果下载失败下方Log会显示详细错误信息。
Jflash用户操作选项 Jflash下载成功 2.7 GD-link Programmer下载流程1 使用GD-link连接到目标板,连接成功后GD-link上的LED2快速闪烁。 2 打开GD-link Programmer软件,在菜单栏Target下点击Connect连接MCU。在右边信息栏可以显示GD-link固件信息、MCU信息,同时可选择SWD/JATG以及设置通信速率。在下方STATUS栏中会显示MCU选项字节信息,如果选项字节前两个字节不是A5 5A 则表示MCU有安全保护,需要点击Insecurity后才能操作。如图所示。 GD-link Programmer软件连接目标板 ![]() 3 在菜单栏File下点击OPEN可以打开Bin或Hex,如果是打开Bin会有弹窗需要输入Bin的起始地址。打开Bin或Hex都会在下方Status栏中显示文件的校验和。如图所示。 GD-link Programmer打开Bin或Hex 4 在菜单栏Target下选择Program可以把打开的Bin或Hex烧录到MCU中,在此菜单栏下还可以进行擦除、读取Flash、运行代码、添加安全保护、去除安全保护等操作。如图所示。 GD-link Programmer用户操作选项 5 需注意安全保护选项内有High等级和Low等级,部分GD MCU型号有高级别Flash保护,添加后将无法解锁,不能再通过外部操作Flash。一般情况选择Low进行安全保护即可。如图。 GD-link Programmer添加安全保护 2.8 SWD/JTAG烧录注意事项MCU无法连接时需注意检查MCU中是否有程序禁用了SWD/Jtag调试端口,MCU是否处在睡眠等状态下。如果都不是可以降低SWD/Jtag通信速率、降低调试连接线的长度再进行测试; 调试器的RESET引脚建议和MCU的复位PIN连接,这样能较好的时序匹配; SWDIO内部已经上拉, SWCLK已内部下拉,不外接相应的上下拉电阻一般可以使用,但是建议SWDIO外接10K上拉, SWCLK外接10K下拉,以提高SWD接口信号驱动能力; SWD/Jtag信号线避免串入较多干扰,PCB走线注意不要靠电感等感性器件过近。工业级应用中可以增加上下拉处理对地并pF级电容,提高调试接口的抗干扰能力; PB3为SWO输出信号,使用到该功能才需要将SWO接出来,否则可以不用引出。
教程由GD32 MCU方案商聚沃科技原创发布,了解更多GD32 MCU教程,关注聚沃科技官网,GD32MCU技术交流群:859440462
|