大早晨的调着调着程序,视线没离开一会,就发现jlink自动断开连接了,然后重新拔插jlink、重启都不行,才发现小灯已经不亮了,原来是固件损坏了,果断想办法修复这位大爷。
以前修复过这个问题,但当时系统是win7 32位,现在用win10 64位不知道能不能修复,所以查资料,修复过程如下:
#0、开始前准备工具
1.SAM-BA v2.12.exe 用于烧写固件,下载地址:http://download.csdn.net/detail/hzt12345hf/9457629
新版本的SAM-BA(例如sam-ba v2.9)不能正确连接JLink,所以还是用了这个版本。
2.JLink v8固件,下载地址:http://download.csdn.net/detail/hzt12345hf/9457633
请务必使用这个固件,其他固件会导致“J-LINK the connected emulator is a j-link clone“”问题,即jlink不是正版,具体原因请查看此贴:http://blog.sina.com.cn/s/blog_8a30d1990102vo66.html
3.最新JLink驱动,下载地址:https://www.segger.com/jlink-software.html
#1、首先是擦除JLink上flash的程序(芯片是Atmel的AT91SAM7S64),通过短接ERASE(图中A处)实现擦除:
步骤要求:
1)先通电。
2)短接ERASE(J1),保持短接状态20s。
3)断电。4)移除短接
市场上常用的三个版本JLink短接位置略有不同,如下图所示:
#2、然后将SAM-BA Boot 固件复制到FLASH的前两个扇区,通过短接TST(图中B)实现
步骤要求:
1)短接TST(J2)。
2)通电,并保持短接30s。
3)断电。4)移除短接。
#3、安装好 SAM-BA v2.12 后,重新连接jlink到电脑,会提示安装驱动,然而我用win10并没有看到安装驱动,都是系统自动安装,只是在设备管理器里看到这个,只要有这个就可以了。
默认一定是有"Bossa program Port"或者"USB Serial Device"这几个字,如果不是可以试试回滚驱动或者更新驱动,驱动位置在sam-ba_2.12安装目录下的drv文件夹里。如下图所示:
#4、装好驱动,打开sam-ba_2.12程序,选择对应的com口,选择芯片型号,JLink默认的芯片就是AT91SAM7S64,然后connect进入主界面。
#5、默认配置就是如图所示,什么也不需要改,点击Send File Name右边的文件选择按钮,选择下载的 jlink-v8.bin 文件,然后点击Send File按钮进行固件烧写。
注意:烧写时,会提示是否锁定flash,需要点击yes,如下图所示:
烧写完后,会提示是否锁定flash,我发现点击yes,锁定后无法更新固件,所以我一般选择no。如果你不想更新固件,可以点yes。
烧写成功界面,如下图所示:
#6、到此,再次重新拔插JLink就可以使用了。
小补充:
若使用JLink 命令模式打开,如下图所示:
首先提示更新,点yes 或 no都可以,我嫌烦就点击yes,让它更新了,
更新后就显示了jlink的各种信息。
若没有连接单片机时的界面如下所示:
若连接到单片机后的界面如下图所示:
但注意,最近发现更新JLink固件后出现各种问题,而且jlink的烧写工具JFlash使用最新版也容易出现烧写问题,至于为什么大家都懂的(盗版问题),所以一般的jlink务必不要更新升级固件,jlink驱动也尽量别用最新的了,只要能用就尽量别换,否则各种问题,目前测试的5.10是没有问题的。
原文网址链接为:http://blog.csdn.net/hzt12345hf/article/details/50846447