bozai
发表于 2008-12-18 15:33:07
to 【260楼】 marrt.he
不用H-JTAG,直接用Atmel的ISP软件SAM-BA就可以搞定了。
看见原理图上的R7,R6没,两个不需要焊接的。 先短接R7 过好像20秒吧(也不需要那么长)擦除flash,然后先短接R6 10秒钟,这时候内部的bootloader就可以使用了。 安装atmel网站上下载的isp软件。然后把jlink插上就会提示有新硬件,选择自动安装就可以了。然后打开sam-ba 选USB通信,7s64EK的board,然后在flash那栏里选上要烧的文件,然后send就ok了
marrt.he
发表于 2008-12-18 15:20:54
Taoist! 我已将你的JLINK V6线图做了一批PCB;有个大胆的想法看看各位兄弟意见:
我本意是无偿送喜欢研究JLINK的朋友,但有一个小小的要求.谁公开一篇用H-JTAG下载V5彧V6 F/W过程的详细资料(我申明一点,我看 网上虽有DASM提供的数据但成功没几个,当然我也是不成功的).我将6-8片(12月20日板子能回来,总共数量可能最多10片)送给那位写资料的兄弟指定人员名单(快递到付方式).
bozai
发表于 2008-12-18 13:37:34
搞定,通过修改DASM提供的V5 firmware里的bootloader,可以用在V6上了,也能升级到4.00。
奇怪的是自己编的却不可以。虽然在代码copy方面是一样的,估计初始化上面还有些不同。
bozai
发表于 2008-12-18 11:52:55
to 【257楼】 shaoshunda
下午过来再聊,刚才仔细用ida追了下汇编代码。 有点眉目了,之前关于V5的理解还有一些错误的。
shaoshunda
发表于 2008-12-18 11:16:41
to 【256楼】 bozai 章其波
MSN:shaoshunda@msn.com
在3.96d里面的时候,v6,v7都试过了,可以正常工作,不能正常升级。
在4.00里面的时候,因为时间关系,只试了v6的,也是可以正常工作,不能正常升级。<font color=#699bcd>本贴被 shaoshunda
编辑过,最后修改时间:2008-12-18,11:18:07.
bozai
发表于 2008-12-18 11:09:21
to 【255楼】 shaoshunda
明白,看来bootloader这一块是有点需要注意的地方。 谢谢!
我反汇编把所有认为该改的地方都改了还是不行。 你有没有试过V7的可不可以? 不好意思,在公司白天不开qq<font color=#699bcd>本贴被 bozai
编辑过,最后修改时间:2008-12-18,11:15:39.
shaoshunda
发表于 2008-12-18 10:49:32
to 【254楼】 bozai 章其波
我是说v6的APP部分用的是4.00里面的。bootloader用的是firmarmRev5314c.bin里面的,直接截取出来修改的。可以正常工作,但是修改日期后不能从4.00升级到4.00
可不可以私聊 QQ:21279489<fontcolor=#699bcd>本贴被 shaoshunda
编辑过,最后修改时间:2008-12-18,11:09:13.
bozai
发表于 2008-12-18 10:41:38
to 【253楼】 shaoshunda
是么? 是用4.00的firmware么?
我昨天还用ida反汇编把里面相应的V5的地址改成V6的,弄了很久还是不能升级。 但是我没试4.00的。
shaoshunda
发表于 2008-12-18 10:34:22
to 【251楼】 bozai 章其波
我将DASM提供的firmarmRev5314c.bin里面的bootloader部分提取出来,修改后跟4.00 firmware 的APP结合,工作是OK的,但是不能升级。
<fontcolor=#699bcd>本贴被 shaoshunda
编辑过,最后修改时间:2008-12-18,10:36:08.
dragonathust
发表于 2008-12-18 10:32:22
谁能解释一DASM大侠提供的v5 firmware里的bootloader和固件各是放在什么位置,貌似bootloader是从0开始,firmware是从0x5400开始,最后还有一段执行代码,那CRC16校验在哪里呢
ahfong2006
发表于 2008-12-17 20:53:34
命令表。。。好东西啊。
taoist
发表于 2008-12-17 19:47:39
终于找到J-Link的命令表了。。。 V7原理图咋还不出现啊。。。
hiberhe
发表于 2008-12-17 19:26:29
从dll中提取固件可以试试010 editor,我所用过的最好用的二进制编程器,个人感觉比winhex/ultraeditor好很多,可以选择起始地址,并加长度的方式提取(以前自己是用VC写几行代码的方式)
看上面的讨论,有一点还是不明白,DASM提供的那个main.c编译后就可以作bootloader?没看到USB的代码呀?(不用bootloader的方式我没试,不过我想要运行起来还是比较容易)
dragonathust
发表于 2008-12-17 17:58:04
f14ac 到F14B0的4个字节貌似是上一个块的校验
tkdr2001
发表于 2008-12-17 17:48:04
f14ac
_yuming
发表于 2008-12-17 17:26:37
楼上的地址好像不对呀,我怎么看都少了一行呀
dragonathust
发表于 2008-12-17 17:04:21
固件代码是不是这样存放的?
在3.96d的JLinkARM.dll文件中的长度和地址,貌似最后4个字节是校验 v5 len=0x5400
0xE52B0 0xEA6B0 v6 len=0x6e00 0xF14B0 0xF82B0
v7 len=0x6e00 0xF82B0 0xFF0B0
v8 len=0xdc00 0x0FF0B0 0x10CCB0
ahfong2006
发表于 2008-12-17 16:27:37
说编译器无关就跟说平台无关一样,基本上是可行的,但是具体到某些细节,那就是不可能无关了。
shaoshunda
发表于 2008-12-17 16:23:23
to 【230楼】 bozai 章其波
我的在所有的硬件版本上都不工作,难道真的跟编译器有关。 我也认为跟编译器无关的。
看来得试试IAR 4.XX 了。
//--------------------------------------------------
我想跟堆栈,ram的地址空间设置,应该都有关系的<fontcolor=#699bcd>本贴被 shaoshunda
编辑过,最后修改时间:2008-12-17,16:28:25.
nihke2
发表于 2009-6-21 19:17:13
顶起来
imjacob
发表于 2011-3-9 20:09:28
mark