【学习记录】DAP调试器电路原理图完全详解:从STM32最小系统到SWD调试接口
【学习记录】DAP调试器电路原理图完全详解从STM32最小系统到SWD调试接口DAP调试器CMSIS-DAP是嵌入式开发中最常用的调试工具之一。它本质上是一个小型的STM32最小系统 USB接口 目标调试接口。本文从原理图角度逐模块拆解DAP调试器的电路设计涵盖MCU最小系统、USB通信、电源管理、状态指示、目标调试接口以及常见故障排查。保留全部技术细节适合硬件工程师参考设计。 目录MCU STM32 最小系统电路USB电路电源电路其他电路补充知识点总结一、MCU STM32 最小系统电路DAP调试器的主控MCU通常选用STM32F103C8T6小蓝板同款原因成本低、USB外设齐全、社区支持好。1. 电源电路引脚连接说明VDD (3.3V)3.3V电源主供电VSS / GNDGND接地VDDA3.3V经磁珠或电感模拟电源与VDD隔离VSSAGND模拟地VBAT3.3V 或 悬空不用RTC时可悬空VDD_USB3.3VUSB收发器供电去耦电容每个VDD引脚旁放100nF电容靠近引脚1cm。VDDA旁额外加1μF 10nF。BOOT配置BOOT0接10kΩ下拉到GND正常从Flash启动BOOT1接10kΩ下拉到GND2. 晶振电路晶振引脚负载电容说明8MHz 无源晶振OSC_IN (PD0)、OSC_OUT (PD1)两个20pF到GND主时钟USB必需32.768kHz可选OSC32_IN、OSC32_OUT两个12.5pFRTC用DAP不需要8MHz晶振是USB通信的硬性要求。STM32F103的USB外设需要精确的48MHz时钟内部RC振荡器精度不够必须用外部晶振经PLL倍频得到。3. 复位电路NRST ──┬── 10kΩ ── 3.3V ├── 100nF ── GND └── 复位按键 ── GND10kΩ上拉保证常态高电平100nF电容滤除干扰防止误复位复位按键手动复位MCU4. DEBUG电路DAP自身烧录接口这是给DAP调试器自己烧录固件用的接口必须接在STM32的SWD专用引脚上信号STM32引脚说明SWDIOPA13数据线SWCLKPA14时钟线NRSTNRST复位GNDGND共地3.3V3.3V供电引出形式4~5个排针或测试点标注“DEBUG”或“SWD_IN”。烧录方式用另一个DAP调试器或ST-Link通过这组引脚给DAP主控烧录固件。烧录完成后DAP就变成一个独立的调试器了。注意PA13/PA14在STM32复位后默认就是SWD功能不需要额外配置。但如果固件里把这两个引脚复用为GPIO需要用Connect Under Reset模式才能连上。二、USB电路连接笔记本DAP调试器通过USB与PC通信同时从USB取电。Type-C 或 Micro-USB 接口USB信号STM32引脚说明VBUS (5V)电源电路输入供电DPA12USB DPD-PA11USB DMGNDGND共地CC1/CC25.1kΩ下拉到GNDType-C受电标识Micro-USB不需要Shield通过1MΩ4.7nF到GND屏蔽层接地D上拉STM32F103的USB外设内部已集成1.5kΩ上拉不需要外部电阻。如果使用其他MCU可能需要在D上加1.5kΩ上拉到3.3V。USB保护VBUS串自恢复保险丝如JK-SMD0603-100L1A保持/2A跳闸D/D-串共模电感或22Ω电阻抑制EMID/D-并TVS二极管如USBLC6-2SC6防静电ESD保护USB接口是最容易受静电损伤的地方TVS二极管必加。三、电源电路DAP调试器需要3.3V给STM32供电同时可能需要5V给目标板供电。典型电源树USB VBUS (5V) │ ├── 自恢复保险丝 (1A) │ ├──→ 5V输出给目标板供电可选 │ └──→ LDO (如AMS1117-3.3 或 RT9013) │ └──→ 3.3V给STM32、LED、目标板参考电压LDO选型建议型号输出特点AMS1117-3.33.3V/1A便宜压差大~1.1V发热明显RT9013-333.3V/500mA低压差~250mVSOT-23-5封装LP59073.3V/250mA低噪声适合精密场合目标板供电控制DAP通常需要给目标板提供3.3V参考电压VTref但不一定给目标板供电。建议VTref从目标板取用于检测目标板是否上电3.3V输出可选通过跳线或MOSFET控制是否给目标板供电5V输出可选从VBUS直接引出四、其他电路1. LED状态灯DAP通常有2~3个LEDLED颜色含义电源LED绿色3.3V正常运行LED蓝色/绿色固件运行中心跳闪烁调试LED红色/橙色正在调试/通信中限流电阻计算为什么要加电阻不加电阻LED电流无限大瞬间烧毁电阻太大LED太暗看不见电阻太小LED太亮刺眼且增加功耗LED接法3.3V ── 电阻 ── LED正极 ── LED负极 ── GPIOGPIO输出低电平时LED亮灌电流STM32的GPIO灌电流能力比拉电流强。2. CONNECT接口连接目标开发板这是DAP调试器连接用户目标板的接口用户一侧丝印通常标SWD或JTAG。标准SWD接口推荐5针引脚信号说明1VTref目标板参考电压用于检测目标板是否上电2SWDIO数据线3SWCLK时钟线4GND共地5NRST复位可选但建议接标准JTAG接口10针或20针信号说明VTref参考电压TCK时钟TMS模式选择TDI数据输入TDO数据输出NRST复位GND地DAP通常同时支持SWD和JTAG通过固件自动识别。实际使用中SWD占95%以上因为引脚少、速度快。3. CONNECT接口的保护保护措施作用VTref串100Ω电阻限流防止目标板异常电压损坏DAPSWDIO/SWCLK串22Ω~100Ω电阻抑制反射保护IONRST串100Ω限流TVS二极管防静电GND接多个引脚保证共地可靠4. 其他可选电路电路作用UART TX/RX部分DAP支持虚拟串口引出PA9/PA10复位按键手动复位DAP主控BOOT按键进入DFU模式用于固件升级EEPROM存储序列号、配置信息SWO单线跟踪输出部分DAP引出五、补充知识点1. DAP的两种供电模式模式说明适用场景USB供电DAP从USB取电VTref只做检测目标板自己供电DAP供电DAP给目标板供电3.3V或5V目标板无独立电源注意如果目标板自己供电不要把DAP的3.3V输出接到目标板3.3V否则两个电源打架可能烧毁。2. VTref的作用VTref是目标板的参考电压DAP用它来检测目标板是否上电确定SWDIO/SWCLK的电平标准如果VTref为0DAP认为目标板未上电拒绝连接。所以VTref必须接目标板的3.3V。3. SWD与JTAG的区别维度SWDJTAG引脚数2SWDIOSWCLK NRST GND VTref4TCK/TMS/TDI/TDO NRST GND VTref速度快较慢占用引脚PA13/PA14PA13/PA14/PA15/PB3/PB4适用Cortex-M所有ARMSWD是JTAG的简化版引脚更少速度更快是Cortex-M的首选。4. DAP固件烧录流程用另一个调试器ST-Link或另一个DAP连接DAP的DEBUG接口PA13/PA14/NRST/GND/3.3V烧录DAPLink固件.hex或.bin烧录完成后DAP的USB插入PC设备管理器出现CMSIS-DAP设备用pyocd list验证识别5. 常见故障排查现象原因排查PC不识别DAPUSB枚举失败查8MHz晶振、D上拉、USB线DAP识别但连不上目标VTref为0、SWD接线错测VTref电压、查SWDIO/SWCLK能连但烧录失败NRST未接、目标板未上电接NRST、检查目标板供电LED不亮限流电阻太大、GPIO配置错换小电阻、查GPIO6. 原理图检查清单8MHz晶振 20pF负载电容NRST上拉10kΩ 100nF每个VDD旁100nF去耦USB D/D-接PA12/PA11Type-C CC1/CC2各5.1kΩ下拉VBUS串自恢复保险丝D/D-加TVSLDO输入输出电容1μF1μFLED限流电阻470Ω~1kΩCONNECT接口VTref、SWDIO、SWCLK、GND、NRSTBOOT0下拉10kΩDEBUG接口引出PA13/PA14/NRST/GND/3.3V六、总结模块核心要点STM32最小系统8MHz晶振USB必需、NRST复位、BOOT0下拉、去耦电容USB电路D接PA12D-接PA11Type-C CC下拉5.1kΩESD保护电源电路VBUS→保险丝→LDO→3.3V注意散热计算LED电路限流电阻470Ω~1kΩGPIO灌电流驱动CONNECT接口SWD五线VTref、SWDIO、SWCLK、GND、NRST保护电路VTref/SWD串电阻TVS防静电一句话总结DAP调试器 STM32最小系统电源8MHz晶振复位DEBUG接口 USB接口D/D-保护 电源电路LDO 状态LED CONNECT调试接口SWD/JTAG。核心是8MHz晶振保证USB通信VTref检测目标板供电SWD五线连接目标板。

