五 配套DAPLINK仿真器

其内部PCB如下图所示:

参考了官方DAPLink原理图,在其基础上,增加了3.3V和5V的限流输出,并在各类对外引脚上增加了TVS防护。支持SWD+一路串口,专门设计并量产这个作为大家学习 天空星·筑基学习板 的配套调试器。
其和 天空星·筑基学习板 连接的图片如下图所示。

5.1 概述
本产品是基于 ARM 官方开源项目 DAPLink 优化设计的调试烧录器。主控采用高性能 STM32F103CBT6为主控芯片,具备 128KB 大容量 Flash,完美支持 DAPLink 的所有高级特性。
它不仅是一个调试器,更集成了 USB转串口 和 U盘拖拽下载(当前仅添加了STM32F407的下载算法) 功能,是嵌入式开发(STM32, GD32, HC32等)的绝佳搭档。
- 三合一功能:集 调试仿真 (CMSIS-DAP) + 虚拟串口 (CDC) + 拖拽下载 (MSC) 于一身。
- 真·免驱:采用微软 WINUSB 协议,Win10/Win11/MacOS/Linux 系统插上即用,告别繁琐的驱动安装。
- 多重保护:
- 过流保护:内置 500mA 自恢复保险丝,保护您的电脑 USB 接口。
- 静电防护:USB 接口及所有 IO 调试接口均配备 TVS/ESD 保护二极管阵列,抗静电干扰,从容应对干燥环境。
- 支持广泛:完美支持 Keil MDK, IAR, PyOCD, OpenOCD 等主流开发工具。
- 固件可升级:基于 CBT6 大容量芯片,支持通过 U 盘模式拖拽更新调试器自身的固件(上电前把简牛座那里的)。
- 带SWO功能:由串口实现,最高支持2M,建议平时用1M,如果需要更稳定的trace,需要跟换其他版本的固件,在硬件设计上,我们的daplink是兼容其他两种固件的。
5.2 引脚说明
在嵌入式调试中,接线正确是第一步。很多初学者遇到的 连接失败 ,80%都是因为线序接反或电平不匹配导致的。请严格按照下表将 DAPLink 与 天空星(或其它目标板)连接。
本DAPLink仿真器的IO只支持3.3V电平,如果你单片机的IO电平不是3.3V,请不要链接,否则可能会烧毁。
| DAPLink仿真器 引脚 【与面板对应】 | 目标板 引脚 | 说明 |
|---|---|---|
| RST | NRST | 复位引脚。用于控制目标芯片复位。在下载程序或调试时,DAPLink通过拉低此引脚使MCU进入复位状态,可以强行复位进入低功耗状态的单片机,如果各位在调试器设置界面选择为引脚复位则需要连接本脚。 |
| 5V0 | 5V | 5V电源输出。直接取自USB电源,经过了限流保护。可为天空星开发板(或者你的其他板子)供电。 |
| DIO | SWDIO | 串行数据线 (Serial Wire Data I/O)。SWD协议的双向数据信号线,用于调试器与芯片内核进行数据交互。 |
| CLK | SWCLK | 串行时钟线 (Serial Wire Clock)。SWD协议的时钟信号,由DAPLink产生,作为时钟来确定数据传输的时序。 |
| SWO | TRACESWO | 串行线输出 (Serial Wire Output)。用于ITM调试信息输出,可代替串口打印,实现更高速、非阻塞的变量追踪(Trace)。时钟最高2M,但建议各位使用1M的时钟,这个是用内部芯片STM32F103CBT6的串口来实现的,没有其他商业调试器那么稳定。 |
| 3V3 | 3V3 | 3.3V电源输出。由DAPLink仿真器的内部LDO稳压产生,可为小功耗目标板供电,或作为目标板IO电压的参考基准。 |
| GND | GND | 电源地。必须连接 这是信号传输的基准电平,不共地会导致通讯失败。 |
| GND | GND | 备用接地引脚,可共用来增强回路稳定性。 |
| TXD | USART_RX | 虚拟串口发送。连接目标板的 RX 端。DAPLink发出的数据,目标板来接收。 |
| RXD | USART_TX | 虚拟串口接收。连接目标板的 TX 端。目标板打印的 printf 数据,由此引脚进入DAPLink并传至电脑。虽然说是虚拟串口,初学者就把他当成普通串口来理解就可以。 |
5.3 使用说明
5.3.1 硬件连接与状态确认
- 首先确保你的daplink连接电脑可以正常看到一个U盘弹出来,名称为
LC DAPLINK容量为63.9MB左右,这只是虚拟出来的,并不是它真的有这么大。 - 根据5.2章节的引脚说明,把你的开发板和DAPLINK仿真器连接好。如果是天空星系列的话直接对插就好了,因为本DAPLink仿真器的引脚定义就是对照着天空星的2x5p调试口来设计的。
- 打开你对应的IDE,进行下载测试。
5.3.2 Keil MDK配置(以MDK V5.xx为例)
【TODO】:等待更新
5.3.3 使用串口
可能大家最常见的串口就是国产厂家WCH出品的CH340了,经久不衰。在进行嵌入式开发时,我们也经常用串口来打印信息,以前大部分人在进行开发时,可能会接两个设备,一个调试器,一个串口工具。我们这个DAPLink仿真器就是二合一的产品,电脑接一个设备就能同时支持串口和SWD的调试下载功能。
5.4 升级固件
本 DAPLink 采用了 Bootloader + App 的架构。当遇见了 BUG 或者 DAPLINK官方 发布了更稳定的固件,或者你需要切换不同功能的固件时(例如切换为支持不同芯片的拖拽下载算法),可以通过以下方式升级。
警告:虽然 DAPLink 有保护机制,但在升级固件期间,请勿从电脑上拔掉 DAPLink,以免造成固件损坏需要重新烧录 Bootloader。
升级步骤:
- 进入 Bootloader 模式:
- 从电脑上拔掉 DAPLink,让之断电 。
- 短接 调试接口端的
RST引脚和GND引脚(或者使用杜邦线短接简牛座上对应的两个针脚)。 - 保持短接状态,将 USB 插入电脑。
- 此时,电脑上会出现一个名为
MAINTENANCE(维护模式) 的 U 盘,而不是平时的LC DAPLINK盘。 - 松开
RST和GND的短接。
- 拖入固件:
- 找到官方提供的最新固件文件(通常是
.hex格式,如stm32f103xb_stm32f407ve_if_crc.hex)。 - 直接将该文件 复制/拖拽 到
MAINTENANCEU 盘中。
- 找到官方提供的最新固件文件(通常是
- 自动重启:
- 文件传输完成后,U 盘会自动消失,DAPLink 会自动断电重启。
- 再次出现名为
LC DAPLINK的 U 盘,即表示升级成功。
5.5 常见问题
【TODO】等待更新。