zoukankan      html  css  js  c++  java
  • AXD 的使用

    配置仿真器

    1. 为仿真器安装 Server

    一般的仿真器都对应有一个 Server 程序,所以在使用在线仿真之前,必须先安装这个 Server 程序。我使用

    是 Dragon­ICE 仿真器, 所以先要安装 Dragon­ICE Server 程序。 2. 连接仿真器

    把 dragon­ICE 仿真器的 JTAG 口连接上 ARM 板(注意:ARM 板要断电连接), 另一端通过并口连接到 PC 上, 有的仿真器是通过 USB 口连接到 PC 上, 这与仿真器的硬件相关。连接好后, 打开 ARM 电源,启动 ARM 板。 当 ARM 通电启动后,启动 Dragon­ICE Server 检测 ARM 板,详细步骤及设置参见对应的仿真器手册。我的 dragon­ICE Server 启动, 按”自动检测”可以检测到 ARM920T。

    启动 AXD 配置开发板

    1. 启动 AXD

    先启动 Dragon­ICE Server 程序.

    按如下步聚启动 AXD:

    开始­>所有程序­>ARM Developer Suite v1.2­>AXD Debugger

    2. 装载仿真器库文件

    从 AXD 菜单的 Options­­> Configure Target...启动”Choose Target”目标板配置窗口.

    在”Choose Target”窗口中,点击”Add”按钮,选择仿真器的库文件. 我的仿真器服务器程序安装在 c:Dragon­ICE 下,所以选择项 c:Dragon­ICEdragon­ice.dll 文件.

    3. 为 AXD 在线仿真配置仿真器

    在"Target Environments"中选中 Dragon­ICE 中,点击右边的"Configure"按钮.

    在”FJB Dragon­ICE Release v1.2”窗口点击"This computer..."按钮,再点击"OK"按钮。 回到”Choose Target”窗口,点击"OK"按钮。完成配置.

    回到主界面, 在右边的”Target”窗口会出现 ARM920T_0.这表明 AXD 已经进入 ARM 板的在线仿真状态. 点击菜单"System Views"­­>"Controls Monitors".会出现"ARM920T­Register"窗口.此时,会显示当前 ARM 板上所 有寄存器的状态。

    4. 配置 ARM 板

    如果 ARM 板通电后,没有程序运行并把内存区控制寄存器配置好的说,外部 RAM 是不能使用的. 所以必须 通过仿真器来设置这些寄存器. 如果 ARM 板已经有启动程序并且已经配置好, 这一步可以省略.

    首先把 2410cfg.txt 拷贝到 c:下.

    回到 AXD 主界面, 从菜单”System Views” ­­> “Command Line Interface”。会出现一个 Command Line Interface 的调试命令行窗口,并显示如下提示符:

    Debug >

    输入 obey c:2410cfg.txt 装载所有配置命令. Debug >obey c:2410cfg.txt

    5. 2410cfg.txt 文件说明 sreg psr, 0x00000013

    ;设置当前 CPSR 的值, 把 CPU 的模式切换到 SVC 模式和 32 位指令集, 关闭 IRQ 和 FIQ。

    smem 0x53000000,0,32

    ;设置看门狗控制寄存器 WTCON

    ;禁止看门狗定时器

    smem 0x4C000004,((0x74<<12)+(0x3<<4)+0x1),32

    ;设置主频率设置寄存器 MPLLCON

    ;目前 CPU 的工作频率 FCLK 是 124.00MHz smem 0x4C000014,0x3,32

    ;设置时钟分频寄存器 CLKDIVN

    ;设置 FCLK/HCLK/PCLK 的频率比例 1:2:4

    smem 0x48000000,((2<<28)+(2<<24)+(1<<20)+(1<<16)+(1<<12)+(1<<8)+(1<<4)+0),32

    ;设置内存总线控制 BWSCON

    ;SDRAM BANK 6&7 is 32 位

    ;其它 BANK is 16 位

    smem 0x48000004,((3<<13)+(3<<11)+(7<<8)+(3<<6)+(3<<4)+(3<<2)+3),32

    ;设置寄存器区 0 控制寄存器:BANKCON0 smem 0x4800001c,((3<<15)+(1<<2)+1),32

    ;设置寄存器区 6 控制寄存器: BANKCON6(SDRAM)

    ;RAS to CAS 延时 3 时钟周期

    ;列地址是 9 位

    smem 0x48000020,((3<<15)+(1<<2)+1),32

    ;设置寄存器区 7 控制寄存器: BANKCON7(SDRAM)

    ;RAS to CAS 延时 3 时钟周期

    ;列地址是 9 位

    smem 0x48000024,((1<<23)+(3<<18)+(2<<16)+1113),32

    ;set 外部 RAM 刷新寄存器:REFRESH

    ;允许自刷新

    ;HCLK=FCLK/2, 60MHz,刷新计算器是 1113 smem 0x48000028,0x31,32

    ;设置寄存器的大小

    ;禁止 burst 操作

    ;允许 SDRAM power down 模式

    ;SCLK 在访问期间仍在活动状态

    ;SDRAM 模式寄存器设置 smem 0x4800002c,0x30,32 smem 0x48000030,0x30,32

    使用 AXD 在线仿真调试程序

    1. 装载可执行的文件

    AXD 只支持.axf 格式的可执行文件.

    启动 AXD, 在菜单的 File 中,选择 Load Image..., 选择 c:adsbloadterprjprj_DataDebugRelprj.axf 加载执行 image. 就可以执行并调试了. AXD 提供了非常方便的调试手段, 包括在线单步, 自由设置断点等.

  • 相关阅读:
    OpenStack trove原理及配置实践
    [转]在首席架构师手里,应用架构如此设计
    Servlet入门(一),超级详细!!!看完就会!!!!
    Redis入门
    Linux笔记02—Linux进阶应用
    Linux笔记01—linux基础入门
    Linux笔记00—计算机概论
    Linux上安装jdk
    SpringBoot入门
    排查问题的五个步骤
  • 原文地址:https://www.cnblogs.com/niezhongle/p/11088617.html
Copyright © 2011-2022 走看看