ESP32C3 开发板在Linux环境下,进行JTAG 调试演示-启明云端乐鑫代理商

JTAG 调试教程

本教程主要演示 esp32c3 开发板在 linux 环境下,通过 vscode 的 esp-idf 插件使用 jtag 调试工具。

esp32c3 不但内置了USB-JTAG,还内置了USB-SERIAL,仅需要一根USB线即可实现下载和调试仿真。

下面演示调试仿真的过程。

创建工程

使用 vscode 中的 esp-idf 插件,创建一个 以hello_world 为模版的工程。

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

编译烧录

通过一根数据线,将 esp32c3 开发板连接到 PC,选择所使用的设备类型和串口设备号
在这里插入图片描述

编译程序,并将编译生成的固件烧录到 esp32c3 开发板中
在这里插入图片描述

jtag连线

烧录完毕后,将数据线拔出。用另一个数据线,将四根线引出,分别对应 esp32c3 开发板的四个引脚
在这里插入图片描述

调试仿真

重新选择所使用的串口设备号
在这里插入图片描述

在 esp-idf 插件中打开 Openocd Server,开始 Debug。(Debug前需确保已经编译并烧录固件)
在这里插入图片描述
在这里插入图片描述
短暂等待过后可以看到屏幕下方变为橙色,屏幕上方会出现 Debug 的操作框
在这里插入图片描述
在这里插入图片描述
点击操作框左侧继续调试程序,可以看到下方正常运行,helloworld程序中自带重启操作
在这里插入图片描述
在程序中添加一个bug,重新编译烧录后再执行 Debug,可以看见自动停在了 bug 发生的位置
在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

系统思考—抓重点

最近与一些中小微企业的老板交流时,深刻感受到大家都陷入了一种忙碌的困境。在资源有限的情况下,到底该抓住什么?这个问题不仅关乎未来的战略,也与预算息息相关。面对复杂多变的市场环境,许多企业尝试了各种方法&#…

rpa批量发送邮件如何通过编辑器编发邮件?

rpa批量发送邮件的技巧?怎么使用rpa邮箱群发助手? 手动发送邮件变得越来越繁琐且效率低下。为了解决这一问题,越来越多的企业开始采用RPA技术来批量发送邮件。AokSend将详细探讨如何通过编辑器来实现rpa批量发送邮件的功能,从而提…

【JVM】—深入理解G1回收器——概念详解

深入理解G1回收器——概念详解 ⭐⭐⭐⭐⭐⭐ Github主页👉https://github.com/A-BigTree 笔记链接👉https://github.com/A-BigTree/Code_Learning ⭐⭐⭐⭐⭐⭐ 如果可以,麻烦各位看官顺手点个star~😊 文章目录 深入理解G1回收器…

OceanBase 4.x 部署实践:如何从单机扩展至分布式部署

OceanBase 4.x 版本支持2种部署模式:单机部署与分布式部署,同时支持从单机平滑扩展至分布式架构。这样,可以有效解决小型业务向大型业务转型时面临的扩展难题,降低了机器资源的成本。 以下将详述如何通过命令行,实现集…

【JavaScript】LeetCode:71-75

文章目录 71 搜索插入位置72 搜索二维矩阵73 在排序数组中查找元素的第一个和最后一个位置74 搜索旋转排序数组75 寻找旋转排序数组中的最小值 71 搜索插入位置 二分查找在最后一轮比较中,mid所指向的值 > target,right往左收,此时left所指…

容器实战高手课---09 Page Cache:为什么我的容器内存使用量总是在临界点

你好,我是程远。 上一讲,我们讲了Memory Cgroup是如何控制一个容器的内存的。我们已经知道了,如果容器使用的物理内存超过了Memory Cgroup里的memory.limit_in_bytes值,那么容器中的进程会被OOM Killer杀死。 不过在一些容器的使…

MybatisPlus分页Page插件

分页Page插件 首先,要在配置类中注册MyBatisPlus的核心插件,同时添加分页插件。设置分页查询的配置类,interceptor只有拦截作用,功能需要自己添加。这里我们添加上分页查询功能。 import com.baomidou.mybatisplus.annotation.DbType; impo…

Java中的数组

一、数组的创建及初始化 1、创建数组 int 表示数组中元素类型 int[] 表示数组的类型 array 表示数组名 2、数组初始化 数组初始化可分为动态初始化和静态初始化,动态初始化只初始化数组的大小,而静态初始化是直接给出数组中的具体元素 动态初始化&am…

