Various ARM emulator interface diagrams

Publisher:psi33Latest update time:2019-09-23 Source: eefocusKeywords:ARM Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

ULINK2 JTAG/SWD interface

How is the ULINK2 interface defined?
The following is the definition of the ULINK2 interface:

image.png

The following is the standard interface arrangement:

ST-Link SWIM & JTAG/SWD interfaces

image.png

The following is the standard interface arrangement:


ST-Link specified standard interface 


J-Link JTAG/SWD interface

How is the J-Link interface defined?

The following is the J-Link interface definition:


image.png


The following is the standard interface arrangement:

Standard interface specified by J-Link


JTAG pin diagram:

1. Differences between SWD and traditional debugging methods


1. SWD mode is more reliable than JTAG in high-speed mode


2. When one GPIO is missing, you can use SWD emulation, which supports fewer pins.


3. When the size of the board is limited, it is recommended to use SWD mode


2. Emulator support for SWD mode


1. Support of SWD mode by common emulators on the market


JLINKV8 supports SWD simulation mode very well, and the speed can reach 10M


ULINK2 supports SWD mode very well, and the speed can reach 10M


2. Differences in SWD hardware interface


(1) The hardware interfaces required by JLINKV7 are: GND, RST, SWDIO, SWDCLK

(2) The hardware interfaces required by JLINKV8 are: VCC, GND, RST, SWDIO, SWDCLK (Note: Below are my actual connections and corresponding experimental results using JLINKV8)

(3) ULINK1 does not support SWD mode

(4) The hardware interfaces required by ULINK2 are: GND, RST, SWDIO, SWDCLK

3. Setting SWD mode in MDK


Normal JTAG requires 20 pins, while J-Link's SWD only needs 2 wires (PA13/JTMS/SWDIO, PA14/JTCK/SWCLK) (plus the power line, it's 4), which saves 3 I/O ports (PA15/JTDI, PB3/JTDO, PB4/JNTRST) for other use, and can save some board space (only 4 ports are needed)


first step:

Step 2:

In addition, the JTAG pins can be reused as IO ports, but in this case, JLINK cannot connect to the chip. There are two solutions:

    (1) Write another program, do not reuse JTAG as an I/O port, and then write this program into the chip using the serial port tool.

    (2) Set BOOT0/BOOT1 to boot from internal RAM. Then the program in FLASH will not be executed after power-on, so JLINK can successfully "take over" the JTAG pins.


With the launch of the Cortex series by ARM, SWD debugging has become everyone's first choice. SWD is not only comparable in speed to JTAG, but also uses far fewer debugging lines. When debugging with SWD, many people generally use 4 lines:


① VCC - Power supply


② GND - Ground


③ SWDIO - Data


④ SWCLK - Clock


When downloading NXP's LPC1114, both ULINK2 and JLINK V8 are available. However, for STM32, if JLINK V8 is used, the download is possible, but if ULINK2 is used, the download always times out. However, if the NRESET reset line is added, the download is possible. Therefore, in order to be compatible with all chips and debugging tools, it is best to reserve the interface in the following way:


PIN 1: GND  

PIN 2: NRST  

PIN 3: VCC 

PIN 4: SWDIO  

PIN 5: SWDCLK


Of course, sometimes only three lines are needed, but this is unstable for some chips:


PIN 1: GND  

PIN 2: SWDIO  

PIN 3: SWDCLK


So you can also use the following method:


1 - VCC;  

2 - GND;  

3 - SWDCLK;  

4 - SWDIO;  

5 - NRST.  

The three wires in the middle are required, NRST can be added or not. Some people say that VCC can be added to power the output interface chip ALVC164245 of JLink.

Keywords:ARM Reference address:Various ARM emulator interface diagrams

Previous article:UART0 serial port programming (IV): The crisis of UART0 serial port programming in UC/OS-II
Next article:ARM Assembly: BNE and TST and BEQ

Recommended ReadingLatest update time:2024-11-16 12:46

Design of Internet of Things Server Based on ARM-LINUX Platform
  The ARM-Linux Internet of Things server is built based on the XSCALE PXA270 processor platform and the open source Linux system. The 51 single-chip microcomputer is used to connect peripheral devices such as temperature and humidity sensor modules and LED lights, and the Up-Tech embedded experiment box based on the X
[Microcontroller]
Design of Internet of Things Server Based on ARM-LINUX Platform
ARM Register Summary
ARM microprocessor supports 7 operating modes, namely: 1. User mode (usr): The normal program execution state of the ARM processor; 2. Fast interrupt mode (fiq): Used for high-speed data transmission or channel management; 3. External interrupt mode (irq): Used for general interrupt processing; 4. Supervisor mode
[Microcontroller]
Processor Architecture (IX) ARM and other architecture reference manuals including content abstract
The ARM architecture is divided into multiple versions, and there are version compatibility issues. Includes what-do-we-mean-by-architecture ARM core architecture // XXX core architecture. For example, VFP Programming Model type of data Processor Mode register abnormal Big and small endian Unaligned ac
[Microcontroller]
Interrupt service routine jump of ARM embedded system
In a 32-bit ARM system, a branch instruction or a PC register load instruction is generally placed in the interrupt vector table to implement the function of the program jumping to the interrupt service routine. For example: IRQEntry B HandleIRQ ; jump range is smaller B HandleFIQ Or IRQEntry LDR PC, = HandleIRQ; th
[Microcontroller]
Design of digital TV RF signal power detector based on ARM
1. Differences between analog and digital TV channel power In analog TV broadcasting, the peak power level is used to characterize the strength of the channel signal. When measuring the power level of the analog TV transmitter output signal, the peak level of the signal synchronization pulse is measured using a spectr
[Microcontroller]
Design of digital TV RF signal power detector based on ARM
Arm learning process
1. Get familiar with the environment First, read the development board user manual carefully, and build the environment and conduct experiments according to the manual. (Directory CD\TQ2440_CD\TQ2440 Development Board Supporting Teaching Materials\TQ2440 Development Board User Manual V2.5_20100611.pdf)   The develop
[Microcontroller]
Share some tips for beginners on ARM and embedded Linux
Most embedded development beginners are asking if there are any tips for getting started with ARM and embedded Linux? I also know why everyone asks this, so here is a summary for your reference. I would like to state in advance that the following steps are for Linux systems , not WinCE. Friends who want tips for gettin
[Microcontroller]
Wireless Video Monitoring System Based on ARM11
1 Introduction With the popularization of wireless networks, the computing power of ARM processors is constantly increasing, and the technology of computer image processing is constantly improving. ARM-based video surveillance is increasingly widely used in schools, communities, hotels, Internet cafes, medical
[Microcontroller]
Wireless Video Monitoring System Based on ARM11
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号