arm实验报告jtag.docx

上传人:b****6 文档编号:7723705 上传时间:2023-01-26 格式:DOCX 页数:14 大小:1.22MB
下载 相关 举报
arm实验报告jtag.docx_第1页
第1页 / 共14页
arm实验报告jtag.docx_第2页
第2页 / 共14页
arm实验报告jtag.docx_第3页
第3页 / 共14页
arm实验报告jtag.docx_第4页
第4页 / 共14页
arm实验报告jtag.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

arm实验报告jtag.docx

《arm实验报告jtag.docx》由会员分享,可在线阅读,更多相关《arm实验报告jtag.docx(14页珍藏版)》请在冰豆网上搜索。

arm实验报告jtag.docx

arm实验报告jtag

实验二JTAG下载和调试实验

一、实验目的

1、熟悉Multie-Serve:

与7TAG下载的方法;

2,熟悉ADS开发环境中“Debugger”组建的使用;

3,熟悉掌握ADS调试程序的方法。

二、实验内容

1、正确连接实验系统硬件系统;

2、使用Multie-Server建立主机与实验板的连接;

3、学习下载工程到实验板;

4、学习单步调试程序。

三、实验设备

1、硬件:

DM2410B+实验系统;PC机;JTAG仿真器;串口线。

2、软件:

PC机操作系统(W工NDOWS2000);ARMDeveloperSuitev1.2;Multi-ICEV2.2.5(Build1319);DNW2410(或超级终端)。

四、预备知识

1、了解ARM体系结构;

2、了解ARM汇编语言;

3、掌握C,C++语言;

4、掌握“实验一ADS开发环境实验”内容。

五、基础知识

1,ARM7TAG接口电路

7TAG(7ointTestActionGroup,联合测试行动小组)是一种国际标准测试协议,主要用于芯片内部测试及对系统进行仿真、调试,7TAG技术是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路TAPCTestAccessPort,测试访问口),通过专用的7TAG测试工具对内部节点进行测试。

目前大多数比较复杂的器件都支持7TAG协议,如ARM,DSP,FPGA器件等。

标准的7TAG接口是4线:

TMS,TCK,TDI,TDO,分别为测试模式选择、测试时钟、测试数据输入和测试数据输出。

JTAG测试允许多个器件通过7TAG接口串联在一起,形成一个7TAG链,能实现对各个器件分别测试07TAG接口还常用于实现ISPCIn-SystemProgrammable在系统编程)功能,如对FLAS器件进行编程等。

通过JTAG接口,可对芯片内部的所有部件进行访问,因而是开发调试嵌入式系统的一种简洁高效的手段。

目前7TAG接口的连接有两种标准,即14针接口和20针接口,其定义分别如下所下。

14针JTAG接日的定义:

图2-114针JTAG接日的定义

图2-220针JTAG接口定义

2.ARMTTAG的主要特征:

—支持所有内建embedded-ICE逻辑单元的ARM处理器;

—支持多个内核系统;

—连接简便兼容不同电压的目标系统;

—除JTAG扫描链外不占用目标板上的其它任何资源;

—支持实时硬件断点;

—用户可通过」TAG修改寄存器存储器内容;

—支持程序下载及实时调试;

—通信速度快最高可达lalwlbpps;

—JTAG速度可配置以满足不同调试对象的需求;

—支持所有符合I}DI1.5a或I}DI1.51规范的调试工具软件;

—提供丰富的例程和使用说明;

—支持多种目标平台如ATMEL,SamSung,Intel,Philips,SharpCirrus,Logic,Tricend等;

—体积轻巧性能稳定。

3、Muhi一工CE5erver简介

Multi一ICEServer是由ARM公司提供的Wind。

二操作系统下ARMJTAG的配置程序。

通过它可以使ARMJTAG与目标板建立通讯连接,并能够反馈目标板上ARM处理器的硬件信息。

Multi一工CEServer可以适应大多数JTAG仿真器而不需要其它特别的驱动。

这个软件为主机(上位机)和实验板(下位机)之间打建了软件的桥梁(硬件的桥梁就是仿真器)。

在工程的下载,调试,单步运行中这个软件要始终打开。

六、实验步骤

1、按照“实验一ADS开发环境实验”的方法将附录光盘上的“ADS实验指导\JTAG下载和调试实验”目录拷贝到“D:

/ADS实验”中打开并编译。

编译后在D:

/ADS实验/JTAG下载和调试实验中产生了一个“1J丁AG_Data”文件夹,其中的“/DebugRel”文件夹下的“JTAG.axf”就是用来调试的可执行文件。

这个工程完成了进行累加的简单任务。

代码非常简单,不再进行讲解,其中调用的Uart_Printf()函数完成串口终端打印功能,使用方法和参数可以比照printf()函数。

voidJtag_Test()

{inti=0,j=1,k=0;

Uart_Printf("---JTAGTEST!

---\n");

k=i+j;

Uart_Printf("fengyankun2008081220:

%d\n",k);

}

2、正确连接硬件

如下图连接硬件:

图2-3硬件连接图

其中并口线用于连接主机与仿真器,扁平电缆用于连接仿真器与实验板。

串口线用来连接实验板的串口1和PC机的串口(本实验中以COM1为例)。

实验板与仿真器均使用+5V直流电源,接口内正外负。

连接电源,并打开仿真器和实验板的电源。

注意

A:

应该先连接硬件再接通实验系统的电源。

B:

JTAG接口严禁带电热。

C:

实验中使用的串口线为“交叉线”,请使用实验系统中提供的串口线.

3、设晋Multi-ICESerer

MulTi一ICESerer的主界面如图2一4所示:

图2一4Multi-ICEServer的主界面

在左上方是工具栏,总共四个功能按钮:

图2一5功能按钮

在此上方是六个菜单选项,这里主要介绍几个重要的设置菜单:

1)File菜单:

LoadConfigurati。

一读取用户指定的配置文件,对仿真器进行手动配置;

Au七。

-Configure—自动检测和配置目标系统;

:

.Au七o-Configureat20KHz—自动检测和配置目标系统,并且设置TCK信号的频率为

20KHz;

.Rese七Targe七—对目标系统复位有效的复位信号在Se七七ing/JTAGse七七ings菜单或配置

文件中设置;

.Log输出信息存储到指定的日志文件中;

.Se七LogFile—用于指定日志文件的路径和名字。

2)View菜单:

用于控制Multi-ICE程序界面外观和显示信息。

.Toolbar—关闭或打开工具栏;

 

.StatusBar—关闭或打开状态栏;

.RPCCalls—允许或屏蔽RPC信息在调试信息窗日中显示。

3)RunControl菜单:

用于控制各个处理器的运行和停止。

.工ndependent一一使每个目标系统直接相互独立,不进行交互通信,缺省状态有效;

.AllRun-一启动所有的目标系统;

.AllRun/Stop—当收到一条启动指令时启动所有的目标系统;当任何一个目标系统停止

时其它的系统也一起停止;

.Custom—执行用户自定义的设置;

.Set-upCustom—打开用户自定义设置窗日,设置各个目标系统之间的交互方式;

.LoadSettings—读取以前保存下来的设置文件;

.SaveSettings—把当前设置保存到文件。

4)Connection菜单

这个菜单在调试程序和Server建立连接之后才有效。

它会给每一个TAP控制器分配一个菜单项,

为用户提供单独删除某个TAP控制器的选项。

5)Setting菜单:

用来设置各种接口信息。

.PortSettings一一显示并口设置对话框,用来选择并口的地址和是否使用4-bit通信模式,

同时显示当前的并口类型设置(在PC机的B工OS中要把并口模式选择为EPP);

UserOutputBits

JTAGSettings-

当前版本的Server程序保留使用;

显示JTAG日的设置对话框,用来设置JTAG日相关的时序信息和复位行

:

为。

如果调用了配置文件则相应的设置会在窗口中反映出来;

.Start-upOptions—显示设置启动选项的对话框。

Mufti-ICE的各种状态

在Mufti一工CEServer的TAP信息显示区可以直观的显示当前系统状态。

各状态的图示如下:

1)配置后的状态

通过自动检测,在TAP配置显示区用图形的方式直观的显示出了检测结果。

内核的类型名称

ARM920T显示为绿色,并且前面有一个表示内核状态的字母「x」,表示Mufti一工CEServer目前还没有

连接到任何调试程序中,处理器类型未知或没有被调用。

另外,双击处理器类型名字会弹出目标处理器附加信息窗口:

2)连接后的状态

如果有调试程序通过Mul七i工CE.dll与Mul七i一工CE建立了连接,则Multi-CE的状态如下图所示。

字母「引表示已建立连接但处理器正处于暂停空闲状态。

处理器名字变为红色,同时信息窗口中的信息增加了相应的内容。

3)激活后的Multi-ICE的活动状态有下载和运行两种。

下载时的字母是[D],表示处理器处于下载状态;运行时的字母是「R],表示处理器处于运行状态。

当下载操作完成或停止运行后状态字母马上变回「S」。

图2一9是处理器运行时的界面:

5、对S3C2410进行初始化

我们在上一节实验中我们提到了一个“reset.ini”文件,这个文件是对S3C2410进行初始化的一段代码。

我们知道,当CPU在启动时内部很多寄存器状态是不确定的,在程序运行特别是单步调试中可能出现不可预料的错误,如程序“跑飞”等。

所以我们要对CPU进行初始化,这个工作一般由BIAS完成,我们这里进行单步调试,不使用BIAS启动,所以要进行手工初始化。

点击菜单栏Systemviews-CommandLineInterfaceC或Alt-L)在下面的窗口中出现Command

LineInterface窗口如图2-18:

6、下载工程可执行二进制文件到实验板

在AXD中点击菜单栏“File-LaadImage”出现图2-21的窗口:

选中路径是“DaADS实验1JTAG下载和调试实验1VTAGesDatalDehugRel”中的JTAGaxf7执行女件,并打开。

出现图2-22的调试窗口:

z,调试程序

我们看到上图中标号i的圆内蓝色箭头表示程序当前即将运行的位置。

在程序某一个行号前的空白处双击,就可以出现标号为a的圆内的红色圆点,这是程序运行的断点,当程序运行到这个位置时会自动停下来等待调试人员调试。

再次双击这里就会取消这个断点。

标号3的圆内是单步调试相关的按钮。

里的是运行停按、。

这是STEPIN按钮,表示。

[进函数或子程序,按这个按钮是真正的‘·单步调试夕,,可以一行代码的调试。

这是STEP按钮,按这个按钮将。

过函数体或子程序内部,可以更清晰的理清程序脉络

首先打开附录光盘提供的“DNW}O.SOA”工具软件。

这个工具是一个方便的串口IUSB终端。

其串口终端功能类似于WINDgWS操作系统提供的超级终端。

首先打开附录光盘提供的“DNW}O.SOA”工具软件。

这个工具是一个方便的串口IUSB终端。

其串口终端功能类似于WINDgWS操作系统提供的超级终端。

点击菜单栏的“Confi}ration-Option",出现图2-24对话框:

做如图2-24的设置,点击“OK"。

其中“COM”根据串口线插入主机时选择的主机串口决定点击SerialPart-Connect可以看到标题栏中的内容变为:

表示已经连接。

按setout按钮跳出这个函数。

在ADD()函数上点上光标,点击STEPLTRSOR,可以看到程序停在了这个函数。

DNWv0.50A护显示UartPrintfC)函数通过串口打印的信息:

实验结果及程序分析:

主程序分析:

#include"def.h"

#include"option.h"

#include"2410addr.h"

#include"2410lib.h"

#include"2410slib.h"

voidJtag_Test()

{

inti=0,j=1,k=0;定义变量

Uart_Printf("---xiaoxinghuisunshumeng---\n");打印出“---xiaoxinghuisunshumeng---”

k=i+j;

Uart_Printf("Sumofiandjis:

%d\n",k);打印出Sumofiandjis1

}

六、试验心得

熟悉Multie-Serve:

与7TAG下载的方法ADS开发环境中Debugger组建的使用以及ADS调试程序的方法。

使用Multie-Server建立主机与实验板的连接;学习下载工程到实验板;学习单步调试程序。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1