VSCODE platformio ESP32-S3 内置 JTAG 接口断点单步调试笔记

news2024/9/20 22:53:26

ESP32 S3的两种JTAG调试方法

  • ESP32 S3的有两种JTAG调试方法,直接连接板子上的JTAG引脚进行调试,或者用ESP32-S3 内置 JTAG 接口进行调试,这些方法有助于开发者在开发过程中进行更深入的调试。

1、ESP32-S3 内置 JTAG 接口

  • 使用 ESP32-S3 内置 JTAG 接口ESP32-S3 芯片本身就集成了 JTAG 功能,这意味着你可以直接通过 USB 线连接到芯片的 D+ 和 D- 引脚来进行 JTAG 调试,而不需要额外的 JTAG 适配器。这种调试方式较为简便,只需要按照以下步骤操作:硬件连接:将 USB 线的 D+ 和 D- 引脚连接到 ESP32-S3 的相应引脚上。注意不要将 USB 通信引脚误连到通常用于串行通信的 RxD 和 TxD 引脚上。软件配置:使用支持 JTAG 调试的工具,如 OpenOCD。配置相应的 OpenOCD 配置文件,指定正确的 JTAG 配置和目标设备。

  • ESP32-S3 系列芯片集成了一个 USB 串口/JTAG 控制器,作为兼容 USB 2.0 全速模式的设备。GPIO19 和 GPIO20 可以分别作为 USB 的 D- 和 D+(通过USB进行直连的方法如以下原理图所示),线上建议预留串联电阻(初始值可为 0 Ω)和对地电容(初始可不上件),并注意靠近芯片端放置。
    在这里插入图片描述

2、外部 JTAG 适配器

在这里插入图片描述

  • 可以使用传统的 JTAG 适配器来实现调试。使用外部 JTAG 适配器的方法包括:硬件连接:连接 JTAG 适配器到 ESP32-S3 的 JTAG 接口,通常包括 TCK, TDI, TDO, TMS, nTRST 等引脚。软件配置:同样使用支持 JTAG 的调试工具,例如 OpenOCD。

内置 JTAG 接口调试过程

vcode + platformio 插件安装与测试

  • 在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 测试用的硬件:https://oshwhub.com/z294933698/4-2-cun-mo-shui-ping-gai_copy
  • 进入下载模式:EN上升沿时候GPIO0保持为低电平,即在烧录的过程中按住GPIO0,单片机和电脑进行 Serial port COM3 Connecting…时点击EN即可
    在这里插入图片描述
    在这里插入图片描述

集成jtag驱动安装

在这里插入图片描述

  • 驱动地址:https://dl.espressif.com/dl/idf-driver/idf-driver-esp32-usb-jtag-2021-07-15.zip

  • 解压后右键点击 USB_JTAG_debug_unit.inf 进行安装
    在这里插入图片描述
    在这里插入图片描述

openocd安装

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

进入jtag模式

  • 未连接USB端口
    在这里插入图片描述

  • 连接USB端口
    在这里插入图片描述

  • 芯片复位释放后,GPIO0 和 GPIO46 共同决定启动模式
    在这里插入图片描述

  • 点击板载复位按钮进入JTAG调试模式:
    在这里插入图片描述

  • 链接USB端口COM7进行调试,链接COM6进行应用程序加载和监视,即可进行调试

eFuse配置与jtag连接

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

进行调试

  • PlatformIO项目配置文件如下:
; PlatformIO Project Configuration File
;
;   Build options: build flags, source filter
;   Upload options: custom upload port, speed and extra flags
;   Library options: dependencies, extra library storages
;   Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html
[env:esp32-s3-devkitm-1]
platform = espressif32
board = esp32-s3-devkitm-1
framework = arduino
upload_port = COM7
; upload_speed = 2000000
; monitor_speed = 115200
monitor_port = COM6
debug_tool = esp-builtin
; debug_init_break = break setup
debug_init_break = tbreak setup
build_type = debug
  • 点击调试按钮进行程序调试
    在这里插入图片描述

CG

  • ESP32 S3原理图设计手册
  • S3模组电路设计
  • 配置 ESP32-S3 内置 JTAG 接口
  • esp32s3 规格书

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

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

相关文章

第63期 | GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…

如何使用unittest和pytest进行python脚本的单元测试

1. 关于unittest和pytest unittest是python内置的支持单元测试的模块,他提供了核心类,TestCase,让单元测试 代码的编写不再是从0开始,不再是作坊式,而是标准化,模板化,工厂化。 pytest是第三方…

微软官方U盘制作工具重装Windows11系统教程

微软官方U盘制作工具重装Windows11系统教程 **注意:**在安装系统的过程中,有可能会因为操作失误造成硬盘原有数据丢失,建议大家要提前做好重要资料备份,避免出现无法挽回的损失。 ​ Windows 11 对于大部分用户而言是完全没有使用…

国产JS库(js-tool-big-box)7月度总结

js-tool-big-box开发已经有3个月了,团队内的小伙伴进行了热烈的讨论,持续做了功能迭代。小伙伴们也做了艰苦卓绝的文档分享,有纯功能分享类的,有带有小故事的,有朋友们利用自己独自网站分发分享的。7月份快要结束了&am…

【云原生】Pass容器研发基础——汇总篇

云原生基础汇总 系列综述: 💞目的:本系列是个人整理为了云计算学习的,整理期间苛求每个知识点,平衡理解简易度与深入程度。 🥰来源:每个知识点的修正和深入主要参考各平台大佬的文章&#xff0c…

