加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSSRSS-巴斯仪表网
您当前的位置:首页 > 电子发烧 > 单片机学习

使用ads1.2调试2440开发板的过程

时间:2013-09-08  来源:123485.com  作者:9stone

    因为偶是个新手,所以就从这里入手的.
    其实我想做arm-linux学习,以后这个方法可能用的不多,因为可以用linux下的gdb软件了.既然是学习就先从简单开始吧, 先用这个方法做以下两件事:
 1.用他来调试bootlaoder
 2.用他来配合linux驱动的开发,在作驱动开发前可以用ads将寄存器的设置等硬件紧密相关的部分调试好,然后将调试好的部分合并到linux驱动中,这样可以加快调试速度(对于很熟悉和简单的自然是用不着这样了)

    要用ads进行在线调试目标机需要目标机有jtag或在目标机上有angel调试代理软件,因为调试代理软件要占用硬件资源,且目前jtag接口也被大多的芯片所支持,所以目前更多是用jtag方式.另外还需要wiggler小板或其他和jtag代理工具.  用jtag方式需要做的工作是:

  1. 安装ads
  2. 安装并口驱动
  3. 安装jtag代理软件(直接运行)
  4. 用ads建立工程
  5. 设置工程(程序入口点,ro rw 存储器位置等)
  6. 添加程序文件和头文件
  7. .编译
  8. 调试(启动axd)
  9. 对axd 目标连接做好设置
  10. 通过axd 命令行对目标机做必要的设置

  11. 装载目标机代码进行调试

一.安装ads: 略
二.安装并口驱动:   

 
 
三.连接jtag线,运行jtag代理软件:
      我有arm9-jtag和H-Jtag。我用的是yl的wiggler兼容小板

 
四.建立ads工程文件和相关设置:

相关设置如下

设置RoRw起始地址

 

设置入口点

 

 

编译设置,c和汇编,c++设置类似

 

连接设置

 

 

 五.添加文件并编译文件

 六.启动和设置axd

 

选择options->configure Target....

 

选adp.... 点Configure按钮

 

选Arm ethernet driver address 为127.0.0.1点OK后,如果连接没问题axd应该正确启动目标

七.通过axd命令行对目标板进行设置

      因为我用的yl的2440板是配置为 nand 启动的,sdram是在0x30000000地址的,所以需要先对存储器控制寄存器进行设置,在axd下设置方法是:选 systems views->command lines interface,输入如下命令对寄存器设置

                      地址               值               长度
setmem 0x53000000, 0x00000000,  32

还可以将要设置的寄存器写入一个文件,在命令行用ob(obey) config.ini即可批量执行设置指令或在

options->Configure Interface 中做如下设置

 

我的config文件内容如下:

setmem 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

如果设置正确则开发版的SDRAM生效,则可以加载目标代码了

八.装载目标文件下载到目标机进行调试

九. 小提示:

    1、因为我的开发板是nand 启动的,以上调试程序又加载到0x31f00000处执行,所以根本没有处理异常向量,所以调试过程中没有开中断,如果要开中断则要正确设置异常向量。

    2、有写寄存器要尽量避免axd去读,因为这样可能导致错误的出现。


分享到:
来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
栏目导航->单片机学习
  • 电子应用基础
  • 电源技术
  • 无线传输技术
  • 信号处理
  • PCB设计
  • EDA技术
  • 单片机学习
  • 电子工具设备
  • 技术文章
  • 精彩拆解欣赏
  • 推荐资讯
    使用普通运放的仪表放大器
    使用普通运放的仪表放
    3V与5V混合系统中逻辑器接口问题
    3V与5V混合系统中逻辑
    数字PID控制及其改进算法的应用
    数字PID控制及其改进
    恶劣环境下的高性价比AD信号处理数据采集系统
    恶劣环境下的高性价比
    栏目更新
    栏目热门