一、目的
学习ARM调试裸机程序方法。目前ARM支持JTAG、Angel、 ARMulator 三种调试方式(详见见下面),而支持裸机程序调试只有JTAG,而本人使用笔记本无并口,无法使用H-JTAG,只能使用Jlink调试。
1、使用JTAG 完全信赖ARM内部资源
2、使用Angel 目标板上必须包含调试监控程序
3、ARMulator 无需目标板,纯软件仿真.
二、硬件环境
开发板:TX2440A
cpu:S3C2440
nand flash:K9F2G08U0B (256M+8M)x8bit
norflash:EN29LV160AB (2M) x8bit
SDRAM:K4S561632 x 2 (32M) x 2
仿真器:JLINK V7
串口线:USB-RS232转接线,支持5V和3.3V电源
三、电路连接
1.电源:开关电源5V/2A
2.串口:TX2440的com0口与电脑串口相连
3. JLINK连接:使用PC---usb线----jlinkV7-----10pin转接线----TX2440的jtag接口
四、软件环境
1. SEGGER J-Link V4.08版。即JLINK的上位机(驱动)。
2. ADS1.2。即代码编写和仿真软件(附带AXD调试工具)
五、调试过程
1.首先给开发板上电,不要考虑何种启动方式nandFLASH或NorFLASH(实际测试过,因为裸机程序是下载到内存中运行,所以与nand flash或 norflash无关)
2.连接JLINK和开发板
3、打开天祥例程test for tianxiangLEDLED.mcp,make编译一下,无误后点击debug进入AXD模式。
配置configure Target…
配置configure Target 步骤:1、点击”add” 2、选择到JLINK的安装目录:3、选择“JLinkRDI.dll”,会出现如下界面
4、这时,选择右边的“configure”,跳转到“JTAG”项,设置如下(4000K速度比较快速稳定):
其他项使用默认值,选择“确定”,这样就OK了!以上步骤完成后,就会调回AXD界面。在界面下面,会显示连接信息:
5、载入镜像(之前生成的LED.axf文件):现在点击AXD界面上的调试按钮,出现异常,详见下图:
由上述错误提示可知,程序已经跑飞。因为 程序需要下载到内存运行,所以在运行程序前,需要SDRAM进行正确配置。
解决方法:运行AXD前,先运行SDRAM内存的配置脚本(即2440init.txt,必须存放英文路径) 。添加配置脚本步骤:
1、点击options---configure Interface进入下面界面,
2、点击session File选择Run configuretion script 项打钩,同时选择配置脚本2440init.txt的路径
6、成功运行
上述设置成功后,点击go,程序指针指向mian(),表示Jlink可以已成功调试裸机程序。详见下图
其他用法,待完善。
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』