登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
安全
›
《ESP32-S3使用指南—IDF版 V1.6》第九章 USB 串行/JTAG ...
《ESP32-S3使用指南—IDF版 V1.6》第九章 USB 串行/JTAG 控制器控制台简介
[ 复制链接 ]
邰怀卉
6 小时前
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
第九章 USB 串行/JTAG 控制器控制台简介
在现代嵌入式系统开发中,串口通信和调试功能是不可或缺的组成部分。ESP32-P4芯片通过内置的USB串行/JTAG控制器,简化了开发者的工作流程,消除了对外部USB-UART桥接芯片的需求。这一控制器不仅实现了高效的串口通信,还提供了强大的调试功能,使得开发、测试和调优过程更加便捷。本章节将深入探讨USB串行/JTAG控制器的功能、连接方式以及在实际开发中的应用,以帮助读者充分利用这一强大特性。
本章分为如下几个小节:
9.1 USB 串行/JTAG 控制器控制台概述
9.2 如何使用USB 串行/JTAG 控制器
9.1 USB 串行/JTAG 控制器控制台概述
ESP32-P4芯片集成了一个功能强大的USB串行/JTAG控制器,该模块可以用于对SoC的Flash进行编程、读取程序输出以及将调试器连接到运行中的程序。通过USB主机设备(以下简称“主机”)与ESP32-P4直接通信,无需任何额外的外部组件即可实现这些功能。
传统使用UART和JTAG功能调试ESP32-P4项目虽然可行,但存在以下不足:
1)UART和JTAG都占用了IO引脚,减少了开发者可用于外设控制的引脚数量;
2)主机通过外部芯片或适配器与UART和JTAG通信,这增加了额外的硬件设计复杂度。
为解决上述问题,ESP32-P4提供了USB串行/JTAG控制器,集成了USB转串口和USB转JTAG的功能。该模块通过USB 2.0协议仅使用两条数据线(D+和D-)与主机通信,仅需占用两根引脚即可完成ESP32-P4的调试工作。
USB串行/JTAG控制器具有以下功能特点:
1)USB全速设备(Full-speed)
硬件集成 CDC-ACM(通信设备类 - 抽象控制模型)和 JTAG 适配器功能。
2)CDC-ACM功能:
支持基于CDC-ACM标准的串口模拟(即插即用,兼容大多数现代操作系统)。提供主机可控的芯片复位功能以及进入下载模式的能力。
3)JTAG适配器功能:
提供紧凑高效的JTAG指令表示,支持快速通信。
4)多种端点支持:
包括一个控制端点(Control EP)、一个虚拟中断端点(Dummy int EP)、两个批量输入端点(Bulk in EP)和两个批量输出端点(Bulk out EP),数据负载最大支持64字节。
5)集成物理层(PHY):
内部集成 USB PHY,连接主机所需的外部组件极少甚至可以省略。
下图是USB串行/JTAG控制器的模块组成。
图9.1.1 USB 串行/JTAG 控制器功能框图
如上图所示,USB串行/JTAG控制器由以下组件组成:USB PHY、USB设备接口、JTAG命令处理器、USB Device Logic响应捕获单元和CDC-ACM寄存器。USB PHY和设备接口由从基带PLL(BBPLL)派生的48 MHz时钟驱动;CDC-ACM模块中软件可访问的部分由APB_CLK时钟驱动。JTAG命令处理器连接到主处理器的JTAG调试单元;CDC-ACM寄存器连接到APB总线,因此可以由主CPU运行的软件进行读写操作。
需要注意的是,虽然USB串行/JTAG设备支持USB 2.0标准,但它仅支持全速模式(12 Mbps),而不支持USB 2.0标准引入的其他模式,例如高速模式(480 Mbps)。
ESP32芯片通常通过UART实现串口通信,并可借助外部USB-UART桥接芯片连接至主机或PC上的串口控制台仿真器。然而,具备USB串行/JTAG控制器的ESP32芯片,利用控制器的CDC-ACM部分可以直接与主机/PC实现串口连接,无需外部USB-UART桥接芯片。这一设计简化了连接过程,提高了系统的灵活性和可靠性。
基于这一优势,ESP32-P4芯片内置USB串行/JTAG控制器,能够高效地实现串口通信和JTAG调试功能,进一步减少对外部USB-UART桥接芯片的依赖。通过该控制器,用户可以方便地将ESP32-P4连接至主机或PC,进行各种操作和调试。如下图所示。
图9.1.2 PC机与ESP32-P4通过USB进行串口通信
从上面的三幅图可以看出,PC机与ESP32-P4芯片之间的串口通信有三种连接方式。第一幅图展示了通过ESP32-P4芯片的内部USB串行/JTAG控制器直接实现通信。第二和第三幅图则展示了使用USB转UART模块连接ESP32-P4外设UART接口的两种方式,它们的唯一区别在于:第二幅图是开发板上集成的USB转UART电路,而第三幅图则是一个独立的模块。为了方便用户使用这些功能,我们正点原子选择了第一和第二幅图所示的连接方式。这两种方式均可有效地实现PC与ESP32-P4芯片之间的串口通信,用户可以根据实际需求进行选择。
接下来,笔者将介绍USB串行/JTAG控制器的功能特点及其硬件连接方式。
1,功能特点:
1)双向串行控制台:支持与ESP-IDF监视器或其他串行监视器的双向通信,方便用户进行数据交互和调试。
2)便捷烧录:使用esptool.py或 idf.py flash命令,用户可轻松将程序烧录到ESP32-P4。
3)JTAG调试:借助OpenOCD等工具,用户可进行实时调试,同时保持串口通信。
2,硬件连接
将ESP32-P4与USB端口连接时,需注意以下引脚配置:
1)D+(绿线):连接至GPIO25或27。
2)D-(白线):连接至GPIO24或26。
3)GND(黑线):连接至地。
4)5V(红线):连接至电源供电。
关于USB串口/JTAG控制器的管脚选择,笔者建议使用默认的GPIO24/25号管脚。有关这一部分的详细知识,笔者已在第二章节的2.2.2小节中表2.2.2.1进行了讲解,这里不再赘述。
9.2 如何使用USB 串行/JTAG 控制器
在ESP-IDF的配置菜单中,选择USJ_ENABLE_USB_SERIAL_JTAG选项,即启用USB串行/JTAG控制器,如下图所示。
图9.2.1 启用USB 串行/JTAG 控制器
ESP32芯片上电后,USB-Serial-JTAG模块默认开启。如果您的应用程序不需要该模块,且不依赖它作为系统控制台或进行JTAG调试,您可以选择禁用此功能。禁用后,该模块的时钟将在启动时被关闭,从而节省一些功耗。
当我们选择UART0端口作为主要输出端口但未连接时,辅助选项支持通过其他特定端口(如USB 串口/JTAG)进行输出。需要注意的是,当前的辅助输出仅支持不使用REPL的非阻塞模式。如果您希望使用REPL并在阻塞模式下输出或通过该辅助端口进行输入,请在“Channel for console secondary output”菜单中将主要配置更改为该端口。这样可以确保正常的数据交互和调试体验,如下图所示。
图9.2.2 配置USB 串口/JTAG正常输出日志
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
ESP32
S3
使用指南
IDF
V1
相关帖子
《ESP32-S3使用指南—IDF版 V1.6》第五章 工程的新建与配置
安装Sealos(新版k8s v1.33.6)
安装Sealos(新版k8s v1.33.6)
JavaParser使用指南
《ESP32-S3使用指南—IDF版 V1.6》第六章 初识Menuconfig
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
《ESP32-S3使用指南—IDF版 V1.6》第五章 工程的新建与配置
3
40
饨篦
2026-02-26
业界
安装Sealos(新版k8s v1.33.6)
3
951
梁丘艷蕙
2026-02-26
业界
安装Sealos(新版k8s v1.33.6)
4
263
敖可
2026-02-26
业界
JavaParser使用指南
3
947
荦绅诵
2026-02-28
安全
《ESP32-S3使用指南—IDF版 V1.6》第六章 初识Menuconfig
4
788
烯八
2026-03-02
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
邰怀卉
6 小时前
关注
0
粉丝关注
13
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991125
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
韶又彤
9912
6
宋子
9879
7
闰咄阅
9993
8
刎唇
9995
9
蓬森莉
9869
10
遗憩
10006
查看更多
今日好文热榜
493
(面试题)Netty 线程模型
701
一类并查集维护的区间染色问题
184
ASP.NET Core 认证鉴权实战:JWT、Policy
212
数据库服务读写分离架构
506
3分钟搞懂深度学习AI:深度学习大爆发
909
2026 移动测试AI新工具盘点之优测云真机
369
【赵渝强老师】使用TiSpark在Spark中访问Ti
329
【赵渝强老师】使用TiSpark在Spark中访问Ti
822
【赵渝强老师】使用TiSpark在Spark中访问Ti
657
99.9%纯AI 做了一个ICO图标生成器(免费 全
607
【节点】[SceneDepthDifference节点]原理解
232
HagiCode 平台的多 AI Provider 架构实践
717
2026TikTok必备的选品方法和技巧,爆款产品
914
2026TikTok必备的选品方法和技巧,爆款产品
138
《ESP32-S3使用指南—IDF版 V1.6》第九章 U
564
读2025世界前沿技术发展报告08智能制造技术
413
读2025世界前沿技术发展报告08智能制造技术
413
OpenClaw:AI代理的“利爪”还是企业安全的
982
OpenCode系列---【OpenCode接入白山智算模
723
OpenCode系列---【OpenCode接入白山智算模