JTAG 和 SWD 接口定义

news2024/11/27 4:01:48

写在前面:

本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。

目录

  • JTAG
    • 引脚分布
    • 接口定义
    • 连接拓扑
    • 引脚概述
  • SWD
    • 引脚分布
    • 接口定义
    • 连接拓扑
    • 引脚概述
  • 参考
  • 电路
  • 附录


链接:https://arachnid.cc/jtag-and-swd


JTAG

https://wiki.segger.com/JTAG

引脚分布

在这里插入图片描述

接口定义

PINSIGNALTYPEDescription
1VTrefInputThis is the target reference voltage. It is used to check if the target has power, to create the logic-level reference for the input comparators and to control the output logic levels to the target. It is normally fed from VDD of the target board and must not have a series resistor.
2Not connectedNCThis pin is not connected.
3nTRSTOutputJTAG Reset. Output from J-Link to the Reset signal of the target JTAG port. Typically connected to nTRST of the target CPU. This pin is normally pulled HIGH on the target to avoid unintentional resets when there is no connection.
5TDIOutputJTAG data input of target CPU. It is recommended that this pin is pulled to a defined state on the target board. Typically connected to TDI of the target CPU.
7TMSOutputJTAG mode set input of target CPU. This pin should be pulled up on the target. Typically connected to TMS of the target CPU.
9TCKOutputJTAG clock signal to target CPU. It is recommended that this pin is pulled to a defined state of the target board. Typically connected to TCK of the target CPU.
11RTCKInputReturn test clock signal from the target. Some targets must synchronize the JTAG inputs to internal clocks. To assist in meeting this requirement, you can use a returned, and adjusted, TCK to dynamically control the TCK rate. J-Link supports adaptive clocking, which waits for TCK changes to be echoed correctly before making further changes. Connect to RTCK if available, otherwise to GND.
13TDOInputJTAG data output from target CPU. Typically connected to TDO of the target CPU.
15nRESETI/OTarget CPU reset signal. Typically connected to the RESET pin of the target CPU, which is typically called “nRST”, “nRESET” or “RESET”. This signal is an active low signal.
17DBGRQNCThis pin is not connected in J-Link. It is reserved for compatibility with other equipment to be used as a debug request signal to the target system. Typically connected to DBGRQ if available, otherwise left open.
195V-SupplyOutputThis pin can be used to supply power to the target hardware. Older J-Links may not be able to supply power on this pin. For more information about how to enable/disable the power supply, please refer to Target power supply.
4, 6, 8, 10, 12GNDGroundGND pins connected to GND in J-Link. They should also be connected to GND in the target system.
14, 16, 18, 20ResReservedOn some models like the J-Link ULTRA, these pins are reserved for firmware extension purposes. They can be left open or connected to GND in normal debug environment. They are not essential for JTAG or SWD in general Please do not assume them to be connected to GND inside J-Link.

连接拓扑

在这里插入图片描述

引脚概述

序号引脚类型说明
9TCK输出目标时钟输入引脚,为目标 CPU 提供时钟逻辑信号。
5TDI输出目标数据输入引脚,用于发送串行测试指令和数据给目标 CPU。
7TMS输出目标模式选择引脚,TAP(Test access port) 控制器对接收到的信号进行解码,以控制测试操作。
13TDO输入目标数据输出引脚,目标 CPU 串行输出测试指令和逻辑数据。
3nTRST输出(可选)可选的复位输入目标引脚,用来指示 TAP 控制器的异步初始化。
11RTCK输入目标 CPU 返回的时钟信号,有些目标 CPU 需要同步时钟。
15nRESET输入 / 输出目标 CPU 复位信号。通常连接到目标 CPU 的 RESET 引脚。

SWD

https://wiki.segger.com/SWD

引脚分布

在这里插入图片描述

接口定义

