新闻  |   论坛  |   博客  |   在线研讨会
解剖J-Link ARM Pro
zhchxgh | 2009-07-12 01:16:22    阅读:4559   发布文章

解剖J-Link ARM Pro
作者 taoist

  Seggēr公司在2008年底推出了J-Līnk ARM Pro,增加了网络调试功能,在经历了2个多月的研究后,终于让它在我的开发板上跑了起来。。。

  先来看看J-Līnk ARM Pro的靓照:

  也许大家会觉得这张图片很普通,Seggēr公司网站上到处有下载,呵呵,那么我告诉你,这张图片名叫JLīnkPro_95x300.jpg,是从J-Līnk  ARM Pro的Firmware里提取出来的。

  是啊。。。Firmware里真丰富,有10来个网页,2个图片,呵呵。。。

  在让大家用上了白菜价的J-Līnk  V6和V7之后,我们来解剖Pro。

  首先,我必须申明我买不起原装货,对我来说,它太贵了。。。当然,如果在我中华大地上能买到“非商业用途”的原装正品,我发誓我会买原装货!!!

  谁都知道J-Līnk是由AT91SAM7S64和一片74ALVC164245构成的,那么Pro呢?

  答案是AT91SAM7X256。

我们先来看看Pro的特性:

1)Fully compatible to J-Līnk ARM?? 全兼容J-Līnk ARM

  目前看起来Pro跟V7支持的特性一模一样:特性字都为0xBF7BFF39

2)Ethernet interface? 以太网接口,100M,我试下来全双工不成功,半双工OK

3)USB 2.0 interface 就是把USB的器件描述符改了

4)Any ARM?7/9/11, Cortex?-M3 core supported, including thumb mode 老特性

5)More memory for future firmware extensions (ARM11, X-Scale, Cortex R4, Cortex A8)? 

  CPU由AT91SAM7S64改为AT91SAM7X256,RAM和Flash都大了,当然爽咯

6)Additional LEDs for power and RESET indication 

  增加了5V输出指示灯和目标板复位指示的LED,但实际上,Pro有5个可控的LED指示灯

7)Comes with web interface for easy TCP/IP configuration (built-in webserver)? Web服务器,可感觉没啥用

8)Built-in GDB Server (planned to be implemented in the near future)? 老特性

9)Serial Wire Debug (SWD) supported 老特性

10)Serial Wire Viewer (SWV) supported 老特性

11)Automatic core recognition 自动识别Core,但有Bug

12)Maximum JTAG speed 12 MHz? 这个没办法了,ARM7就这速度了

13)Download speed up to 720 Kbytes/second * (higher download speeds will be available in the near future)? 老特性

14)DCC speed up to 800 Kbytes/second *? 这个好像没试出来。。。

15)Seamless integration into the IAR Embedded Workbench? IDE? 这也算特性?

16)Powered through USB or power supply which comes with J-Līnk ARM Pro 这个很重要!USB供电!或外接直流电源供电

17)Support for adaptive clocking? 老特性

18)All JTAG signals can be monitored, target voltage can be measured? 老特性

19)Support for multiple devices? 老特性

20)Fully plug and play compatible? 一片74ALVC164245也能算PNP?

21)Standard 20-pin JTAG connector? 这也算特性?

22)Wide target voltage range: 1.2V - 3.3V, 5V tolerant? 5V要外接转接板的吧!!!

23)USB and 20-pin ribbon cable included? 这也算特性?明明就是装箱清单嘛。。。

24)Memory viewer (J-Mem) included? 老特性

25)Comes with licenses for: J-Līnk ARM RDI, J-Līnk ARM FlashBP, J-Līnk ARM FlashDL, J-Līnk ARM GDB Server, J-Flash ARM? 花钱呗。。。

26)Software Developer Kit (SDK) available? 花钱呗。。

27)Embedded Trace Buffer (ETB) support??这个有待研究

28)Adapter for 5V JTAG targets available? 看。。又要花钱

29)14-pin JTAG adapter available? 还是要花钱

30)Galvanic isolation from host system via Ethernet??通过网络变压器隔离,很好的特性

31)Optical isolation adapter available? 花钱。。。
工欲善其事,必先利其器,解剖么,手术刀总是要的

一些必备的工具:

1)IAR EWARM 5.20.3 解铃还须系铃人,人家用啥编译器写的,咱也就啥编译器解剖它,嘿嘿。。。

2)Ultraedit,这个不用说了吧。。。

3)WinHex,在二进制代码编辑方面要比Ultraedit强得多。。。

4)ARM指令表,我就不信有人能全部背出来。。。又不是51,才111条汇编指令。

5)AT91SAM7X256-EK开发板,边上有好多洞洞,特适合改造。。。

6)官方驱动程序,当前正式版本为4.02,去哪里下载不用我说了吧。。。

  OK,搞定了上述信息,我们开始洗手。。。

  首先安装官方驱动,人家的Firmware都存在JLīnkARM.dll里呢。

  用WinHex打开JLīnkARM.dll,嘿嘿。。。不用去找dll文件格式,那样啃太累。。。直接查找ASCII码,关键字“J-Līnk ARM-Pro”。

  反正已经上手术台了,偶先休息会儿,反正它又不会失血过多的。。。呵呵

  休息结束。。。你找到了几个?表告诉我你找到超过4个。

  在继续解剖之前,先学习一点基础知识,ARM体系结构。。。

  以下省略2500字。。。

  重点是,你必须知道ARM一般情况下是从地址0开始运行的。

  重点二,一条很重要的语句“LDR PC, [PC, #24]”,大家先预习先

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客