Black Magic Debug 介绍
Black Magic Debug 是一个专注于嵌入式微控制器调试的开源项目,其核心产品为 Black Magic Probe 硬件及配套固件,旨在为开发者提供一款易用、即插即用的 JTAG/SWD 调试工具。该项目面向专业嵌入式软件开发者,同时也适合初学者,尤其适合偏好控制构建系统和测试环境,而非依赖高度抽象的厂商工具的用户。

核心功能与特点
集成 GDB 服务器
固件内置 GNU Debugger(GDB)服务器,支持自动目标检测,无需针对特定目标配置脚本,所有协议和目标控制可通过 GDB 监控命令完成,无需像 OpenOCD 那样依赖“中间软件”。全面的调试功能
提供完整的调试能力,包括断点(支持闪存断点)、监视点、内存和寄存器检查、闪存编程等,还支持半主机(Semihosting)/主机 IO 功能,以及 Serial Wire Debug TRACESWO 调试跟踪。便捷的硬件与系统兼容
- 硬件接口为标准 USB CDC ACM 设备(虚拟串口),在 Linux 和 macOS 上无需特殊驱动,Windows 也能良好支持。
- 支持通过 USB DFU 类进行固件升级,方便获取更新。
- 兼容 Windows、Linux、macOS 系统,只需安装 GNU 交叉编译工具链(含 GCC 和 GDB)即可使用。
简单的使用流程
连接硬件后,通过 GDB 命令target extended-remote <serial_port>
即可将其作为远程目标,快速启动调试流程,详细操作可参考官方“Getting Started”文档。
支持的目标设备
ARM Cortex-M 系列
覆盖多个厂商的主流微控制器,包括:- STMicroelectronics(如 STM32 F0/F1/F2/F3/F4/F7/H7/L0/L1/L5/G0/G4 等系列)
- NXP(如 LPC800/8XX、LPC1100/11XX、LPC1500/15XX、LPC4300/43XX、LPC546xx 等)
- Atmel(如 SAM D20/D21、SAM3S/3U/3N/3X、SAM4L/4S 等)
- Nordic Semiconductor(如 nRF 系列)
- Silicon Labs(如 EFM32、EZR32 等)
- Texas Instruments(如 LM3S、TM4C 等)
- 其他(如 Raspberry Pi RP2040 等)
ARM Cortex-A 系列
包括 Xilinx Zynq-7000 SoC(双核 Cortex-A9)、Broadcom BCM2836(四核 Cortex-A7,适用于 Raspberry Pi 2)等。
硬件支持
官方硬件
官方 Black Magic Probe 硬件(如 V2.3 版本)专为该项目设计,销售收益直接支持软件开发,可通过 1BitSquared(德国/美国)、Adafruit Industries、Elektor、Mouser 等分销商购买,部分版本包含 JTAG/SWD 和 UART 线缆等配件。兼容硬件
除官方硬件外,还支持多种第三方设备,如 ST-Link v2/v2.1/v3、STM8S Discovery(ST-Link V1)、F4 Discovery(STM32F407)、Black Pill F4 系列、TI LaunchPad Tiva C 板载编程器、HydraBus、96Boards Carbon 等。
Black Magic Debug 以透明、灵活的特点,为嵌入式开发提供了摆脱厂商锁定的调试方案,无论是专业开发者还是初学者,都能借助其实现高效的微控制器调试。