lstc 发表于 2011-8-29 20:26:10

请教大家关于j-link升级机制。。。

大家好,由于前几天买了个D版的j-link V8 但是没想到刚用了几天就罢工了,在论坛找V8固件恢复的时候,发现好多大侠对j-link的东东有很强烈的兴趣,经过一番学习,发现PJ 的大体思路是:在7s64中自己写一个bootloader 通过USB协议和上位机的***.dll通信。然后想办法绕过验证机制然后将dll里的fw下载并烧写进flash从而完成升级。(自己猜想的 不知道对不对)。由于以前玩过2440现在看7s64觉得不是很难。但是小弟现在有如下疑惑希望获得各位DX的指点:

1、如何从dll提取V8的FW。(有前辈说UltraEdit,但是不知道具体怎样操作。我现在只是知道V8的FW是55KB)。
2、自己写7s64的Bootloader不难,但是通过USB和上位机交互需要USB协议栈,这个也需要自己在Bootloader实现吗?如果需要,可否指点下思路。或者能否提供一份单独的bootloader固件或者源码。
3、还有就是对于一个自己DIY的全新j-link,怎么烧写固件。bootloader和app一起烧写?还是只需烧写bootloader?是通过固件恢复的烧写工具烧写吗?
3、论坛提供有V8和pro的原理图,不知道有没有网友实际验证过。我也想自己做一个。一来提高下自己,二来segger公司的固件升级机制是一个很好的方式,以后自己可能会借鉴。

小弟再次谢谢各位DX了。./emotion/em010.gif

taoist 发表于 2011-8-30 14:09:26

你要得很彻底啊!我只能给你点提示。。。自己领悟吧。。。

1、如何从dll提取V8的FW。(有前辈说UltraEdit,但是不知道具体怎样操作。我现在只是知道V8的FW是55KB)。
方法1:使用IDA pro查到更新firmware的函数,里面有start address和size
方法2:根据ASCII字符和ARM7的一些特征指令的二进制代码,直接从dll里提取

2、自己写7s64的Bootloader不难,但是通过USB和上位机交互需要USB协议栈,这个也需要自己在Bootloader实现吗?如果需要,可否指点下思路。或者能否提供一份单独的bootloader固件或者源码。
既然不难,就自己写吧。。。
不用自动升级的bootloader不需要实现USB device,需要自动升级的肯定需要实现USB device
至于源码,发邮件看看德国佬肯不肯给咯

3、还有就是对于一个自己DIY的全新j-link,怎么烧写固件。bootloader和app一起烧写?还是只需烧写bootloader?是通过固件恢复的烧写工具烧写吗?
你玩2410时怎么搞,7S64也一样咯。
boot和app一起烧,OK
只烧boot,OK,当然这个boot是正版的

4、论坛提供有V8和pro的原理图,不知道有没有网友实际验证过。我也想自己做一个。一来提高下自己,二来segger公司的固件升级机制是一个很好的方式,以后自己可能会借鉴。
网上的图纸有N多种,自己判断咯,这样才能提高嘛

lstc 发表于 2011-8-30 18:25:45

回复【1楼】taoist
-----------------------------------------------------------------------
哇塞,taoist 大侠啊。小弟很多信息都是在你发的帖子或是你的回复里得到的啊。顺便问下你现在进展到什么程度了啊。是不是S E G G E R的全系列产品通吃啊。。。。。再次拜谢了。谢谢./emotion/em006.gif

taoist 发表于 2011-8-30 19:40:13

to 【2楼】 lstc

正在试验新的flasher arm 。。。
页: [1]
查看完整版本: 请教大家关于j-link升级机制。。。