bigbat 发表于 2021-7-31 15:20

平头哥RVB2601板子"救砖"记

本帖最后由 bigbat 于 2021-7-31 19:16 编辑

<p>今天我测试的平头哥RVB2601板子&rdquo;变砖&ldquo;了,还好最后救活了,就把整个过程记录一下。</p>

<p>本来我想测试一下CH2601是不是能够使用openocd,于是就试试看能不能和openocd通讯,</p>

<p>第一步:打开CSKYFlashProgrammer.exe,选择好文件,点击开始start,</p>

<p>&nbsp;没有成功,程序提示:Debugger server没有启动。</p>

<p>第二步:</p>

<p>进入到F:\rvb2601\CSkyDebugServer\bin目录启动CSkyDebugServer.exe</p>

<p>&nbsp;发现调试器无法连接</p>

<p>&nbsp;可能信息不是这样子的吧,反正是连不上。</p>

<p>&nbsp;这个画面是对的,ICE Device Select(Idle)中没有任何选项,这时我就按了几下Jtag复位键,也没什么反应。我就把连接Jtag的信号线给拔了下来。再次打开好象ICE Device Select(Idle)中就有东西了,我这时就点了一下OK,看到好象调试器连上了。</p>

<p>&nbsp;点了一下这里,启动一下Server ,再次打开CSKYFlashProgrammer还是连不上,于是决定不再使用CSKYFlashProgrammer,决定使用openocd脚本手动连接系统。</p>

<p>悲剧的是我找了一圈也没有找到任何关于openocd连接的设置。这其中想了很多办法,包括改造其它芯片的&rdquo;脚本&ldquo;都失败了。我就想:是不是jtag的USB驱动的问题呢?接着就找到libusb库中的驱动,安装了几波USB驱动,winusb和usbk、CDC这些都试过,都不能连接到openocd的服务上。后来也就放弃了。</p>

<p>决定不在尝试后也就不折腾了,接着按正常的开发方案继续测试,写好程序后,我就开始下载,这时出现了一个错误,我在从新连接板子,悲剧!板子这时就&rdquo;变砖&ldquo;了。</p>

<p>现象是:板的程序没有任何问题也没有修改过,原来的程序可以继续使用,但是jtag无法连接了,随后我把csky从新装了一遍还是无法连接,这时我又到其它的机器上去,安装了一遍结果也是连不上板子,看来板子的jtag固件可能被损坏了。</p>

<p>随后我找到原理图,</p>

<p>&nbsp;发现SWD的引脚是悬空的,即使我找到了固件也没有办法写入到STM32103中了。看来我只有买一个烧写器了。我真是不知道怎么了。</p>

<p>回过神来一想反正都是个坏,我飞两根线试试,于是就找来变压器拆下来的漆包线用刀片刮干净。焊在SWDCLK和SWDDIO上,找来编程器,后又在F:\CSky\CDK\CSKY\CSkyDebugServer\bin\links\CK-Link下找hex文件。</p>

<p>&nbsp;当我把第一个文件cklink_lite.hex写入,试了试没有反应,除了cklink_lite_iap,其它文件都试了试都没反应。我怎么看cklink_lite_iap都不像是能工作的文件。直到最后才把cklink_lite_iap烧了进去。没想到:嗨!MD可以。于是赶紧又试了几个项目都可以,这才放心把飞线拆了。后来把最新版的T-HeadDebugServer打开,程序提示我升级!升级也成功了。</p>

<p> &nbsp;&nbsp;通过查看升级说明才知道,原来的版本的USB驱动有问题。我猜测变砖的可能是USB驱动本身问题和我瞎折腾也可能有一定关系。</p>

<p>通过这次救砖我有几点建议</p>

<p>1、最好下次设计时把升级用的SWD引出来。</p>

<p>2、JTAG本身有串口,也最好引出来。</p>

<p>3、资料中应该对一些风险操作给与一定的提示。</p>

<p>&nbsp;</p>

Jacktang 发表于 2021-8-1 11:25

<p>能把砖头给激活过来,经验值得收藏,</p>

<p>谢谢分享</p>

soso 发表于 2021-8-2 10:27

<p>很惊险,不过看着也挺有成就感 哈哈</p>
页: [1]
查看完整版本: 平头哥RVB2601板子"救砖"记