相关新闻

Python做微信机器人:个人微信API最小收发闭环实战

Python做微信机器人:个人微信API最小收发闭环实战

用 Python 做微信机器人,最常见的起步方式是:找个示例、复制一段发送代码、在测试好友上点一点。 能发出去当然高兴,但一接到真实业务——自动回、CRM、AI——就会发现:收不稳、回双份、偶发找不到人。 个人微信 API 实战&#x…

2026/10/15 3:56:45 阅读更多 →
IDEA 的命令补全又进化了

IDEA 的命令补全又进化了

我们先来还原一个极其真实的场景 你正在写一个 Java 类,突然想重构一个方法。你明明知道 IDEA 能做到,甚至昨天刚用过。但此刻,你的大脑一片空白——快捷键是什么来着? CtrlAltShiftT?还是 CtrlAltM? 你开始…

2026/10/15 3:55:44 阅读更多 →
智慧供应链顶层规划解决方案

智慧供应链顶层规划解决方案

该文档是智慧供应链解决方案,聚焦智慧供应链的特点、解决方案、整体框架及应用。其特点包括兼容性、先进性、敏捷化、数字化、智能化等,强调技术与管理的综合集成。解决方案涵盖集中采购、分散发货等多种业务模式,通过大数据操作平台、订单履…

