99862| 35
|
完美破解Jlink教程,进入ARM世界 |
目前由于在调试Arduino新出的的32位的DUE,然而喜欢挑战自我地想到自己能不能用jlink仿真或者烧写程序给SAM3X 芯片,因此好久没动了的jlink又重新有了它的用武之处,果断下载了最新的AVRSudio 6 1996版本(1996版本内部有arduino 的conf_board)刚开始去SEGGER官网发现jlink果然支持ATMEL的AVRSudio 6里面的一系列ARM芯片,顿时觉着jlink好强大啊!!!安装好了AVRStudio 6 并且插入了jlink,它居然识别成了SAM-ICE,心想这么强大!!!(然后serial number是805306163)再过一会jlink就弹出一个update firmware的窗口,升级之后,segger就发威了,弹出一个界面说我的jlink是 克隆版本,需要下载OEM什么的,blood、blood。。。。相信玩ARM的同学们看到这如果也有同样的经历一定 很不爽吧?那么就让我来详解破解Jlink的步骤吧。。。 |
swanglei 发表于 2014-5-1 00:05 你好 昨天不能设置SN可能是因为没有连接目标板,我连接目标板后设置是可以了 运行JLINK-COMMANDER的结果是 SEGGER J-Link Commander V4.08L<'?' for help> Compiled Sep 17 2009 09:42:18 DLL version V4.08L,compiled Sep 17 2009 09:41:55 Firmware:J-Link ARM V8 complied Aug 1 2012 13:40:47 Hardware:V8.00 S/N:20100214 Feature<s>:RDI,FlashDL,FlashBP,JFlash,GDFULL VTarget =0.000V JTAG Speed:5 kHz J-Link> 上面是JLINK没有连接目标板运行的commander的结果。当使用keil 下载的时候 还是提示是克隆的。 |
我个人使用的是sam-ba2.12版本,版本2.4过于繁琐,目前看到很多人使用的2.7、2.8或者2.9,界面都是差不多的, 但是版本2.4的实际操作发现很多时候烧写jlinkV8固件时,开始烧写总是灰色的,选不了,应该是芯片烧写之前的准备 工作不可靠。首先使用winHEX打开 V8.bin 固件,并且找到以0xFF00为起始地址的4个Bytes并将其修改为0xFFFFFFFF, 并在下面不远的地方找到GDBFull,其相对应的十六进制的代码47 44 42 46 75 6C 6C 改成47 44 42 46 55 4C 4C (将小写的改成大写的,目的是跳过GDBFull)并且保存此修改好的固件文件。 |
打开sam-ba,开始会弹出一个界面选择芯片的型号以及电脑识别的COM口(这里一般会自动识别),点击connect,然后 进入到主操作界面,导入上一步已经修整好的V8固件,并且点击send file;这时会出现一个窗口,这里提示是否解锁Flash (不解锁无法下载),然后等待烧写固件完成再次会弹出一个窗口提示是否写保护(写了保护后不能自动升级,但选择写保 护可以防止程序不被冲掉)点击NO;到了这里就已经完成了烧写固件的所有步骤;关掉sam-ba,重新摘掉jlink并且再插上 Jlink电脑就开始自动识别jlink并且自动安装驱动,我个人当时安装的是4.40版本的firmware,接下来下一步需要注意的是 步骤最好不要颠倒,因为一旦颠倒你就需要重新刷固件了。。。 |
打开segger自带的jlink commander,这时会跳出一个界面叫我们更新最新的firmware,到这里一定先不要更新; 我们需要做的工作是修改jlink的SN码,当然了在之前的修改V8.bin固件里面也可以完成这一步骤,但修改的相对 麻烦,还得找SN码的OFFset,但是在commander里面直接一个指令就可以很方便的修改:Exec SetSN=xxxxxxxx, 但是这个SN码千万不能是11111117 或 805306163,因为SEGGER正是对这两个固件SN进行了强制校验,修改为其他 值才可以完美地达到我们的目的。这里我给大家两个个我个人找到的SN码:20100214 20060125;到了这里我们就 可以更新firmware了,截止发文时间SEGGER官方最新的是4.58a. |
照楼主的做法成功了。只是没有做Exec SetSN=xxxxxxxx这一步。我装的是最新的JLINK V4.76F.打开JLINK commander 看到S/N显示 : -1.然后用MDK4.71a打开调试功能时有提示更新,更新后有显示序列号。也没有提示jlink是克隆版的。不过好像MDK4.71A有点问题,我明明选择了J-LINK。但老是提示没找到S-LINK.我只好接上S-LINK,最后又提示没找到J-LINK,这时我接上J-LINK,再连接就可以了。可能是MDK4.71A的BUG.现在下个MDK4.72A试试 |
killusa 发表于 2014-3-24 15:52 动动手,试试看,学过单片机的话,应该一个星期不到就有感觉了。 可以参考下这些资料,也许有帮助:http://pan.baidu.com/s/1qWAp6Fi |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed