JTAG仿真器使用方法_gz
JTAGICE MKII使用方法-AVR
JTAGICE MKII仿真器使用方法一:硬件和软件的准备1. 仿真器上需要接一个ISP-10PIN的转换线(实物已经接好);2.不能将WDAM的JP1那一行VCC和GND的管脚拆下,仿真器不能提供电源,但是需要接上VCC和GND;3. WDAM需要外部供电;4.需要将与RESET管脚连接的容性器件拆下,即将R39的电容拆下;5.安装AVR studio4(仿真器也可与AVR studio5或者AVR studio6一起使用,但我是用AVR studio4测试的,所以建议使用AVR studio4)二、烧写程序1.打开AVR studio4,选择Tools-Program-connect,弹出如下对话框,依次选择2.选择完后,弹出另一对话框,依次按如下选择,即可完成程序下载三、仿真1、打开AVR studio4,选择project-projectWizard,弹出如下对话框,点击OPEN,选择我们用ICCAVR编写的程序的工程文件里的.COF文件2.上面那步操作完后会弹出如下对话框,按图依次选择3.如果MCU没有使能DWEN熔丝位,会弹出如下对话框,选择”Use SPI to enable debugWIRE interface”,点击OK后,会弹出一个对话框,提示需要重启设备,此时我们重新启动WDAM后,点击确定,即可进入仿真界面三、取消DWEN的使能1、打开AVR studio4,选择project-projectWizard,弹出如下对话框,点击OPEN,随意选择我们用ICCAVR编写的程序的工程文件里的.COF文件2.上面那步操作完后会弹出如下对话框,按图依次选择3.选择完,进入如下画面,点击“Disable debugWIRE”,弹出对话框,点击确定,就取消DWEN的使能。
如需烧录程序,还需要重启仿真器和WDAM还有AVR studio4。
JTAG ISP 二合一编程仿真器 说明书 V1.0
JTAG & ISP二合一编程仿真器使用说明书 V1.0一、 简介1、产品概述AVR JTAG & ISP是一款集成了AVR JTAG和AVR ISP的双功能多用途的仿真、编程一体机,与AVR Studio(AVR Studio 4.09 或更高版本才能使用AVR JTAG & ISP)相结合,通过COM 或USB 可以对所有带JTAG 接口的AVR 单片机进行在片调试(On-ChipDebugging)和编程,同时支持AVR 全系列单片机的ISP程序下载。
实现了JTAG ISP双功能单芯片的完美结合。
2、产品特点①JTAG和ISP功能的完美单芯片解决方案,大幅降低A VR入门成本。
②JTAG和ISP功能分别与ATMEL A VR JTAGICE和ATMEL A VR ISP完全兼容。
③彻底防错插功能,即插即用。
④目标自动识别,无需跳线或开关转换。
⑤自动实现系统重启,无需电源开关和复位键。
⑥实现与A VR Studio 无缝连接,仿真、下载、编程同步实现。
⑦在片仿真芯片的数字和模拟功能,完全实现AVR 单片机的所有的电性能。
⑧采用USB 或 RS232 接口与PC 连接,由PC 进行编程和控制。
⑨多种供电方式选择,宽电压自适应3.3~20V,目标板供电、USB供电、电源供电。
⑩支持全系列A VR单片机的ISP下载和具有JTAG接口的在片仿真。
支持列表如下:ISP下载:AT Tiny系列:ATtiny12、ATtiny13、ATtiny15、ATtiny22、ATtiny24、ATtiny26、ATtiny2313 AT90系列:AT90S1200、AT90S2313、AT90S/LS2323、AT90S/LS2343、AT90S/LS2333、AT90S4414、AT90S/LS4433、AT90S/LS4434、AT90S8515、AT90S/LS8535ATMega系列:ATmega8、ATmega16、ATmega32、ATmega48、ATmega64、ATmega88、ATmega103、ATmega128、ATmega161、ATmega162、ATmega163、ATmega165、ATmega169、ATmega323、ATmega325、ATmega329、ATmega644、ATmega645、ATmega649、ATmega2560、ATmega2561、ATmega3250、ATmega3290、ATmega6450、ATmega6490、ATmega8515、ATmega8535、AT90CAN128、AT90PWM2、AT90PWM3 其他:AT86RF401、AT89S51、AT89S52JTAG仿真(具有JTAG 接口):AT90CAN128、ATmega128、ATmega128L、ATmega16、ATmega162、ATmega162V、ATmega165、ATmega165V、ATmega169、ATmega169V、ATmega16L、 ATmega32、 ATmega323、 ATmega323L、ATmega32L、ATmega64、 ATmega64L3、产品清单① AVR JTAG & ISP 快速入门手册 1本② 带有扁平连线的AVR JTAG & ISP 1台③ USB 连接线 1条④ 9 脚的RS232 连接线 1条⑤ 直流(DC)电源电缆 1条⑥光盘 1张4、系统要求PC 软硬件至少满足:• Pentium (PentiumⅡ或以上)• 64 MB RAM• 100 MB 空余硬盘空间(用来来安装AVR Studio 4.XX)• Windows 95, Windows 98, Windows NT4.0 或更高版本的Windows 操作系统如Windows 2000 或Windows XP• 115200 波特率的RS-232 口(COM port), USB 接口(推荐)• 9-15VDC.9VAC 如果使用USB 可以不使用.5、关键术语JTAG:JTAG 接口是一个符合IEEE 1149.1 标准的4 线的测试存取端口控制器(Test Access Port (TAP)controller)。
JTAG仿真器使用方法图文教程
JTAG仿真器使⽤⽅法图⽂教程本⽂主要介绍USBJTAG的使⽤⽅法,该仿真器既可以⽤做JTAG放着器给AVR芯⽚下载程序以及仿真,也可以⽤来给STC89C系列的芯⽚下载程序。
本⽂主要分为以下⼏个部分:JTAG简介、AVRJTAG仿真器⼯作原理、JTAG仿真器上的跳线设置、JTAG驱动安装、JTAG仿真器的验证。
1、什么是JTAG仿真器JTAG仿真器,也叫JTAG调试器,即⼀种采⽤JTAG协议进⾏调试和下载的器件。
JTAG也是⼀种国际标准测试协议(IEEE 1149.1兼容),主要⽤于芯⽚内部测试。
现在多数的⾼级器件都⽀持JTAG协议,如DSP、FPGA器件等。
标准的JTAG接⼝是4线:TMS(模式选择)、TCK(时钟)、TDI(数据输⼊)、TDO(数据输出)。
相关JTAG引脚的定义为:TCK为测试时钟输⼊;TDI为测试数据输⼊,数据通过TDI引脚输⼊JTAG接⼝;TDO为测试数据输出,数据通过TDO引脚从JTAG 接⼝输出;TMS为测试模式选择,TMS⽤来设置JTAG接⼝处于某种特定的测试模式;TRST为测试复位,输⼊引脚,低电平有效。
这⾥主要介绍的是AVR的JTAG仿真器,由于每个器件对应的上位机软件(PC上运⾏的软件)实现⽅式不同,所以不同器件的JTAG仿真器是不能够通⽤的。
AVR使⽤的JTAG接⼝是4线接⼝,但是现在⽹上普遍流⾏的做法是,在JTAG接⼝中加⼊AVR器件的复位(RST)引脚,2个电源引脚(VCC)、2个地引脚(GND)、⼀个空引脚(NC)⼀共是10个引脚,并且这10个引脚有固定的引脚排序。
如下图:2、AVRJTAG仿真器⼯作原理AVR的JTAG仿真器上位机软件均采⽤atmel公司的AVRStudio开发环境,仿真器的硬件电路主要使⽤⼀⽚ATmega16芯⽚来实现。
仿真器硬件和上位机的软件通信使⽤串⼝通信协议,如下图:并不是所有的AVR单⽚机芯⽚都⽀持JTAG仿真和下载,查看是否⽀持JTAG,主要查看芯⽚的引脚⼿册,如果芯⽚的引脚含有TMS、TCK、TDI、TDO这⼏个引脚则说明改芯⽚⽀持JTAG,如果没有这⼏个引脚则不⽀持JTAG。
仿真器使用说明书
1 ARM_STAR仿真器简介功能介绍ARM_Star 仿真器是一款为广大ARM工作者设计的高性能仿真器,ARM_Star仿真器完全实现ARM RDI 1.5和RDI 1.51协议,与ARM Multi-ICE™ 兼容,支持所有含有Embedded-ICE Logic的ARM 内核CPU, 在调试软件的控制下,ARM_Star仿真器可以停止、启动ARM CPU的运行,用户通过ARM_Star仿真器察看、修改寄存器,存储器,设置断点、单步执行,下载烧写Flash程序等。
主要特点:程序下载速度快与PC机的通信速度最高可达到12M, 下载速度达到100K---200Kbytes每秒,单步速度可达85步每秒。
支持调试软件多支持的调试软件有ADS、SDT、GreenHill Multi2000、IAREWARM等,极大地方便了用户。
支持CPU种类丰富支持几乎所有含ARM内核CPU, 如ARM7、ARM9、ARM10、Intel Xscale等JTAG口频率可编程,支持各类不同性能目标板开放式接口支持多个内核串联的CPU调试,极大的体现了JTAG调试器的优势。
无需外加电源ARM_Star仿真器功耗低,可以直接从目标板取电,和目标板共用一个电源系统,使用及外出携带方便免费升级由于ARM_Star的FirmWare是每次上电时直接下载到仿真器的,所以,用户可以随时使用最新版本。
2 ARM_STAR仿真器硬件使用方法2.1 ARM_STAR仿真器对PC机的配置要求:系统环境Win95, Win98, Windows Me, Win2000, Windows XP Windows NT 4.0 及以上版本。
硬件环境Pentium 200MHz 以上CPU64M 内存300M 硬盘空间计算机并行口2.2 ARM_STAR仿真器的功能框图DB25并行接口用于仿真器跟PC机的通信,连接线为普通并口延长线。
20针IDC20 JTAG接口用于连接仿真器和目标板的JTAG口。
AVR USB JTAG 仿真器使用说明
AVR JTAG AVR仿真器V3使用说明AVR JTAG是与Atmel公司的AVR Studio相配合的一套完整的基于JTAG接口的片上调试工具,支持所有AVR的8位RISC指令的带JTAG口的微处理器。
JTAG接口是一个4线的符合IEEE 1149.1标准的测试接入端口(TAP)控制器。
IEEE的标准提供一种行之有效的电路板连接性测试的标准方法(边界扫描)。
Atmel的AVR器件已经扩展了支持完全编程和片上调试的功能。
AVR JTAG仿真器用来进行芯片硬件仿真,如程序单步执行、设置断点等,通过硬件仿真可以了解芯片里面程序的详细运行情况。
AVR JTAG仿真器主要用来对芯片进行仿真操作,同时也可以通过JTAG接口对芯片编程(将程序写入芯片)。
AVR JTAG仿真器图片AVR JTAG连接示意图AVR JTAG仿真器与单片机/开发板连接方法:以ATMEGA16和ATMEGA128为例:如果使用的不是本店的开发板通电前请参照上面的接口图先确认接口是否对应以免损坏硬件,开发板上的JTAG接口第4与第7针都要与VCC接通。
支持芯片列表:ATmega16(L), ATmega32(L), ATmega323(L), ATmega64(L), ATmega128(L) ,ATmega162(L), ATmega169(L or V)把仿真器直接插到电脑的USB并安装驱动:AVR Studio 软件推荐使用4.18版本,如果你与开发板一起购买在开发板的光盘里有软件,如果没买开发板可到以下网址下载:/dyn/resources/prod_docu ments/AvrStudio4Setup.exe驱动装完后仿真器插电脑USB,右击桌面上“我的电脑”----“管理”----“设备管理器”-----”端口“经以上步骤可以看到比原来多出一个COM口,如下图:记住这个端口等下设置需要用到,或许你的电脑不是COM3,不过没关系,只要是COM4以内就行,如果超过COM4请右击该端口修改为COM4以内就行。
简易JTAG的使用方法
注意:要外接5V电源
记得接5V电源
使用STK200标准下载线
GND
JTAG_ICE JTAG模式是JTAG的正常工作模式。用于对目标板的MCU进行JTAG调试。
要注意: 本简易JTAG建议用ISP模式升级。 ATMEL原厂JTAGICE的帮助文件里面所说的IAP升级,在本JTAG中无效。 "JTAG ICE Manual Firmware Upgrade" ( 使用了AVRprog的BootLoader模式 IAP应用) IAP升级过程为: 要先编程"BOOTRTS",然后用AVRProg升级*.ebn,最后要把"BOOTRST"恢复为未编程状态 (网上发布的JTAG BootLoader在AVRProg中都显示为ATMEGA163且校验失败) 原厂JTAG里面的AT90S2313(or1200)的作用就是改写M16的"BOOTRTS"熔丝。 升级过程中连接目标板是为了获得5V电源,但跟目标板的MCU没任何关系。(如果外接电源就不用接目标板了) PS:通过这个方法可以获得ISP模式所用的*.bin文件----用*.ebn升级后把M16的内容读出来保存为*.bin就成了。
A
1
2
3
断开才能检测目标板的电压
JP1 TCK_O TDO_I TMS_O Vsupply TDI_O 1 3 5 7 9 2 4 6 8 10 VTref_I GND
10pin软排线连接
JP3 SCK_O MISO_O Vsupply MOSI_I 1 3 5 7 9 2 4 6 8 10 nRESET_I GND C
VCC
4.05V@VTref=5V
RT2 150K
MOSI_O nRST_O SCK_I MISO_I
什么是JTAG及其使用方法?
什么是JTAG及其使用方法?
JTAG不仅仅用于调试和下载程序
你可能熟悉JTAG是因为你使用过带有JTAG接口的工具。
处理器经常使用JTAG来实现调试/仿真功能,而且所有的FPGA和CPLD 都利用JTAG来实现下载程序功能。
JTAG不仅仅是一种用于处理器调试/仿真的技术
JTAG不仅仅是一种为FPGA/CPLD下载程序的技术
通常与JTAG有关的调试和编程工具仅仅利用了潜在技术的一个方面即四线JTAG通讯协议。
这四种信号,作为测试访问端口(TAP)而广为人知。
它是IEEE 1149.1. 标准的一部分。
开发该标准的目的在于提供一种印刷电路板组件(PCBA)测试的技术。
这种技术不需要针床测试的物理访问,也不像功能测试那样需要定制开发量。
设计TAP来与新的寄存器进行交互,这些新的寄存器被添加到器件中,以便实现这种测试方法。
但是很快半导体制造商就意识到了使用TAP来访问寄存器,可以提供其它功能如调试和编程。
专门用于JTAG测试而加入到器件中的寄存器主要是边界扫描寄存器(BSR)。
正如它的名字所示,这个寄存器的单独的位或单元位于器件的边界,处于功能核心与引脚或焊球之间,通过引脚连接到板上JTAG测试经常被称作边界扫描。
JTAG使用说明
JTAG使用说明遵循JTAG的器件包含以下几个管脚TCK 测试时钟输入,它和系统时钟不同TDI测试数据输入,通过它数据移位进入器件TDO测试数据输出,通过它数据从器件移出TMS测试模式选择,在JTAG规范中TMS命令选择测试模式TRST测试复位输入,它为TAP控制器提供异步初始化器件的测试支持功能是通过TAP控制器来实现的。
TAP是一个状态机,它控制控制所有相关操作,每种遵循JTAG的器件都有自己的TAP控制器,通过TCK和TMS可以使状态机内部的状态发生变化,从而支持诸如断点、单步、内部观察等调试工作。
本章针对ARM7TDMI介绍调试结构。
ARM的调试体系采用协议转换器来使调试器通过JTAG与ARM核直接通信。
前面JTAG标准中提到的扫描链功能是测试用,这里把它作为调试用:捕获数据总线上的信号并向内核或存储器插入新的信息。
ARM7TDMI-S核内具有EmbeddedICE逻辑,EmbeddedICE逻辑提供对片内调试的支持。
调试指令直接通过扫描链插入ARM内核并执行。
根据插入调试指令的不同,内核可以处于观察、保存或改变状态。
ARM的调试体系可以使程序指令执行速度处于调试速度或全速运行。
在ARM中采用JTAG的特点是:通过JTAG接口可以观察ARM内核状态和系统状态(注意:系统状态包括片内外设,不同于内核状态);不占用额外的目标系统资源;提供传统的断点访问和观察点访问;不再需要另外的UART端口来和监控程序通信。
围绕ARM内核有两个扫描链:围绕整个内核外围的一个扫描链以及仅仅覆盖数据总线和断点的扫描链。
由于后者的链比较短,从而使调试指令和数据可以快速插入内核,避免了额外的时间ARM系统的JTAG接口的设计不当往往使硬件系统无法调试,所以在设计ARM系统前要先熟悉ARM系统的JTAG接口的定义和常见问题。
1.ARM系统的JTAG接口是如何定义的?每个PIN又是如何连接的?下图是JTAG接口的信号排列示意:接口是一个20脚的IDC插座。
仿真器OSJTAG for DSC使用说明
实物照片一、功能特性1.支持通过USB接口与PC机建立USB2.0全速连接,支持通过USB接口方便的对飞思卡尔微控制器进行编程下载和在线调试仿真。
2.支持通过仿真器向目标板(Target)输出可配置的不供应、供应5V、供应3.3V电源,由硬件跳线选择控制(JP2,默认为供应3.3V)。
3.目标板(Target)电压范围:1.6V-5.25V。
4.目标板(Target)频率范围:16KHz-150MHz。
5.包含一条USB线缆(Type A Male to Type B Male)。
6.支持通过USB方式进行固件更新(跳线JP1短接,后插入USB进入Bootloader模式)。
7.支持处理器类型:• 56F8xxx device (56800E Core): MC56F800x,MC56F801x,MC56F803xMC56F824x/5x,MC56F83xx (如常用的DSC:MC56F8346,MC56F8366)8.支持集成开发环境:开发环境须用CodeWarrior for DSC56800E v8.3以上。
9.仿真接口针脚定义:二、调试仿真平台框架三、驱动安装该仿真器的驱动程序会在CodeWarrior IDE安装时复制到系统的驱动文件夹,因此用户需要在使用OSJTAG仿真器前安装CodeWarrior IDE软件。
当用户第一次将OSJTAG仿真器连接到PC的USB端口时,系统会提示由用户安装OSJTAG 仿真器驱动。
以下是安装驱动程序的步骤和说明:1.确保电脑已经安装了CodeWarrior IDE for DSC V8.3或更新的版本。
2.将OSJTAG仿真器插入计算机的USB接口,电脑的状态栏会弹出以下窗口提示发现了OSJTAG仿真器。
该窗口自动消失后,随即弹出“找到新硬件向导”,如下图所示:3.选择“否,暂时不(T)”,单击“下一步”。
序。
5.正在安装OSJTAG驱动……6.自动安装完成后会出现以下对话框,单击“完成”完成OSJTAG调试接口的安装。
JTAG使用方法
1、将giveio.sys拷贝到c:\windows\system32\drivers\目录下;2、运行loaddrv.exe,并将路径改成c:\windows\system32\drivers\giveio.sys 然后依次点击INSTALL,START;3. 运行“JTAG修复”,按照选项提示即可。
(如果原始版本JTAG程序使用的话,打开一个DOS窗口,然后运行wrt54g -flash:cfe即可,当然CFE.BIN文件得放在同一目录内,最好在C盘根目录下建立一个temp文件夹,将所有的文件放那里面即可。
)使用非汉化版本时,请参考下面命令:1.为安全起见先备份一下cfe、kernel、nvram 使用命令Jtag -backup:cfeJtag -backup:nvramJtag -backup:kernel2.擦除cfe、kernel、nvram使用命令Jtag -erase:cfeJtag -erase:nvramJtag -erase:kernel3. 再次备份一下cfe 、kernel 、nvram 为什么要这样做呢,这个过程就是检测擦除过程是否有效并且检测以下jtag 线做的是否过关,因为擦除后所有字节全是FF 。
4.写入cfe 使用命令为(过程较长)并注意在jtag 的目录中要有cfe.bin 这个文件(当然这个文件必须是你路由器上能用的cfe )Jtag -flash:cfe5. 再备份一下cfe ,将本次备份后的文件与你的原cfe文件做一次16进制的对比如果有不一样的地方,那必须在重写一次,曾经有一次我发现有一个字节不同抱着试一试的看法我关电源重起,最后没有启动成功。
6.在第6步没有问题基本上你就成功了,开关电源将路由器重起呵呵,发现路由器的灯和坏掉的时候不一样了吧!哈哈成功了!!!这个时候能在电脑中ping 通192.168.1.1(不是每一个路由器都是这个地址要根据你的路由器cfe文件的定义了)最后当然是用tftp这个软件了。
jtagulator使用方法
jtagulator使用方法
JTAGulator是一种用于识别和定位JTAG接口的工具,它可以
帮助工程师和安全研究人员在硬件设备上找到JTAG接口,并进行进
一步的分析和破解。
以下是关于JTAGulator的使用方法的详细介绍:
1. 连接硬件设备,首先,将JTAGulator通过USB线缆连接到
计算机上。
然后,使用导线将JTAGulator的引脚连接到目标设备上
的JTAG接口。
2. 配置JTAGulator,打开JTAGulator的控制软件,并根据目
标设备的JTAG接口类型和引脚布局进行相应的配置。
这通常需要参
考目标设备的硬件手册或相关资料。
3. 执行扫描,在软件界面上设置扫描参数,然后启动扫描。
JTAGulator将尝试不同的引脚组合,以确定目标设备上JTAG接口
的位置和布局。
4. 分析扫描结果,一旦扫描完成,软件将显示找到的JTAG接
口信息,包括引脚布局、电压和信号强度等。
分析这些信息可以帮
助确定正确的JTAG接口连接方式。
5. 进行进一步的研究,一旦JTAG接口被确定,可以使用JTAGulator或其他工具进行后续的JTAG调试、固件破解或安全分析工作。
除了上述步骤,使用JTAGulator还需要对硬件设备和JTAG接口有一定的了解,以便正确地配置和解释扫描结果。
此外,还需要谨慎操作,以避免对目标设备造成损坏。
总而言之,JTAGulator是一款强大的工具,可以帮助用户快速而准确地定位JTAG接口,但使用时需要谨慎并且需要一定的硬件和JTAG知识作为基础。
AVR-JTAGICE 配套使用说明书 USB仿真器
伯乐电子A VR-JT AG ICE仿真器配套使用说明2011-10产品目录:一、产品介绍二、软件操作:①ICCAVR 编译源程序,生成目标代码②AVR Studio 下载和仿真代码三、仿真调试命令四、仿真器升级说明后记感谢选购本产品!一、产品介绍:AVR-JTAGICE仿真器主要是用来对芯片进行硬件仿真,如程序单步执行、设置断点等,通过硬件仿真可以方便的调试程序,缩短开发周期。
同时也可以通过JTAG接口对芯片编程,本文档就AVR-JTAGICE仿真器的编程和仿真操作进行说明。
产品支持芯片列表:ATMega16、ATmega16L、ATMega162、ATmega162V、ATmega165、ATmega165V、ATMega169、ATmega169V、ATMega32、ATMega323、ATmega323L、ATmega32L、ATMega64、ATmega64L、ATMega128、ATmega128L、AT90CAN128ATMega16、ATmega16L、ATMega162、ATmega162V、ATmega165、ATmega165V、ATMega169、ATmega169V、ATMega32、ATMega323、ATmega323L、ATmega32L、ATMega64、ATmega64L、ATMega128、ATmega128L、AT90CAN128等本仿真器特点:1.板子带有USB可恢复保险,保护主板电路;2.带有74HC244缓冲芯片,防止固件丢失。
3.仿真器固件可无限升级,向上向下均兼容AVR STUDIO软件,支持最新版本。
4.全部机子贴片加工,保证产品质量。
二、操作说明:整体使用概述:编写程序使用ICC A VR软件,下载或调试程序使用A VR STUDIO软件。
第一步:在ICC A VR中编辑程序,而后编译,生成烧写和调试文件。
第二步:用JTAG 仿真器把目标板和PC机连接起来,使A VR STUDIO能通过 JTAG 仿真器和目标板顺利通讯,保证硬件连接正常。
JTAG ICE 使用说明书
JTAG ICE 使用说明书感谢您选择叮咚技术联盟AVR-JTAGICE 调试器,该仿真器使用USB 转串口与主控MCU 进行通信,使用前请按要求完成驱动程序的安装。
(安装仿真器驱动,在安装驱动时电脑不要连接仿真器,等安装完了以后再连接仿真器,否者要重新安装仿真器驱动,而且重新安装要先删除驱动,然后再重新启动电脑,再安装。
)驱动可向到本店客服索取,也可到本店论坛下载,论坛地址:/1.使用方法:调试模式:先将CON4排针1脚跟2脚用跳线帽短接,此时便正常使用仿真器。
升级模式:先将CON4排针2脚跟3脚用跳线帽短接,此时仿真器就在升级固件状态,接上电脑使用AVRSTUDIO便可以升级。
升级方法见本文第二条。
CON3接口为开发板想仿真器供电跳线选择,CON1 接口为USB 转TTL电平的接口(对于在用没有串口的电脑的开发学习者可以将它作为串口调试的硬件工具,串口调试跟仿真器的功能不能同时使用)。
2.升级方法该JTAG 使用studio 本身的固件(版本4.17),与studio 有最大的兼容性,支持AVRstudio 固件升级。
(AVRstudio 4.17 可向我们客服索取也可到网上下载)将CON3排针的 2脚跟3脚用跳线帽短接,点击Tools->AVR Prog…如下图:打开AVRprog 后点击Browse…,找到studio 安装目录下JTAGICE 文件夹内的Upgrade.ebn 文件,然后选中flash 项的program 就把新的固件下载到JTAGICE 本身的芯片中了。
如下图:待固件升级完毕,对JTAGICE 从新上电,到此固件升级完毕,便可以用新固件进行调试。
3.支持芯片清单为:(不同版本可能支持不同芯片)Atmega16,Atmega162,Atmega169,Atmega32,Atmega323,Atmega64 ,Atmega128,AT90CAN128.3.AVRstudio配合JTAG ICE 的调试仿真使用说明,见AVRstudio使用说明书。
JTEG
JTAG仿真器使用方法图文教程本文主要介绍USBJTAG的使用方法,该仿真器既可以用做JTAG放着器给AVR芯片下载程序以及仿真,也可以用来给STC89C系列的芯片下载程序。
本文主要分为以下几个部分:JTAG简介、AVRJTAG仿真器工作原理、JTAG仿真器上的跳线设置、JTAG驱动安装、JTAG仿真器的验证。
1、什么是JTAG仿真器JTAG仿真器,也叫JTAG调试器,即一种采用JTAG协议进行调试和下载的器件。
JTAG也是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。
现在多数的高级器件都支持JTAG协议,如DSP、FPGA器件等。
标准的JTAG接口是4线:TMS(模式选择)、TCK(时钟)、TDI(数据输入)、TDO(数据输出)。
相关JTAG引脚的定义为:TCK为测试时钟输入;TDI为测试数据输入,数据通过TDI引脚输入JTAG接口;TDO为测试数据输出,数据通过TDO引脚从JTAG接口输出;TMS为测试模式选择,TMS用来设置JTAG接口处于某种特定的测试模式;TRST为测试复位,输入引脚,低电平有效。
这里主要介绍的是AVR的JTAG仿真器,由于每个器件对应的上位机软件(PC上运行的软件)实现方式不同,所以不同器件的JTAG仿真器是不能够通用的。
AVR 使用的JTAG接口是4线接口,但是现在网上普遍流行的做法是,在JTAG接口中加入AVR器件的复位(RST)引脚,2个电源引脚(VCC)、2个地引脚(GND)、一个空引脚(NC)一共是10个引脚,并且这10个引脚有固定的引脚排序。
如下图:2、AVRJTAG仿真器工作原理AVR的JTAG仿真器上位机软件均采用atmel公司的AVRStudio开发环境,仿真器的硬件电路主要使用一片ATmega16芯片来实现。
仿真器硬件和上位机的软件通信使用串口通信协议,如下图:并不是所有的AVR单片机芯片都支持JTAG仿真和下载,查看是否支持JTAG,主要查看芯片的引脚手册,如果芯片的引脚含有TMS、TCK、TDI、TDO这几个引脚则说明改芯片支持JTAG,如果没有这几个引脚则不支持JTAG。
studio使用之JTAG仿真
标准JTAG十针接口定义,可直接设计到目标板上NC为无连接VTG与VCC直接接电源即可(和单片机的VCC相连即可)
点击后进入
点击
中的
在弹出的对话框选择仿真的文件,可以是HEX或ELF或COF或aps格式的文件(注意文件路径不要有中文,否则有时会出现提示文件类型错误的现象),本文以HEX为例;此处找到要仿真的文件LCD1602.hex,找到后点击打开会自动生成一个.aps文件,此时直接点击”保存”即可。
保存完成会提示选择仿真器的平台及芯片型号(根据你所使用的仿真器型号选择平台,根据你目标板的单片机型号选择芯片型号)。
因为我使用的是JTAG ICE MKII仿真器,目标板是mega128的核心板,所以此处我选择平台为JTAGICE MKII,芯片选择ATmega128;
选择完成点击Finish
此时即可进入仿真界面了(可单步或断点)。
ARM JTAG实时仿真器安装使用指南
ARM JTAG实时仿真器安装使用指南Version 1.02003. 2. 5目 录第一章 ARM JTAG介绍1.1 ARM JTAG产品介绍 3 1.2 ARM JTAG硬件介绍 4 1.2.1 ARM JTAG接口定义 4 1.2.2 ARM JTAG接口电平 4 1.2.3 TCK信号频率设置 5 1.2.4 目标板JTAG接口设计 5 1.2.5 RTCK时钟 5 1.2.6 14脚和20脚JTAG接口转换 5第二章 ARM开发系统安装2.1 硬件连接 7 2.2 软件安装 7第三章 ARM JTAG使用3.1 Multi-ICE Server使用 9 3.1.1 Multi-ICE Server菜单选项 9 3.1.2 Multi-ICE Server状态 11 3.1.3 Multi-ICE Server中的JTAG参数设置 14 3.1.4 Multi-ICE Server配置 16 3.2 调试系统架构体系 17 3.3 ADS V1.2与ARM JTAG连接 18 3.3.1 连接AXD 18 3.3.2 连接CodeWarrior 19第四章 最终应用程序烧写4.1 应用程序在ARM板上运行原理 21 4.2 生成Boot.bin 21 4.2.1 系统初始化 21 4.2.2 生成BIN文件 21 4.3 烧录Boot.bin 23附录1 TCK频率设置 24 附录2 常见问题 26第一章 ARM JTAG介绍1.1 ARM JTAG产品介绍ARM JTAG是用于ARM处理器内核软件调试的专用工具符合IEEE 1149.1规范与ARM原装Multi-ICE完全兼容它可以很好的与ADS V1.2集成开发环境相结合支持全线ARM处理器内核可以满足更多用户对ARM处理器内核软件的开发调试需求图1-1 ARM JTAGARM JTAG主要特征如下□ 支持所有内建embedded-ICE逻辑单元的ARM处理器□ 支持多个内核系统□ 连接简便兼容不同电压的目标系统□ 除JTAG扫描链外不占用目标板上的其它任何资源□ 支持实时硬件断点□ 用户可通过JTAG修改寄存器存储器内容□ 支持程序下载及实时调试□ 通信速度快最高可达10Mbpps□ JTAG速度可配置以满足不同调试对象的需求□ 支持所有符合RDI 1.50或RDI 1.51规范的调试工具软件□ 提供丰富的例程和使用说明□ 支持多种目标平台如ATMELSamSungIntelPhilipsSharpCirrus LogicTricend等□ 体积轻巧性能稳定ARM7TDMI ARM710T ARM7TDMI-SARM7DMI ARM720T ARM740TARM7TDI-S ARM7EJ-S ARM926EJ-SARM9TDMI ARM9E-S ARM940TARM946E-S ARM920T ARM966E-SARM1020E ARM922T ARM966E-SIntel XScale PXA210 PXA250 80200表1-1 ARM JTAG支持的ARM内核支持的操作系统有□ Windows 95/98/NT/2000/ME/XP□ X86 RedHat Linux 6.2/7.1/7.21.2 ARM JTAG硬件介绍1.2.1 ARM JTAG接口定义图1-2 20脚JTAG接口定义管脚编号信号输入/输出方向信号说明1 VrefInput 接口信号电平参考电压一般直接连接Vsupply2 VsupplyInput 电源3 nTRST Output 可选项JTAG复位在目标端应加适当的上拉电阻以防止误触发4 GND 接地5 TDI Output Test Data In6 GND 接地7 TMS Output Test Mode Select8 GND 接地9 TCK Output Test Clock10 GND 接地11 RTCK Input 可选项Return Test Clock由目标端反馈给仿真器的时钟信号用来同步TCK信号的产生不使用时直接接地12 GND 接地13 TDO Input Test Data Out from target to仿真器14 GND 接地15 nSRST Input/Output 可选项System Reset与目标板上的系统复位信号相连可以直接对目标系统复位同时可以检测目标系统的复位情况为了防止误触发应在目标端加上适当的上拉电阻16 GND 接地17 NC 系统保留18 GND 接地19 NC 系统保留20 GND 接地表1-2 20脚JTAG接口说明1.2.2 ARM JTAG接口电平仿真器推荐的正常使用电压为2.5 – 5.0V最大不超过2.0 – 5.5V随着电源电压的变化接口的逻辑高电平和判决门限电平都将随之变化这使得仿真器能够与不同电压和目标系统在逻辑上兼容1.2.3 TCK信号频率设置为了与不同速率的目标对象相兼容JTAG口的通信速率应调整到一个合适的水平数据传输速率是由TCK信号的频率来决定的TCK信号的真实频率跟设置值之间的对应关系参见附录11.2.4 目标板JTAG接口设计目标板使用与仿真器一样的20脚针座RTCK和nTRST这两个信号根据目标RSIC是否提供对应的引脚来选用nSRST则根据目标系统的设计考虑来选择使用在目标系统的PCB设计中最好把JTAG接口放置的离目标RISC近一些如果这两者之间的连线过长会影响JTAG口的通信速率另外电源的连线也需要加以额外考虑因为仿真器要从目标板上吸取超过100mA的大电流1.2.5 RTCK时钟RTCK信号用来同步仿真器和目标板之间的通信而不用关心TCK信号的具体频率在没有收到目标系统的反馈时钟信号之前仿真器不会触发一个新的TCK如果不使用RTCK功能这个信号脚可以简单的接地处理如果使用了RTCK功能把这个脚直接连向ASIC中对应的管脚如果激活了RTCK功能但RISC并没有提供对应原管脚可以把RTCK和TCK这两个信号连在一起但在连线中最好遵循下面的原则这一点在边线比较长的时候尤其重要目的是确保在TCK时钟到达目标点的时候才产生反馈信号图1-4 RTCK连接图1.2.6 14脚和20脚JTAG接口转换有些系统采用一种14脚的JTAG插座这两类接口的信号排列如下图1-5 不同的JTAG接口这两类接口之间的信号电气特性一样因此可以把对应的信号直接相连进行转换第二章 ARM开发系统安装ARM JTAG物品清单□ ARM JTAG硬件实时仿真器□ 20针标准ARM JTAG接口扁平连接线缆一条□ 并口连接线缆一条□ 直流5V稳压电源一个□ ARM开发系统安装光盘及使用手册一套2.1 硬件连接ARM JTAG使用标准的25芯并口插座和20针的JTAG插座作为接口与PC的连接线缆使用标准的25芯并口连接线缆与目标板的连接线缆使用20芯的IDC宽带线缆有的目标板可能使用14脚的JTAG插座信号定义和JTAG接口的转换方法请参见1.2.6节内容图2-1 硬件连接示意图2.2 软件安装开发PC主机系统需求□ Pentium IBM兼容PC带有可用的并口和串口□ 200MHz以上CPU□ 32MBFor Win98或64MBFor Win2000以上内存空间□ 300MB以上空闲硬盘空间□ CD-ROM驱动器□ 建议使用Microsoft Windows 98或2000操作系统ARM开发系统安装步骤如下1 把ARM开发系统软件光盘插入CD-ROM系统自动运行进入如图2-2画面如若未出现此画面请手动运行光盘根目录下autorun.exe文件图2-2 ARM集成开发环境主界面2 单击上述画面进入ARM开发系统程序安装选择主界面在程序安装选择主界面中按顺序依次点击需要安装的程序系统会自动进行安装安装程序说明□ ARM JTAG Emulator 安装ARM JTAG驱动程序□ ARM Developer Suite 安装ADS V1.2集成开发环境□ ARM Update 运行注册程序注意在运行注册程序之前请确认已正确安装了ARM JTAG驱动程序和ADS V1.2集成开发环境图2-3 ARM开发系统程序安装选择界面3 程序全部安装完毕后点击EXIT退出第三章 ARM JTAG使用在使用ARM JTAG进行系统开发之前请先确定系统硬件连接正确并已连接好电源和软件安装正确3.1 Multi-ICE Server使用Multi-ICE是ARM JTAG的配置程序通过它可以使ARM JTAG与目标板建立通讯连接并能够反馈目标板上ARM处理器的硬件信息在PC开发主机上选择开始>程序>ARM Multi-ICE v2.2>Multi-ICE Server进入Multi-ICE Server主界面图3-1 Multi-ICE Server主界面3.1.1 Multi-ICE Server菜单选项这里介绍一下Multi-ICE程序中各个菜单及里面的每个选项1 工具栏在工具栏里总共有四个功能按钮图3-2 工具栏按钮2 File菜单□ Load Configuration 读取用户指定的配置文件对仿真器进行手动配置□ Auto-Configure 自动检测和配置目标系统□ Auto-Configure at 20KHz 自动检测和配置目标系统并且设置TCK信号的频率为20KHz □ Reset Target 对目标系统复位有效的复位信号在Setting/JTAG settings菜单或配置文件中设置□ Log 输出信息存储到指定的日志文件中□ Set Log File 用于指定日志文件的路径和名字□ Recent File List 显示最近调用过的配置文件路径□ Exit 退出程序图3-3 File菜单3 View菜单这个菜单用于控制Multi-ICE程序界面外观和显示信息□ Toolbar 关闭或打开工具栏□ Status Bar 关闭或打开状态栏□ RPC Calls 允许或屏蔽RPC信息在调试信息窗口中显示□ Clear Debug Window 清空调试信息窗口中的显示信息图3-4 View菜单4 Run Control菜单图3-5 Run Control菜单这个菜单中的选项控制各个处理器的运行和停止□ Independent 使每个目标系统直接相互独立不进行交互通信缺省状态有效□ All Run 启动所有的目标系统□ All Run/Stop 当收到一条启动指令时启动所有的目标系统当任何一个目标系统停止时其它的系统也一起停止□ Custom 执行用户自定义的设置□ Set-up Custom 打开用户自定义设置窗口设置各个目标系统之间的交互方式□ Load Settings 读取以前保存下来的设置文件□ Save Settings 把当前设置保存到文件5 Connection菜单这个菜单在调试程序和Server建立连接之后才有效它会给每一个TAP控制器分配一个菜单项为用户提供单独删除某个TAP控制器的选项图3-6 Connection菜单6 Settings菜单这个菜单用来设置各种接口信息□ Port Settings 显示并口设置对话框用来选择并口的地址和是否使用4-bit通信模式同时显示当前的并口类型设置在PC机的BIOS中要把并口模式选择为EPP□ User Output Bits 当然版本的Server程序保留使用□ JTAG Settings 显示JTAG口的设置对话框用来设置JTAG口相关的时序信息和复位行为如果调用了配置文件则相应的设置会在窗口中反映出来□ Start-up Options 显示设置启动选项的对话框图3-6 Settings菜单7 Help菜单□ Help Topics 启动Multi-ICE的帮助系统□ About Multi-ICE Server 显示软件版本信息图3-7 Help菜单3.1.2 Multi-ICE Server状态在Multi-ICE Server的TAP信息显示区可以直观的显示当前系统状态下面通过单内核目标系统为例进行说明1 配置后的状态Multi-ICE Server进行配置之后显示状态如图3-8所示通过自动检测显示目标是一个ARM7TDMI的单内核系统在TAP配置显示区用图形的方式直观的显示出了检测结果内核的类型名称ARM7TDMI显示为绿色并且前面有一个表示内核状态的字母这里字母X表示Multi-ICE Server目前还没有连接到任何调试程序中双击图3-8中的处理器类型名字会弹出目标处理器附加信息窗口图3-8 Multi-ICE Server配置后状态图3-9 目标处理器附加信息窗口注意处理器类型名称前面的字母叫做状态位共有四种状态□ [S] 处理器处于暂停状态□ [R] 处理器忙运行状态□ [D] 处理器处于下载状态□ [X] 处理器类型未知或没有被调用2 连接后的状态如果有调试程序通过MultiICE.dll与Multi-ICE建立了连接则Multi-ICE的状态变成如图3-10所示此时处理器前面的状态字母变为S表明已建立连接但正处于空闲状态处理器名字变为红色同时信息窗口中的信息增加了相应的内容图3-10 Multi-ICE Server连接后的状态3 激活后的状态Multi-ICE的活动状态有下载和运行两种图3-11是代码下载时候的状态当下载操作完成后状态字母又马上变回X图3-12是代码运行中的状态当停止运行后状态字母会变回S图3-11 Multi-ICE Server代码下载时的状态图3-12 Multi-ICE Server代码运行中的状态3.1.3 Multi-ICE Server中的JTAG参数设置1 并口设置并口设置菜单位于Settings>Port Settings图3-13 并口设置□ Port Address 选择使用的并口地址有三个可选项• AUTO 自动选择系统默认选项• LPT1 选择LPT1• LPT2 选择LPT2□ Force 4-bit access 使用4-bit的数据传输方式□ Current port Mode 显示并口类型显示BIOS中并口设置状态为只读选项注意并口类型是在PC的BIOS中进行设置的通常提供四种类型□ Basic type部分BIOS提供值为Default或SPP等□ EPP□ ECP□ EPP + ECP由于ARM JTAG使用双向的并口数据总线通常ECP或EPP类型能够符合要求但在一些比较新的BIOS版本中可能要选用基本类型而不是ECP或其它增强型由于历史上的原因并口规范和IEEE1283协议的执行存在弹性所以不同计算机主板厂商在并口设计上存在一些差异当第一次使用ARM JTAG时需要对并口类型设置多作几次试验目前我们推荐用户选择EPP类型2 时钟设置时钟设置菜单位于Settings>JTAG settings图3-14 ARM JTAG时钟设置□ JTAG Bit Transfer Timing 设置TCK信号频率如果需要手动设置请参见附录1□ Behavior 选择使用RTCK功能□ Reset Behavior 选择哪组信号在按下复位按钮后有效3 启动选项设置启动选项设置菜单位于Settings>Start-up Options这部分用来设定Multi-ICE启动时的参数和选项□ Network Settings 提供两个选项• Allow Network Connections 使用网络连接功能启动时自动检测网络设置情况• Start Portmap Service 仅在上一项选中时有效□ Start-up Configuration 设置Multi-ICE Server程序启动后自动执行的操作图3-15 Multi-ICE启动选项设置3.1.4 Multi-ICE Server配置Multi-ICE Server在运行时需要目标处理器的配置信息比如内核类型和IR指令寄存器长度等等对Multi-ICE Server进行配置有自动配置和手动配置两种方式1 自动配置在Multi-ICE Server程序中选择File>Auto-configure菜单或者工具栏上的自动配置按钮如果目标处理器是ARM族的内核ARM JTAG能够自动检测到并进行相应配置并把结果显示在Multi-ICE Server的显示窗口中注意有时候检测ARM710T/720T/740T/940T这一系列内核时会返回一个UNKNOWN结果这是ARM 报告的一个硬件bug这时候就只能使用手动配置的方法经过自动配置后JTAG的通信速率会自动设置为10MHz用户可以在Settings>JTAG Settings 菜单中按自己的要求选择合适的速率2 手动配置手动配置是通过调用一个用户预先定义好的配置文件来完成对Multi-ICE Server的配置配置文件可以从File>Load configuration菜单中调入配置文件为文本格式文件文件后缀名为.cfg配置文件主要包括以下几个部分□ Title□ TAP controller□ Devices attached to each controller□ JTAG timing information□ Other options下面是配置文件的格式示范[TITLE]Double cores configuration demo 给配置方案命名[TAP0] 目标系统中包含TAP0控制器ARM7TDMI TAP0控制上连着一个ARM7TDMI核[TAP1] 目标系统中包含TAP1控制器ARM7TDMI-S TAP1上连着一个ARM7TDMI-S核如果有更多的TAP控制器和内核依次往下增加[Timing] JTAG口的时序设置High = 9 TCK信号的高电平时间Low = 9 TCK信号的低电平时间Adaptive = ON RTCK功能开关ON或OFF[TAPINFO]YES[Reset]nTRST通常情况下目标系统只有单内核仅使用 [TAP0] 就可以了对那些自动配置不能识别的内核需要在配置文件中指定好正确的内核类型然后在Multi-ICE Server中调入对应的配置文件就可以了TAPINFO选项主要是为RISC开发人员测试芯片时提供的当该选项打开时ARM JTAG完成正常的配置工作后会继续从目标RISC中读取内核的其它信息供设计人员分析这些附加信息可以从双击Multi-ICE Server的TAP显示窗口中的TAP控制器图标而弹出的信息窗口中得到使用自动配置时TAPINFO是一直打开的当调用用户自定义的配置文件时TAPINFO的默认状态时关闭Reset选项用来定义ARM JTAG的复位动作当用户按下Multi-ICE Server工具栏上的复位按钮时Reset选项内定义的信号就有效合法的选项包括nTRST或nSRST或者两者都选中Timing部分定义了JTAG端口的时序信息关于TCK时钟参数的设置请参见附录1在一个配置文件中只有TAP控制器和内核类型的定义是必需的其它部分都是可选项另外文件中用户的注释语句以分号开头3.2 调试系统架构体系整个调试系统包括集成调试环境和硬件仿真器它们组成了一个类似于客户服务器模型的系统服务器端把所有硬件封装起来给客户端只提供了一个虚拟的处理器接口客户端的调试工具软件通过一个动态链接库与服务器相连所以服务器一侧的硬件和客户端的调试工具软件是相互独立的在同一个动态链接库的基础上双方可以各自动行升级或替换同样也方便了用户选择不同的仿真器和调试软件来组合自己的调试平台一个具体的调试程序应该能够支持许多不同的链接库不同的链接库提供了不同的功能调用以ADS工具包为例ARMulate.dll提供了一个软ARM内核用作程序的逻辑验证若要把Multi-ICE Server程序连接在一起进行实时仿真则只要调入MultiICE.dll就可以了该动态库文件在Multi-ICE Server的安装目录下可以找到图3-16 调试系统架构3.3 ADS V1.2与ARM JTAG连接当Multi-ICE Server程序与目标板建立正确的连接之后下面要把调试软件连接进来组成完整的调试平台下面以ADS V1.2为例说明连接过程3.3.1 连接AXD在AXD的Options>Configure Target菜单中调入MultiICE.dll文件并完成目标处理器的设置只需在第一次使用之前进行设置图3-17 AXD的Options菜单图3-18 调入MultiICE.dll如图3-18所示如果第一次使用点击右边的Add按钮在Multi-ICE Server的安装目录下找到MultiICE.dll文件并添加到Target Environments中点击右边的Configure按钮弹出如图3-19所示的设置窗口并在Select a new processor中选择对应的处理器图3-19 目标处理器窗口3.3.2 连接CodeWarrior在CodeWarrior中打开或新建立一个工程点击Edit>DebugRel Setting菜单在CodeWarrior中进行设置图3-20 CodeWarrior的Edit菜单图3-21 DebugRel Settings窗口在这里注意一下图3-21中右边的RO Base和RW Base输入框它们分别为代码区和变量区的起始地址这些设置要与具体的目标系统中使用的存储器地址相对应第四章 最终应用程序烧写ARM开发板文档中介绍的应用程序都是执行在板卡的SDRAM中而用户开发的最终产品是必须要脱离ARM JTAG执行的本章介绍的是最终应用程序的烧写方法本章下面按步骤讲述如何使用Flash程序向板上烧录Boot程序4.1 应用程序在ARM板上运行原理要想在ARM板上正确的烧录应用程序必须了解应用程序在ARM上运行的原理首先板卡复位之后所有地址指针都被初始化为0系统指针自动指向0x0地址此时 SDRAM由于未被定义所以对于系统是不可见的即用户无法对SDRAM进行访问然后系统从0x0地址存放的用户应用程序开始执行用户程序内必须包含系统寄存器初始化代码并对外部SDRAM进行配置使系统可以进行访问此初始化代码一般用汇编语言编写最后系统把FLASH存储器中保存的用户程序复制到SDRAM的指定地址中复制完成后程序自动跳转到SDRAM的应用程序中全速运行4.2 生成Boot.bin4.2.1 系统初始化由于系统启动时从地址0x0开始执行所以程序boot必须装载在从地址0x0开始的Flash存储器中在Boot的初始化程序Boot.s中可以看到类似下面的语句ldr r0=COPY_START pointer to ROM codeldr r1=COPY_END end of ROM codeldr r2=_RAM_STARTADDRESS start of RAMldr PC=_RAM_STARTADDRESS jump to RAMB .这一小段程序指明了在Flash在存储器中存放应用程序的起始地址结束地址以及复制到SDRAM中的起始地址当复制完成后程序转入_RAM_STARTADDRESS入口开始全速运行在Boot程序的头文件中包含以下定义_RAM_STARTADDRESS EQU 0x8000 需根据用户板SDRAM地址配置修改BUSWIDTH SETA 32 需根据用户实际情况修改16或32COPY_START EQU 0x0COPY_END EQU 0x5000 需根据用户程序长度修改从以上定义可以看出在Flash存储器中存放的应用程序从地址0x0开始到0x5000结束复制到SDRAM的起始地址是0x8000当程序复制完成后程序转到0x8000地址开始执行4.2.2 生成BIN文件在生成BIN文件之前请先确认应用程序在DEBUG模式下运行正确1 在CodeWarrior中对当前的工程Boot.mcp进行设置进入Edit>DebugRel Settings菜单在Target Settings选项中的Post-Linker设置为ARM formELF在ARM Linker选项的Equivalent Command Line中写为-info totals –entry 0x0 –ro-base 0x0 –rw-base 0x5000图4-1 CodeWarrior中的DebugRel Settings设置2 对Boot.mcp进行Make生成Boot.bin文件此时需要烧录的Boot.bin文件已经生成可以进行烧录了4.3 烧录Boot.bin对烧录Boot.bin文件需要用户编写一个Flash程序进行具体烧录工作在Flash程序中仍然需要对系统进行初始化的代码一般根据不同的用户硬件板不同的Flash芯片对Flash存储器的操作方法也不同因此Flash程序也有所不同相关内容请查看硬件板使用手册和Flash芯片手册如果Flash程序调试正确就可以全速运行了如果在Flash程序内部调用了Boot.bin文件则Flash程序运行完毕后Boot.bin文件就烧录完毕了此时对硬件板进行复位Boot程序就开始在板上自动运行了附录1 TCK频率设置在Multi-ICE Server设置中TCK不是直接使用频率值来进行设置而是使用了一组整数它们之间的对应关系参见表附1-1用户只需要找到需要的频率把对应的设置数值填入设置窗口或是配置文件中即可TCK时钟信号的波形不一定要方波可以高低电平设置分别不同的值但是推荐用户使用方波波形特别是不要设置占空比太大的波形从表附1-1中可以看出频率值与对应的周期值不正好是倒数关系当高低电平的周期都是该设置值时对应的频率值才是信号频率若高低电平采用不同设置通常情况下没有必要则需要从表附1-1 中找出各自对应的周期值相加就是信号的周期再从周期算得频率频率kHz 周期ns数值频率kHz周期ns数值频率kHz周期ns数值10000 50 0 138.89 3600 81 18.38 27200 176 5000 100 1 131.58 3800 82 17.36 28800 177 3333.33 150 2 125 4000 83 16.45 30400 178 2500 200 3 119.05 4200 84 15.63 32000 179 2000 250 4 113.64 4400 85 14.88 33600 180 1666.67 300 5 108.7 4600 86 14.2 35200 181 1428.57 350 6 104.17 4800 87 13.59 36800 182 1250 400 7 100 5000 88 13.02 38400 183 1111.11 450 8 96.15 5200 89 12.5 40000 184 1000 500 9 92.59 5400 90 12.02 41600 185 909.9 550 10 89.29 5600 91 11.57 43200 186 833.33 600 11 86.21 5800 92 11.16 44800 187 769.23 650 12 83.33 6000 93 10.78 46400 188 714.29 700 13 80.65 6200 94 10.42 48000 189 666.67 750 14 78.13 6400 95 10.08 49600 190 625 800 15 73.53 6800 112 9.77 51200 191 588.24 850 16 69.44 7200 113 9.19 54400 208 555.56 900 17 65.79 7600 114 8.68 57600 209 526.32 950 18 62.5 8000 115 8.22 60800 210 500 1000 19 59.52 8400 116 7.44 67200 212 476.19 1050 20 56.82 8800 117 7.1 70400 213 454.55 1100 21 54.53 9200 118 6.79 73600 214 434.78 1150 22 52.08 9600 119 6.51 76800 215 416.67 1200 23 50 10000 120 6.25 80000 216 400 1250 24 40.08 10400 121 6.01 83200 217 384.62 1300 25 46.3 10800 122 5.79 86400 218 370.37 1350 26 44.64 11200 123 5.58 89600 219 357.14 1400 27 43.1 11600 124 5.39 92800 220 344.83 1450 28 41.67 12000 125 5.21 96000 221 333.33 1500 29 40.32 12400 126 5.04 99200 222 322.58 1550 30 39.06 12800 127 4.88 102400 223 312.5 1600 31 36.76 13600 144 4.6 108800 240294.12 1700 48 34.72 14400 145 4.34 115200 241 277.78 1800 49 32.89 15200 146 4.11 121600 242 263.16 1900 50 31.25 16000 147 3.91 128000 243 250 2000 51 29.76 16800 148 3.72 134400 244 238.1 2100 52 28.41 17600 149 3.55 140800 245 227.27 2200 53 27.17 18400 150 3.4 147200 246 217.39 2300 54 26.04 19200 151 3.26 153600 247 208.33 2400 55 25 20000 152 3.13 160000 248 200 2500 56 24.04 20800 153 3 164400 249 192.31 2600 57 23.15 21600 154 2.89 172800 250 185.19 2700 58 22.32 22400 155 2.79 179200 251 178.57 2800 59 21.55 23200 156 2.69 185600 252 172.41 2900 60 20.83 24000 157 2.6 192000 253 166.67 3000 61 20.16 24800 158 2.52 198400 254 147.06 3400 80 19.53 25600 159 2.44 204800 255表附1-1 TCK频率设置对应表附录2 常见问题随着当前系统设计复杂度的提升调试过程中碰到问题的几率大大增加在各种问题中我们需要分析问题的根源和实质以便去正确的解决ARM JTAG与目标板的连接仅限于JTAG接口两者之间的耦合度已降到最小不会对目标板的逻辑和电气性能产生影响对于一些刚开始使用ARM JTAG的客户我们总结了一些常见问题提供给用户希望能够有所帮助问题 Multi-ICE Server程序启动失败原因 BIOS中的并口类型设置不正确请修改后重试一般推荐用户选择EPP类型问题 Multi-ICE Server程序启动失败出现TCP/CP堆栈出错原因 开发PC机没有连接网络或没有安装网络服务程序如果不需要使用网络服务功能可以在Multi-ICE Server的Settings>Start-up Optinos菜单中关闭该功能如果程序因为该原因自动关闭而造成无法修改选项设置可以在Multi-ICE Server的安装目录下找到一个名为的文件并双击运行则在以后的Multi-ICE Server程序运行中就会跳过网络协议堆栈的检测问题 Multi-ICE Server程序自动识别目标失败原因 1 目标内核不能识别在本手册前面章节中详细列出了目前版本的ARM JTAG所支持的内核种类如果能够检测到正确的TAP控制器并建立起通信但不能返回内核ID号将在屏幕上显示UNKNOWN这时调试程序不能正常工作用户需要从厂家得知正确的ARM芯片内核类型并新建一个配置文件来进行手动配置配置方法参见第3.1.4小节内容2 信号问题最常遇到的信号问题包括□ Reset信号没有上拉电阻Reset包括nTRST和nSRST这两个信号应在目标板上用小于10K的电阻上拉□ TCK信号的频率太高该频率受制于TAP控制器目标板布线和连接电缆等因素有些TAP 控制器只支持到1MHz速率这时候需要调整TCK频率设置问题 同调试程序连接时提示Can’t stop processor原因 1 在当前环境下JTAG的时钟频率过高请尝试降低TCK的频率2 如果Multi-ICE Server程序是手动配置的则需要检查□ 配置错误处理器类型连接次序等设置错误□ JTAG问题进行手动配置时因先确保在自动时能够检测到UNKNOWN这样说明JTAG接口通信正确3 ARM芯片接口的DBGEN信号被不正确的拉低如果该信号有片外接口请检查4 目标处理器的时钟不正确问题 同调试程序连接时出现Data Abort提示原因 1 当调试程序启动时处理器将停在当前PC值指向的地方同时读取该PC值周围一部分地址的存储器值如果这些地址正好没有被使用或指向空就会出现上述提示此情况属于正常范围2 果使用了存储器RAM或ROM出现这种问题表明在存储器访问上可能存在数据错误请检查存储器3 当用户下载程序到目标板时下载的目标地址是在编译器中指定的如果编译器里设置的目标地址与目标板上可写存储器的物理地址不能对应也会出现上述提示因为调试程序试图往错误的物理地址写入用户程序而出错这时需要检查并重新设置编译器选项4JTAG的时钟速率过快问题 在调试过程中经常停止有时候甚至进不了调试程序原因 在排除了调试程序本身的问题后这一类带有随机性的问题可以考虑是硬件时序或逻辑问题引起的最主要的可能性是nTRST和系统Reset信号不可靠Reset信号的不可靠包含两方面正常工作时要求稳定的保持高电平复位状态时要求有足够时间的低电平Reset电路因为简单通常会被忽略但事实表明很多貌似奇怪的问题最后都归结在这里无论是从调试的角度还是最后稳定工作的要求我们都建议用户采用一个好的Reset电路或是IC来代替简单的RC电路问题 调试程序出现Hardware interface timeout提示原因 1 目标板与ARM JTAG的连接断开或ARM JTAG与PC之间的连接中断2 ARM JTAG供电中断或供电不足3 ARM JTAG与目标板的通信停顿一般都是因为打开了RTCK选项但是检测不到合适的RTCK信号此时用户可以不使用RTCK功能或检查该信号的布线问题 序提示Unable to set breakpoints on exception vecors原因 射表中的起始地址对应的存储器类型是ROMARM JTAG不能在ROM上设置断点。
AVR JTAG仿真器使用方法
AVR JTAG仿真器使用说明AVR开发网AVR JTAG仿真器简介:AVR仿真器,同AVR下载线一起属于本网站对AVR初学者开发工具的一个普及产品,AVR仿真器采用标准mega16芯片制作,为ATMEL标准JTAG仿真器的简化版,使用与标准JTAG相同的程序,功能上与原JTAG相同,在AVR STUDIO软件环境下进行仿真操作。
JTAG ICE是与Atmel公司的AVR Studio相配合的一套完整的基于JTAG接口的片上调试工具,支持所有AVR的8位RISC指令的带JTAG口的微处理器。
JTAG接口是一个4线的符合IEEE 1149.1标准的测试接入端口(TAP)控制器。
IEEE的标准提供一种行之有效的电路板连接性测试的标准方法(边界扫描)。
Atmel 的AVR器件已经扩展了支持完全编程和片上调试的功能。
AVR JTAG仿真器实物图片:产品特点:• 上位机使用AVR Studio软件。
•仿真所有带有JTAG接口的芯片。
•编程所有带有JTAG接口的芯片。
• 精确的电气特性,真实仿真电路情况。
• 仿真所有片上的数字和模拟功能。
• 复杂断点,例如在程序流程改变处暂停。
• 数据和程序存储器断点。
• 可在AVR STUDIO环境下对芯片进行汇编语言程序及高级语言程序仿真调试。
• JTAG编程功能:可以对芯片flash、eeprom、熔丝位和锁定位进行编程。
• AVR仿真器使用RS-232接口与PC机连接。
•第二版增强功能:• 程序可在线升级,以支持最新的芯片。
• AVR仿真器电源由目标板提供,可以工作在3.3伏到5.5伏电压之间。
• 关闭主控CPU的串行编程接口,从根本上解决主控芯片被目标板反编程造成的程序失丢问题。
品质保证。
支持芯片列表:ATmega16(L)、ATmega32(L)、ATmega323(L)、ATmega64(L)、ATmega128(L)、ATmega162(L)、ATmega169(L or V)AVR JTAG接口顺序:采用10P标准接口及顺序,通用接口。
JTAG仿真器使用方法_gz
JTAG仿真器使用方法
一正确的连接方向
首先看仿真器上的数据线转接板,其中有“GAIN”字样的一端通过数据线和仿真器相连,有JTAG字样的一端通过数据线和节点相连。
二通过串口线把PC和仿真器连接起来
三连接电源,电源要插在转接板上注意:当使用外接电源时,节点的开关不要打开。
四连接节点
注意细节,数据线和节点连接时,凸起的部分朝向节点内部,如下图。
因为数据线的原因,如果仿真器找不到节点,可以把突起部分朝外,再连接。
五烧写程序
当节点正确连接后,打开avrstudio烧写程序。
步骤如下:
1 打开avrstudio,这里推荐avrstudio4.12,会弹出一个对话框,点击“cancel”
2 在如下界面上点击“CON”图标
3 点击“CON”图标后,在弹出的对话框中做如下选择
选择完毕,点击“connect”按钮。
4 正确连接后会弹出如下界面
图片中最下面的提示信息“JTAG ICE found on COM1”表示,仿真器找到了节点。
图片最上方“NO device selected”表示没有选中设备。
5 在NO device selected”中选择128芯片
6 选择好设备型号后就可以进行编程了,点击下面图片的按钮,选择要烧写的程序。
7 点击“Program”按钮即可把程序烧写到节点里了。
JTAG使用说明
7 TMS Output Test Mode Select
8 GND -- 接地
9 TCK Output Test Clock output from Dragon-ICE to the target
11 RTCK 测试时钟返回信号
13 TDO 测试数据串行输出
15 nRESET 目标系统复位信号
17 、 19 NC 未连接
下面以S3C4510B开发板为例说明JTAG接口:
在保证电源电路、晶振电路和复位电路正常工作的前提下,可通过JTAG 接口调试S3C4510B,在系统上电前,首先应检测JTAG 接口的 TMS 、 TCK 、 TDI 、 TDO 信号是否已与 S3C4510B 的对应引脚相连,其次应检测 S3C4510B 的 nEWAIT 引脚( Pin71 )是否已上拉, ExtMREQ 引脚( Pin108 )是否已下拉,对这两只引脚的处理应注意,作者遇到多起S3C4510B 不能正常工作或无法与JTAG 接口通信,均与没有正确处理这两只引脚有关。
10 GND -- 接地
11 RTCK Input (可选项) Return Test Clock。由目标端反馈给Dragon-ICE的时钟信号,用来同步TCK信号的产生。不使用时可以直接接地。
12 GND -- 接地
本章针对ARM7TDMI介绍调试结构。ARM的调试体系采用协议转换器来使调试器通过JTAG与ARM核直接通信。前面JTAG标准中提到的扫描链功能是测试用,这里把它作为调试用:捕获数据总线上的信号并向内核或存储器插入新的信息。ARM7TDMI-S核内具有EmbeddedICE逻辑,EmbeddedICE逻辑提供对片内调试的支持。调试指令直接通过扫描链插入ARM内核并执行。根据插入调试指令的不同,内核可以处于观察、保存或改变状态。ARM的调试体系可以使程序指令执行速度处于调试速度或全速运行。在ARM中采用JTAG的特点是:通过JTAG接口可以观察ARM内核状态和系统状态(注意:系统状态包括片内外设,不同于内核状态);不占用额外的目标系统资源;提供传统的断点访问和观察点访问;不再需要另外的UART端口来和监控程序通信。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JTAG仿真器使用方法
一正确的连接方向
首先看仿真器上的数据线转接板,其中有“GAIN”字样的一端通过数据线和仿真器相连,有JTAG字样的一端通过数据线和节点相连。
二通过串口线把PC和仿真器连接起来
三连接电源,电源要插在转接板上注意:当使用外接电源时,节点的开关不要打开。
四连接节点
注意细节,数据线和节点连接时,凸起的部分朝向节点内部,如下图。
因为数据线的原因,如果仿真器找不到节点,可以把突起部分朝外,再连接。
五烧写程序
当节点正确连接后,打开avrstudio烧写程序。
步骤如下:
1 打开avrstudio,这里推荐avrstudio4.12,会弹出一个对话框,点击“cancel”
2 在如下界面上点击“CON”图标
3 点击“CON”图标后,在弹出的对话框中做如下选择
选择完毕,点击“connect”按钮。
4 正确连接后会弹出如下界面
图片中最下面的提示信息“JTAG ICE found on COM1”表示,仿真器找到了节点。
图片最上方“NO device selected”表示没有选中设备。
5 在NO device selected”中选择128芯片
6 选择好设备型号后就可以进行编程了,点击下面图片的按钮,选择要烧写的程序。
7 点击“Program”按钮即可把程序烧写到节点里了。