PINSIGNALTYPEDescription
1VTrefInputThis is the target reference voltage. It is used to check if the target has power, to create the logic-level reference for the input comparators and to control the output logic levels to the target. It is normally fed from VDD of the target board and must not have a series resistor.
2Not connectedNCThis pin is not connected.
3Not usedNCThis pin is not used by J-Link when selecting SWD as interface type. If the device may also be accessed via JTAG, this pin may be connected to nTRST, otherwise leave open.
5Not usedNCThis pin is not used by J-Link when selecting SWD as interface type. If the device may also be accessed via JTAG, this pin may be connected to TDI, otherwise leave open.
7SWDIOOutputJTAG mode set input of target CPU. This pin should be pulled up on the target. Typically connected to TMS of the target CPU.
9SWCLKOutputJTAG clock signal to target CPU. It is recommended that this pin is pulled to a defined state of the target board. Typically connected to TCK of the target CPU.
11Not usedNCThis pin is not used by J-Link when selecting SWD as interface type. If the device may also be accessed via JTAG, this pin may be connected to RTCK, otherwise leave open.
13SWOInputSerial Wire Output trace port. (Optional, not required for SWD communication.)
15nRESETI/OTarget CPU reset signal. Typically connected to the RESET pin of the target CPU, which is typically called “nRST”, “nRESET” or “RESET”. This signal is an active low signal.
17Not usedNCThis pin is not connected in J-Link.
195V-SupplyOutputThis pin can be used to supply power to the target hardware. Older J-Links may not be able to supply power on this pin. For more information about how to enable/disable the power supply, please refer to Target power supply.
4, 6, 8, 10, 12GNDGroundGND pins connected to GND in J-Link. They should also be connected to GND in the target system.
14, 16, 18, 20ResReservedOn some models like the J-Link ULTRA, these pins are reserved for firmware extension purposes. They can be left open or connected to GND in normal debug environment. They are not essential for JTAG or SWD in general Please do not assume them to be connected to GND inside J-Link.

连接拓扑

在这里插入图片描述

引脚概述

序号引脚类型说明
9SWCLK输出时钟信号引脚。
7SWDIO输入 / 输出双向数据引脚。
13SWO输出(可选)可选的串行线跟踪输出引脚,允许 CPU 输出自定义数据,如 printf 输出,异步到 SWCLK 和其他调试引脚。
15RESET输入 / 输出目标 CPU 复位信号。通常连接到目标 CPU 的 RESET 引脚。

参考

https://wiki.segger.com/20-pin_J-Link_Connector

https://developer.arm.com/documentation/101636/0100/Debug-and-Trace/JTAG-SWD-Interface

在这里插入图片描述

电路

在这里插入图片描述

如果是要兼容 SWD,则需要在 JTAG_TMS 引脚的上拉电阻前端增加一个二极管,参照 JTAG_nRESET 上拉。

附录

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/781942.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

js的事件循环机制(详解)

答题思路: ● 首先基本定义,宏任务和微任务 ● 事件循环机制执行顺序 ● async / await 执行顺序 一、什么是事件循环 事件循环机制就是一种同步编程模型,用于异步处理操作。当代码中遇到需要等待一部操作结果的语句时,js引擎不会…

如何区分接口测试和功能测试

接口测试和功能测试的区别: 2023最新Jmeter接口测试从入门到精通(全套项目实战教程) 本文主要分为两个部分: 第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者…

5.2.tensorRT基础(2)-使用onnx解析器来读取onnx文件(源码编译)

目录 前言1. ONNX解析器2. libnvonnxparser.so3. 源代码编译4. 补充知识总结 前言 杜老师推出的 tensorRT从零起步高性能部署 课程,之前有看过一遍,但是没有做笔记,很多东西也忘了。这次重新撸一遍,顺便记记笔记。 本次课程学习 t…

5.3.tensorRT基础(2)-从下载onnx-tensorrt到配置好并运行起来

目录 前言1. ONNX解析器更新总结 前言 杜老师推出的 tensorRT从零起步高性能部署 课程,之前有看过一遍,但是没有做笔记,很多东西也忘了。这次重新撸一遍,顺便记记笔记。 本次课程学习 tensorRT 基础-从下载 onnx-tensorrt 到配置好…

js基础算法05--查找重复的字符

开始之前 了解什么是hash table (哈希表) for 循环中break 和 return的区别 哈希表的方式解 第一种方式,用哈希表。循环俩次,第一次储存当前字符出现的频率,没出现一次,对象key的评率value就加一。然后第…

vue3+Luckysheet实现表格的在线预览编辑(electron可用)

前言: 整理中 官方资料: 1、github 项目地址https://github.com/oy-paddy/luckysheet-vue-importAndExport/tree/master/https://github.com/oy-paddy/luckysheet-vue-importAndExport/tree/master/ 2、xlsx vue3 json数据导出excel_vue3导出excel_羊…

Zookeeper的基本概念以及安装

Zookeeper简介 Zookeeper是一个分布式的(多台机器同时干一件事情),开源的分布式应用程序协调服务,是Google公司Chubby产品,是Hadoop和Base重要的组件,.它是一个分布式应用程序提供一致性的服务的软件,提供的功能包括:配置服务,域名服务,分布式同步,组服务等 Zookeeper目…

Python生成中文词云图

