文章目录
一.对“CodeWarrior for ARM Developer Suite”编译环境进行设置
在进行编译和链接之前,首先需要对生成的目标进行配置,点Edit菜单,选择“DebugRel Setting…”(注意:这个选项会因为用户选择的不同目标而有所不同),出现如图所示的设置窗口。对设置进行如下修改,即可!
使用J-link进行代码调试
使用J-link连接mini2440进行仿真的步骤:优快云
在调试过程中的注意点:要将S2按键调到NOR一端(要把映像文件加载到SDRAM中)
关于GO之后没有反应的情况;参考
要把映像文件加载到SDRAM中,除了要正确设置好映像文件的RO段基地址外(对于一个加载时域和运行时域相同的映像文件来说,RO段基地址实际上就是该 映像文件在存储空间的起始地址),更关键的是要对SDRAM进行初始化。因为在上电时,SDRAM是没有被初始化的,所谓初始化SDRAM,就是要设置处 理器的SDRAM空间以及读写SDRAM的时序参数,因而SDRAM在初始化之前是不能进行读写操作的。
启动AXD时自 动初始化SDRAM:将初始化SDRAM的命令序列保存为一个2440init.txt文本文件(代码如下),然后在AXD的主窗口下选择菜单 Options->Configure Interface…,在Session File一页中选择“Run Configuration Script”,将该2440init.txt文本文件作为一个脚本加进来,确定。这样以后每次启动AXD时,就会自动运行该脚本来完成对SDRAM的初始化。
mem 0x53000000,0x00000000,32
setmem 0x4a000008,0xffffffff,32
setmem 0x4a00001c,0x00007fff,32
setmem 0x48000000,0x2212d110,32
setmem 0x48000004,0x00000f40,32
setmem 0x48000008,0x00002e50,32
setmem 0x4800000c,0x00002e50,32
setmem 0x48000010,0x00002e50,32
setmem 0x48000014,0x00002e50,32
setmem 0x48000018,0x00002e50,32
setmem 0x4800001c,0x00018005,32
setmem 0x48000020,0x00018005,32
setmem 0x48000024,0x00960542,32
setmem 0x48000028,0x00000032,32
setmem 0x4800002c,0x00000030,32
setmem 0x48000030,0x00000030,32
在检查哪里错误的时候我也进行如下的修改:
软件的兼容性设置,以及将SEGGER J-link GDB Server V3.96a由Little endian修改成big endian [链接找不到了],效果:在调试的时候电压正常了,变成了3.29V
修改not reset选项(对我的错误无效):[详情]