Backtrader 文档学习- 整体架构功能分析理解

Backtrader 文档学习- 架构功能分析理解 1. 概述 backtrader是一个用于开发和执行交易策略的Python框架。它提供了一套完整的工具和功能,使得用户可以方便地进行策略回测、实盘交易以及数据分析。 backtrader的入口为Cerebro类,该类将所有输入(Data F…

FPGA学习笔记-1 FPGA原理与开发流程

1 初识FPGA 文章目录 1 初识FPGA1.1 基本认知1.1.1 什么是FPGA?1.1.2 什么是HDL?什么是Verilog?1.1.3 硬件开发与软件开发1.1.4 FPGA与其他硬件的对比1.1.5 FPGA优势与局限性1.1.6 FPGA的应用1.1.7 FPGA的学习之路 1.2 FPGA开发流程1.2.1 一般…

【学习AI-相关路程-概念了解-基础概念-正负样本-模型-文件结尾-卷积-yolov8模型-概念学习】

【学习AI-相关路程-概念了解-基础概念-正负样本-模型-文件结尾-卷积-yolov8模型-概念学习】 1、前言2、了解正负样本1-定义2-正样本3-负样本4-举例 3、模型这个概念1- 模型的定义2- 模型的训练3- 模型的推理4- 模型的评估5- 模型的类型6- 常见的模型 4、以这样 .yaml 结尾文件是…

以太坊私有链 搭建及相关操作

文章目录 1、创建私有链1.1 创建配置文件1.2 初始化私有链1.3 启动私有链1.4 添加节点1.4.1 启动节点A1.4.2 启动节点B1.4.3 查看节点A信息1.4.4 节点B主动加入到节点A1.4.5 查看已连接的节点数1.4.6 查看其它节点信息2、以太坊挖矿相关操作2.1 查看账户2.2 创建账户2.3 查看账…

RUST实现远程操作电脑手机

简介: Rust Desk 是一个开源的远程桌面软件,能够完全替代向日葵和ToDesk的功能,包括电脑控制电脑、电脑控制手机、手机控制电脑等。它是完全免费的。 下载: 需要下载 Rust Desk 的服务端和客户端安装包。 安装: 服务…

PHP移动端商城分销全平台全端同步使用

📱【掌中购物新纪元:探索移动端购物商城系统的无限魅力】🛍️ 🚀 随时随地,购物自由新体验 在这个快节奏的时代,移动端购物商城系统彻底颠覆了传统购物方式,让消费者享受到了前所未有的便捷与…

探索RPA自动化流程机器人在财务领域的应用

随着科技的不断发展,企业对于流程自动化的需求日益增长。在此背景下,RPA机器人流程自动化技术应运而生,并在财务领域展现出强大的应用潜力。RPA能够模拟人类在计算机上的操作,自动化处理大量重复、繁琐的财务流程,为企…

linux共有云主机ssh升级(以openEuler22.03为例)

目录 为什么要升级ssh怎么查看CVE如何查找新版本的opensshOpenSSH 升级ssh步骤1. 下载源码包2. 备份旧文件防止升级失败3. 停止并卸载旧ssh4. 解压、编译、编译安装新ssh5. 修改systemd文件以便systemctl使用sshd6. 测试 为什么要升级ssh openssh作为使用最为广泛的linux下ssh…

机器学习——线性回归(sklearn)

目录 一、认识线性回归 1. 介绍 2. 多元线性回归的基本原理(LinearRegression) 二、多重共线性 1. 介绍 2. 多重共线性详细解释 三、岭回归(解决多重共线性问题) 1. 模型推导 2. 选取最佳的正则化参数取值 四、Lasso&am…

(寄中寄) docker destop 的wsl问题——记一次在win10虚拟机的上的启动docker

🎪🎢🎡🎠🤡🦁 在win10上可能可以用docker,不过在win10上用docker有点不可能 wsl在windows中可能需要安装,不过wsl在windows安装有点不可能 应该是不用安装吧 可能需要重启 然后 …

移动运维APP项目建设:重塑运维服务新范式

在当今信息化高速发展的时代,信息系统已成为企业运营的核心支撑。为确保信息系统稳定、高效运行,运维团队面临着前所未有的挑战。传统运维方式受限于固定场所和设备,难以满足随时随地访问、快速响应等现代运维需求。因此,依托现有…

uniapp自定义navigationBar

最终效果: 一、关闭默认导航栏 pages.json文件中,对单个页面关闭 "navigationStyle": "custom" "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pag…

IP地址证如何实现HTTPS访问?(内网IP、公网IP)

IP地址证书(全称为IP地址的SSL/TLS证书)是实现通过IP地址进行HTTPS访问的关键。以下是实现这一目标的详细步骤: 一、选择证书颁发机构(CA) 1.选择支持IP证书的CA:并非所有证书颁发机构都提供为IP地址颁…

(计算机网络)网络层

目录 一.网络层提供哪种服务 二.两种服务的比较 三.ip协议 四.ip地址 五.ip地址的分类 六.子网掩码 七.路由器介绍 一.网络层提供哪种服务 1.ip地址--唯一的标识互联网上的某一台主机 2. 虚电路:虚拟的电路 二.两种服务的比较 ip数据报,不需要建…

航空航天构型管理

构型管理(CM)被定义为在产品的生命周期中应用的SE技术和管理规程。CM的五个原则是:CM计划与执行、配置识别、配置变更和差异控制、配置状态核算和配置验证。 广义上的构型管理规划和管理是有效实施配置管理的关键。特别是在不同项目之间的差异中,构型管理…