词云(word cloud),也称标签云,主要用于展示文本数据。把每个单词按照其重要性进行展示,主要通过字体和颜色进行区分。Python提供了wordcloud库,可以很容易实现词云图。“词云”看起来比较美观易理解&#x…

Python学习(十六)柱状图

zdaPython学习(十四)折线图开发_yikuaidabin的博客-CSDN博客 案例数据资源 ↑ """演示基础柱状图的开发 """ from pyecharts.charts import Bar from pyecharts.options import LabelOpts # 使用Bar构建基础柱状图 bar …

视频对比工具(基于python+ffmpeg+airtest实现视频抽帧比较工具)

VideoDiff:基于ffmpeg,实现视频抽帧比较工具 使用场景:在视频渲染模块发生迭代,快速回归测试其产出的视频是否存在问题,从而节省人工回归成本 源码地址:https://github.com/jiangliuer32/VideoDiff 原理图…

什么是分布式操作系统?我们为什么需要分布式操作系统?

分布式操作系统是一种特殊的操作系统,本质上属于多机操作系统,是传统单机操作系统的发展和延伸。它是将一个计算机系统划分为多个独立的计算单元(或者也可称为节点),这些节点被部署到每台计算机上,然后被网络连接起来,…

【计算机网络 01】说在前面 信息服务 因特网 ISP RFC技术文档 边缘与核心 交换方式 定义与分类 网络性能指标 计算机网络体系结构 章节小结

第一章--概述 说在前面1.1 计算机网络 信息时代作用1.2 因特网概述1.3 三种交换方式1.4 计算机网络 定义与分类1.5 计算机网络的性能指标1.6 计算机网络体系结构1 常见的计算机网络体系结构2 计算机网络体系结构分层的必要性3 计算机网络体系结构分层思想举例4 计算机网络体系结…

红包雨架构的设计汇总

一 微服务总体架构 1.1 微服务总体架构 1.2 红包雨的流程 1.3 发红包的内容 1.3.1 概述流程 1.发红包-》抢红包。 1.所有人签到的金额之和等于红包总金额。2.每个人至少抢到一分钱;3.保证所有人抢到金额的几率相等。 1.3.2 拆分红包通用流程算法 其中拆红包最…

详解分类指标Precision,Recall,F1-Score

文章目录 1. Precision(精度)2. Recall(召回率)3. F1-Score4. Accuracy(准确率)5. P-R 曲线6. TPR、FPR6.1 TPR(真正率)6.2 FPR(假正率) 7. ROC曲线8. AUC曲线…

【SpringBoot项目】Tomcat started on port(s): 8080 (http) with context path ‘‘

运行程序后出现下面的错误,并且在postman中无法获取到数据 在idea中的错误显示的如下 本人的原因是忘记在Controller中忘记写!!!! RestController 如果你不是以下原因可以参考下面的文章: Initializing S…

SSTI无过滤

解题步骤 打开环境后就只有一段文字,说密码错误,来回看了源码,抓包都没有什么提示,并且也没有有任何的传参显示 最后想来想去,终于灵机一动,这段文字就是在提示我们,可传的参数为password 所以…

[JAVAee]多线程入门介绍及其创建与基础知识

目录 1.进程 2.线程 3.进程与线程的区别与联系 4.为什么会有线程? 5.创建第一个多线程程序 方法一:继承Theard类 方法二:实现Runnable接口 方法三:匿名内部类创建Thread子类对象 方法四:匿名内部类创建 Runnable 子类对象 方法五(推荐方法):lambda 表达式创建 Runna…

03、怎么理解TPS、QPS、RT、吞吐量?

通常我们都从两个层面定义性能场景的需求指标:业务指标和技术指标。这两个层面需要有映射关系,技术指标不能脱离业务指标。一旦脱离,你会发现你能回答”一个系统在多少响应时间之下能支持多少 TPS“这样的问题,但是回答不了”业务…

开放的安全影响:Elastic AI Assistant

作者:Dain Perkins 在过去的几年里,我们一直在讨论开放和透明的安全方法的好处,即向公众提供对我们的检测和预防功能、代码、文档等详细信息的访问,这将增强我们能够为客户提供的安全功能。 在本博客中,我们将探讨我们…

PHP8知识详解:PHP8的新特性

PHP 8是PHP编程语言的一个主要版本,在2020年11月26日发布。它引入了许多新特性和改进,包括以下一些主要特性: 1. JIT 编译器:PHP 8引入了名为Tracing JIT的即时(Just-In-Time)编译器。JIT可以将PHP脚本中频…