公司产品的主芯片大部分使用GD32E和GD32F系列,之前开发使用的是J-link和ST-link;发布后的代码用正点原子烧录器下载后会自动给芯片加密,所以当产品在发布后又出现问题时,研发狗本狗要进行的一个步骤就是解除芯片保护;(此时芯片写不进也读不出)但是每次用J-link擦除真的心累,之前一篇博客有写;在老工程师的建议下,还是所以拜托公司斥巨资299大洋在官网买了一个和GD芯片配套的开发工具GD-link;使用感受就是爽!
但是烧录过程中也会出现一些问题导致烧录失败,所以在此总结一波:
1、第一次使用GD-link烧录时,点击魔术棒->Debug->选择CMSIS-DAP Debugger>点击旁边的Settings
1处:表示没有识别到目标板
2处:要选择SW
3处:值越大下载速度越快,1MHz、2MHz、5MHz、10MHz都可以选择
这样就表示识别到目标板了
有时目标板也连接到了,但是还是下载失败,这时就要检查一下是否选择了对应芯片,上图界面点击Flash Download,没有的话,Add添加;Reset and Run选项可以勾选上,下载后芯片会自动复位,就无需手动复位了
2、用GD-link Programmer查看芯片是否被保护
点击Connect ,我的是BB 44 开头,只要不是A5 5A 开头的,芯片都处于被保护状态;这里我已经解除保护了,所以有Removed read protection successfully!
要解除保护,点击Insecurity 就行,出现A5 5A 就表示解除了保护;
我之前还傻乎乎地每次都要再点 Page Erase(页擦除),就多此一举了;
3、检查GD-link连线是否正确
我这里用了5根线(用胶布裹了几层就是防止它掉),连接了SWDCK(时钟),SWDIO(数据),GND,3.3V,NRST(复位),但是一位老工程师告诉我,一般不用烧录器自带的电源供电,容易烧坏工具。如果不用烧录器自带的电源,目标板就要外部供电,这个坑我踩过。
4、点击魔术棒-》Device,查看芯片型号是否选对
5、关闭工程,重新打开keil,或者插拔一次烧录工具
6、所有流程都做了,还是不行,很大概率就是连接烧录工具的线断了(肉眼不可见的那种,这坑我踩过了),或者芯片坏了
所以换线,换芯片,耐心一点,一一排除。
这就表示下载成功了
这篇博客仅作为总结,不作为对GD-link的使用教程,本狗经验还太浅,,只能作为使用者!