73得票5回答
如何在终端中使用GDB(GNU调试器)和OpenOCD进行微控制器调试?

使用插件连接Eclipse是编程ARM微控制器的标准低成本方法。Eclipse确实有其优点,但我想独立于此IDE。我想要了解在构建(编译-链接-刷写)我的软件时发生的情况以及运行调试会发生什么。为了获得这样更深入的理解,从命令行运行整个过程将会很好。 注意:我使用的是64位Windows 1...

14得票3回答
如何将ARM代码加载到实际设备中?JTAG?能否使用Arduino制作即兴JTAG?

好的,我对ARM处理器编程有些困惑。下面是一系列问题: 如何将已编译的二进制文件传输到ARM处理器中? JTAG是否是正常的方法(根据我的研究,是这样的...)? 它是唯一的方法吗? 如果这是有效的方法,那么如何使用它来完成这项任务? 如果不是,那么是什么/我该怎么做? 此外,类似Ar...

14得票3回答
JTAG是如何作为调试器使用的?

我了解JTAG曾经是作为边界扫描仪使用的(在http://www.fpga4fun.com/JTAG1.html有一个非常清晰的解释)。然而,我无法看出如今JTAG如何作为硬件级调试器使用(与电路仿真器类似)。 1. 有人可以解释一下JTAG如何作为硬件级调试器使用吗? 我的假设是芯片上必...

10得票3回答
一个像gdb这样的调试器是如何通过JTAG设置断点的?

我正在使用gdb进行调试。我想了解gdb内部如何通过JTAG在嵌入式处理器上设置断点。

8得票5回答
当设置断点时,Schrödinger错误会消失

我在我的代码中遇到了一个奇怪的错误,在我尝试调试它时却消失了。 在我的定时器中断(一直运行系统滴答声)中,我有类似以下代码: if (a && lot && of && conditions) { some_global_fla...

8得票2回答
如何使用OpenOCD进行芯片Ping(检测芯片是否连接)

1. 问题说明 我正在尝试使用OpenOCD进行不常见的操作。我想要的不是连接芯片,而只是检测芯片。 我心中的步骤如下所示: 使用探针配置文件(例如stlink.cfg)作为-f参数启动OpenOCD。因此,OpenOCD知道要使用什么探针,但不知道它会找到什么芯片。 OpenOCD检...