使用Ulink2的JTAG与SWD 调试stm32 区别

2019-11-19来源: eefocus关键字:Ulink2  JTAG  SWD  调试  stm32

一、硬件连接


我调试stm32F407使用的ULINK2,Ulink2内部实物图如下。

1.1   JTAG interface

标准20pin  JTAG引脚中,JTAG调试只使用8pin,定义如下:

1)NTRST   ---------------Test ReSeT/ pin — Use 100K Ohm pull-up resistor to VCC.                             必须有该引脚


2)TDI        -----------------Test Data In pin — Use 100K Ohm pull-up resistor to VCC.数据输入              必须有该引脚


3)TMS/SWDIO-----------Test Mode State pin — Use 100K Ohm pull-up resistor to VCC.                          必须有该引脚


4)TCK/SWCLK----------Test CLocK pin — Use 100K Ohm pull-down resistor to GND.时钟输入             必须有该引脚


5)TDO    ------------------Test Data Out pin.数据输出 必须有该引脚


6)RESET ---------------- RSTIN/ pin — Connect this pin to the (active low) reset input of the target CPU.复位输入 必须有该引脚


7)VCC    ----------------- Positive Supply Voltage — Power supply for JTAG interface drivers. 可选,建议有该引脚


8)GND  ------------------ Digital ground.  必须有该引脚


VCC引脚可选原因:

电压输入管脚-为JTAG接口驱动提供电能。注:该电压由arm芯片提供,在unlik2里面有个蓝色的 小跳线帽,电压有2个选择,一个是ARM,一个是VCC;如果选择的是ARM则有外部的被仿真的 ARM提供,如果选择VCC则可以有ULINK2自己提供(ulink2板子实际上选择VCC,所以可选)。


1.2   Serial Wire Mode Interface(串行模式接口) 


串行模式接口的操作不同于JTAG,因为串行模式只要2个线,TCLK(9号管脚时钟,即swclk)和TMS(7号管脚SWDIO,即数据),同时需要加上RESET、GND共4根。其中第5根线(swo)是可选的,用来跟踪数据。JTAG模式下管脚和串行模式(SW)的管脚是共用的,即ULINK2可以工作在JTAG模式下,或者串行模式(SW)下。


SWD硬件连接说明:


1)SWDIO------------Data I/O pin. Use 100K Ohm pull-up resistor to VCC(数据I/0管脚,用100K的电阻上拉到VCC上)   必须有该引脚


2)SWCLK -----------Clock pin. Use 100K Ohm pull-down resistor to GND()                                                                         必须有该引脚


3)SWO    ----------- Optional trace output pin.(可选的跟踪输出管脚)                                                                                一般不使用


4)RESET -----------RSTIN/ pin — Connect this pin to the (active low) reset input of the target CPU.                           必须有该引脚


5)VCC   -------------Positive Supply Voltage — Power supply for JTAG interface drivers。                                               可选,建议有该引脚。


6)GND    ------------ground.


注:

JTAG模式下的TCLK管脚是串行模式下的SWCLK管脚(串行时钟输出); 

JTAG模式下的TMS管脚是串行模式下的SWDIO管脚(串行数据输入/输出); 

JTAG模式下的TDO管脚是串行模式下的SWO管脚(串行数据跟踪输出);

二、区别


1、硬件上(除了电源VCC、GND、RESET以外),使用SWD节省IO资源,板子空间。对于stm32F4系列节省NTRST、TDI、 TDO ( 即PB3 PB4  PA15) 3个IO资源。


JTAG调试:需要5根线,即NTRST、TDI、TMS 、TCK、 TDO     +  3根   电源VCC、GND、RESET    =8根


SWD调试:需要2根,即SWCLK 、SWDIO +  3根   电源VCC、GND、RESET    =  5根


2、SWD 模式比 JTAG 在高速模式下面更加可靠。 在大数据量的情况下面 JTAG 下载程序会失败, 但是 SWD 发生的几率会小很多。


关键字:Ulink2  JTAG  SWD  调试  stm32 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic480474.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:stm32f4xx 加密
下一篇:stm32 C语言的数据类型说明

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

JTAG、JLink、ULINK、ST-LINK仿真器区别
内部用的还是jtag协议。它完成了一个从软件到硬件转换的工作。JLINK仿真器ULINK仿真器 ULINK是ARM/KEIL公司推出的仿真器,目前网上可找到的是其升级版本,ULINK2和ULINKPro仿真器。ULINK/ULINK2可以配合Keil软件实现仿真功能,并且仅可以在Keil软件上使用,增 加了串行调试(SWD) ULINK2仿真器  ST-LINK ST-LINK是专门针对意法半导体STM8和STM32系列芯片的仿真器。ST-LINK仿真器  
发表于 2019-04-19
JTAG、JLink、ULINK、ST-LINK仿真器区别
STM32:如何用JLINK ULINK JTAG 查看 KEIL /MDK 某条指令执行时间
方法一:为了保证在MDK中读取正确的程序运行时间,必须对仿真器的跟踪项进行设置。 以ULink2为例: (1)在工程的“ Option  for Target ..”目标选项界面中,选择标签“Debug”,进行调试设置界面,选择使用“Cortex-M3-ULIK2”作为仿真器,然后点击右侧的“Settings”按键,进入ULINK设置界面。 (2)点击标签“Trace”进入跟踪设置界面,将“Core  Clock:”右侧的编辑区输入你的CPU的频率,例如你的实际CPU运行频率为72MHz。 (3)“Core  Clock”的值决定MDK以什么频率来计算指令周期
发表于 2019-01-17
STM32:如何用JLINK ULINK JTAG 查看 KEIL /MDK 某条指令执行时间
ulink下在ram和flash中调试stm32的方法
Keil MDK3.20 在ULINK下调试stm32方法1. 程序在RAM中运行要点:(1)程序的下载地址改到RAM空间中     (2)程序的debug之前要设定SP,PC指针到Ram空间 新建工程,选择STM32 的具体型号,我买的万利的开发板,选择stm32f103Vb。 设定程序下载地址,如下图所示,IROM1的地址指向了STM32的ram空间。空间大小如何分配取决于自己的需求。本款处理器内部ram大小为20K,分配16K给只读区,4K给可读可写区。这样IROM设定的大小为0x4000,IRAM1的起始就变为0X20004000
发表于 2018-12-17
ulink下在ram和flash中调试stm32的方法
SWD调试与ULINK2的对应接线
一直使用ULINK2,前几天碰到一个板子,只能使用SWD调试接口,于是做个记录。打开ULINK2,找ARM(20P,2.54mm)接口,用杜邦线连接目标板SWD和ULINK2。SWD,使用5根线:GND\VCC\RST\SWDIO\SWCLK。其中SWDIO同时具备数据输入和数据输出功能。接线如下:SWD                                               
发表于 2018-12-17
keil ,stm32 用ulink2 连接和查看变量的设置
打开一个例程,设置好芯片型号。设置debug选项,点击setting,继续设置。详细设置可参考《ULINK2_用户指南_中文_使用说明.pdf》。用Ulink2时,有时候keil提示 no Jlink found ,可以在utilities 里设置默认的flash下载器,并在setting里设置flash芯片型号。若仍旧连不上,重插Ulink2试试。调试时,看到某变量值为'????'  尝试一下方法:修改 debug里的setting中的download to Flash ,不要选中。如下图看下编译器的优化等级,设置为0。等级较高会优化无用的中间变量。 
发表于 2018-12-17
keil ,stm32 用ulink2 连接和查看变量的设置
ARM H-JTAG Server烧写流程
ARM程序下载方法(1) 检测调试目标:将板子与仿真器连接加电,打开H-JTAG Server,点击工具栏中  按钮检测调试目标,如果检测到目标板则显示目标芯片型号(这是我们目前使用的芯片);如图1.1所示。图1.1 H-JTAG Server界面(2)基本信息配置:点击按钮,出现H-Flasher界面,进行配置及文件烧写:1) Flash芯片选择点击按钮,我们使用的Flash芯片为AMD29LV160DT,在右栏选择该型号,如图1.2所示:                   
发表于 2019-11-12
ARM H-JTAG Server烧写流程
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved