用openjtag&eclipse测试mini2440流水灯程序

来源:互联网 发布:linux sed 修改文件 编辑:程序博客网 时间:2024/06/05 01:59

网络上流传了很多用openjtag+Eclipse调试mini2440流水灯的文章,实践过程中并不一帆风顺,有很多问题。

软件的版本是个很大的问题,网络的文章很多是用一两年前的版本,本人历来喜新不厌旧,一般首选最新版,

旧版做替补。

 

首选要做的是安装JTAG工具

山寨版Jlink遇到了很多问题,对gcc工具链不熟悉,解决这些问题很恼火。淘宝上有用FT2232制作的openjtag,配合openocd很好用。

sudo cp 50-ftdi.rules  /etc/udev/rules.d/

50-ftdi.rules在openjtag附送的光盘里可以找到。

 

Eclipse、openocd 和arm-linux-gcc之前装好了:

Eclipse、openocd可以用“新立得”安装,Eclipse还需要安装GNU ARM Eclipse Plug-in。

GNU ARM Eclipse Plug-in 的下载地址:http://sourceforge.net/projects/gnuarmeclipse/

arm-linux-gcc 是友善提供的,版本比较新,比较稳定。

 

openjtag附送的光盘提供了所有源码。只需在Eclipse里建立工程,配置debug就可以调试了。

1. 建立工程。选择Makefile 空工程。这次不使用Eclipse自动生成的Makefile。

2. 将这些文件拷贝到工程目录下,按F5刷新。

3. 编译。如果报错,检查是不是遗漏了文件。

4.配置debug

4.1 新建一个 GDB hardware debugging 调试器。先选择工程,之后选择elf文件。


 4.2 配置 debugger参数:使用arm-linux-gdb 调试器,IP端口是 localhost 3333

 

4.3 填写startup


4.4  保存退出。

5.  用openjtag连接mini2440

sudo openocd -f openjtag -f samsung_s3c2440.cfg

6.  在telnet里面halt cpu,不知为何必需手动halt,否则有时可以正常调试有时不行。

telnet localhost 4444

>halt

>arm920t cp15 2 0

7. debug

 

补记:zylin的源
http://opensource.zylin.com/embeddedcdt.html

在nor flash不能调试,在Nand flash调试正常。

用新立得安装的openocd(3.0.1)不支持monitor arm7_9 sw_bkpts enable,win7下的 0.4.0 with GUI 支持该命令。
调试过程正常,只是必须手动 halt 后 arm920t... 否则不能调试。