jlink v8 重新烧录解决不识别usb,灯不亮的问题。参考了网上的饿jlink v8固件烧录指导。
打开JLINK后盖,主流的有以下两种结构:
1.使用USB线连接JLINK与PC机,以提供JLINK工作电源
2. 短接图中ERASE(A) 的两个过孔约5秒。断开ERASE(A)位置的两个过孔的短接。然后拔掉JLINK与PC间的USB线(注意先后顺序)
3.短接图中,TST(B)处的两个过孔
4.使用USB线连接JLINK与PC机,至少超过10秒后,拔掉USB线,停止给JLINK供电(说明:请确保此过程中,图中TST(B)处一直处于可靠的短接状态)
5.断开图中TST(B)处的短接
安装Install AT91-ISP v1.13.exe软件
双击Install AT91-ISP v1.13.exe运行,选择默认设置,安装好以后,桌面上生成如下两个图标。
双击Install AT91-ISP v1.13.exe运行,选择默认设置,安装好以后,桌面上生成如下两个图标。
双击桌面上的SAM-PROG v2.4图标 ,运行SAM-PROG v2.4烧录软件,按下图所示进行设置
1.将JLINK V8通过USB线与PC机连接。此时,SAM-PROG v2.4软件中的Write Flash按钮将变为有效(注意,先打开SAM-PROG v2.4再连接JLINK 与PC机)
2.点击Write Flash按钮,烧录固件,待烧录完成后,Active Connection:将变为1
3.拔掉JLINK与PC机之间的USB线
至此,JLINK V8的固件已经更新完毕,正常情况下,连接电脑与JLINK V8时,JLINK V的指示灯将闪烁,然后常绿。请参照JLINK V8用户手册说明,使用JLINK V8进行调试仿真
2013/06/25更新:发现不更新固件后不能用的问题
解决办法如下:
1、重新烧写固件到Jlink,将原来V8.bin固件用Winhex打开,并找到偏移地址为0xff00为首地址4bytes修改为其他值,只要不为原来的11111117 或 805306163即可,因为更新后的固件对这两个固件SN进行了强制校验,修改为其他值即可完美解决问题,同时将0xff30后面的GDBFull对应改成GDBFULL,对应ASCII码为47 44 42 46 55 4C 4C,目的是跳过GDBFull检查。
1.1 另外一种灵活的修改SN的方法:将0xff00为起始地址的4Bytes修改为0xffffffff,同时将0xff30后面的GDBFull对应改成GDBFULL,对应ASCII码为47 44 42 46 55 4C 4C,目的是跳过GDBFull检查,保存修改好的固件文件。更新固件后,打开Commander,不理会更新,在Jlink命令后面输入
exec setsn = xxxxxxxx,所输入的sn为16进制,否则更新升级时会出现错误。 建议定义成你更新的时间,如20121121,这样就能追溯掉固件上次的时间。
2、此时安装了Segger4.65d的版本,打开JLink Commander,按要求提示更新,更新完之后即可正常使用最新的版本了。
PS:CM0加入读保护后,Segger的Unsecured Chip功能不能正常使用了,还未找到办法。跟ST的FAE联系后,建议使用ST Link的STVP来对Option Byte进行擦除,对RDP进行擦除。
更新固件之后,实测发现更容易掉固件了,之前的固件在同样的硬件平台使用半年都不掉一次,更新之后,平均估计半个月就会掉。还没找到问题所在,这样推理的话,只是跟固件相关。抑或是新的固件对硬件操作上有所更改所致?
注意:同时修改GDBFull为GDBFULL或其他字符,根据目前实测,一个月不掉固件,所以修改的地方除了SN,同时应当修改GDBFull字符。解决之前只修改SN后,常掉固件的问题。