该项目的目标是为嵌入式微控制器创建一个易于使用、大部分即插即用的JTAG/SWD调试器。该项目的重点是专业的嵌入式软件开发人员,他们更喜欢保留对其构建系统和测试环境的控制权,而不是依赖高度抽象的供应商工具,这些工具给人的印象是简单,但以牺牲透明度为代价。
在大多数情况下,Black Magic Debug 采用 Black Magic Probe 硬件固件的形式,并实现 GNU DeBugger (GDB) 服务器。
Black Magic GDB 服务器具有以下特点:
自动目标检测
无需特定于目标的配置脚本
所有特定于协议和目标的控制都是通过 GDB monitor 命令完成的
不需要像 OpenOCD 这样的“中间软件”
借助 GDB 脚本功能,易于编写脚本
与主机的接口是标准的 USB CDC ACM 设备(虚拟串行端口),在 Linux 或 macOS 上不需要特殊的驱动程序。
面向基于 ARM Cortex-M 和 Cortex-A 的微控制器
提供完整的调试功能,包括:观察点、闪存断点、存储器和寄存器检查、闪存编程等。
[Semihosting / Host IO 支持] 以及 [Serial Wire Debug TRACESWO 支持]。
实现 USB DFU 类,以便在更新可用时轻松升级固件。
适用于 Windows、Linux 和 Mac 环境。
您只需要为您的微控制器安装 GNU 交叉编译工具链,其中包含 GCC 和 GDB。将运行 Black Magic Debug 固件的 Black Magic Probe 硬件插入计算机。使用命令指示您的 GDB 使用 BMP 作为您的远程目标,然后您就可以开始比赛了。有关更多详细信息,请参阅入门。target extended-remote *serial_port*
如果您是嵌入式开发初学者,Black Magic Probe 也是您的绝佳选择。但期待更多的 Unix 命令行体验,而不是 Windows klickybunti GUI。
如果有任何不清楚或难以理解的地方,请告诉我们。我们的目标是使本网站上的文档足够全面,以便您开始使用Black Magic Probe进行微控制器开发和调试。
|