dlib库实现人脸检测

摘要 本文将向您介绍如何使用dlib库在图片以及视频中实现人脸识别检测。通过简单的Python代码,我们将展示如何定位图片中的人脸并绘制边框。 引言 人脸识别技术在当今世界越来越普及,应用场景广泛,如安全监控、身份认证、图像处理等。dlib…

OpenCV高级图形用户界面(11)检查是否有键盘事件发生而不阻塞当前线程函数pollKey()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 轮询已按下的键。 函数 pollKey 无等待地轮询键盘事件。它返回已按下的键的代码或如果没有键自上次调用以来被按下则返回 -1。若要等待按键被按…

考研C语言程序设计_语法相关(持续更新)

目录 一、语法题strlen转义字符内置数据类型字符串结束标志局部变量和全局变量名字冲突 局部优先switch语句中的关键字数组初始化是否正确注意define不是关键字C语言中不能用连等判断switch( )的括号里可以是什么类型?关于if关于switch关于while 二、程序阅读题有关static有关…

【重学 MySQL】六十九、揭秘级联约束,让你的数据库关系更智能、更强大!

【重学 MySQL】六十九、揭秘级联约束,让你的数据库关系更智能、更强大! 级联约束的定义级联约束的类型级联约束的应用场景级联约束的实现方式级联约束的注意事项 在MySQL数据库中,级联约束是维护数据完整性和一致性的重要机制。它允许在执行某…

Spring源码分析:bean加载流程

背景 在Spring中,Bean的加载和管理是其核心功能之一,包括配置元数据解析、Bean定义注册、实例化、属性填充、初始化、后置处理器处理、完成创建和销毁等步骤。 源码入口 AbstractBeanFactory#doGetBean 具体源码流程如下: bean加载流程&#…

万界星空科技:智能称重打标系统

万界星空科技的称重系统是其为制造业,特别是线缆、漆包线、食品等行业提供的重要解决方案之一。以下是对该系统的详细介绍: 一、系统概述 万界星空科技称重系统是集成在其MES(制造执行系统)中的一个功能模块,专门用于…

数据结构之旅(顺序表)

前言: Hello,各位小伙伴们我们在过去的60天里学完了C语言基本语法,由于小编在准备数学竞赛,最近没有给大家更新,并且没有及时回复大家的私信,小编在这里和大家说一声对不起!,小编这几天会及时给大家更新初阶数据结构的内容,然后我们来学习今天的内容吧! 一. 顺序表的概念和结…

2024.10.15 sql

刷题网站&#xff1a; 牛客网 select device_id as user_infos_example from user_profile where id < 2 select device_id, university from user_profile where university"北京大学" select device_id, gender, age, university from user_profile where ag…

Bellman-Ford

思路 外层遍历V-1次内层遍历所有边&#xff08;共E次&#xff09;&#xff0c;尝试更新起点的终点的dist值 原材料是backup&#xff08;前次遍历的结果&#xff09;维持住性质&#xff08;见下&#xff09; 优点 允许负环 允许负权边 有特殊性质 缺点 复杂度达到 例题 代码…

2、CSS笔记

文章目录 二、CSS基础CSS简介CSS语法规范CSS代码风格CSS选择器CSS基础选择器标签选择器类选择器--最常用id选择器通配符选择器 CSS复合选择器交集选择器--重要并集选择器--重要后代选择器--最常用子代选择器--重要兄弟选择器相邻兄弟选择器通用兄弟选择器 属性选择器伪类选择器…

Flutter url_launcher:打开网页、邮件、电话和短信的最佳实践

Flutter url_launcher&#xff1a;打开网页、邮件、电话和短信的最佳实践 视频 https://youtu.be/uGT43gZNkyc https://www.bilibili.com/video/BV1G42EYcE7K/ 前言 原文 如何在 Flutter 中使用 url_launcher 打开网页和发送短信 本文介绍了如何在 Flutter 中使用 url_launc…

【深度学习代码调试1】环境配置篇(上) -- 安装PyTorch(安利方法:移除所有国内源,使用默认源)

【深度学习代码调试1】环境配置篇 -- 安装TensorFlow和PyTorch 写在最前面1. 创建新的Conda环境2. 安装PyTorch及相关库&#xff08;可以直接跳到2.3安装方法&#xff09;2.1 检查CUDA版本2.2 解决安装过程中常见问题2.2.1 超时问题&#xff08;这个不是最终解决方案&#xff0…