2026/10/15 3:55:44 阅读更多 →

最新新闻

模板代码生成工具:从元数据到可用接口的完整实现

模板代码生成工具:从元数据到可用接口的完整实现

1. 为什么需要模板代码生成工具:一大半重复代码其实不该手写做后端开发的朋友应该都有过这种体验:新项目启动,建表、写实体、写Mapper、写Service接口和实现、写Controller,然后前端再把列表页、表单页、弹窗、状态标签挨个撸一遍…

2026/10/15 4:45:53 阅读更多 →
桶排序全解析:原理、复杂度与工程实践

桶排序全解析:原理、复杂度与工程实践

1. 从"把数据扔进格子里"说起:桶排序的第一性原理如果你接触排序算法有一阵子,大概率听说过这句话:"桶排序在数据分布均匀的时候能做到接近O(n)"。但很多人学完快排、归并之后,对桶排序的印象只剩下一个模糊的…

2026/10/15 4:45:53 阅读更多 →
ET 200MP模拟量输出模块AQ 4xU/I ST选型接线调试指南

ET 200MP模拟量输出模块AQ 4xU/I ST选型接线调试指南

简介:西门子SIMATIC S7-1500/ET 200MP模拟量输出模块AQ 4xU/I ST设备手册,面向工业自动化领域的工程技术人员、系统集成商与运维人员。内容聚焦模拟量输出模块在制造、能源、交通等场景下的选型、接线、参数设置与调试问题,帮助用户实现精准的…

2026/10/15 4:45:53 阅读更多 →
Windows开机自启全攻略:启动文件夹、注册表、任务计划与服务详解

Windows开机自启全攻略:启动文件夹、注册表、任务计划与服务详解

1. 开机自启这件事,远不止把快捷方式拖进启动文件夹那么简单很多人第一次接触开机自启,都是因为某个小工具每次重启后都要手动打开,烦得不行。于是上网一搜,看到最多的答案就是“把快捷方式拖进启动文件夹”,照做之后确…

2026/10/15 4:45:53 阅读更多 →
基于地点相似度的POI推荐与路径重组MATLAB实现

基于地点相似度的POI推荐与路径重组MATLAB实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 4:45:53 阅读更多 →
延迟优化实战:从毫秒级到微秒级的系统性能提升路径

延迟优化实战:从毫秒级到微秒级的系统性能提升路径

1. 我为什么折腾到微秒级:被延迟拖垮的业务,往往都死得悄无声息很多人做性能优化,跑到“毫秒级”就收工了,觉得接口P99能压到5ms以内已经是了不起的成就。但如果你在真正的高并发业务链路里待过,就会明白:当…

2026/10/15 4:44:53 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →