STM32f429ZI在没有调试器的情况下记录调用堆栈

时间:2017-05-05 10:47:37

标签: c stm32 watchdog

我在我的系统中使用看门狗。如果它在5秒内没有重新加载,它将被触发。我希望看到在看门狗复位之前完成的代码列表。没有连接的调试器,可以在我的代码中记录指令列表。

2 个答案:

答案 0 :(得分:0)

有几种方法可以做到:

  1. 使用串行调试输出并使用usart(另一个微型)
  2. 获取数据
  3. 购买USB->串行转换器并使用其中一个UART输出数据。
  4. 在极端情况下:)(例如,当您无法访问引脚时)使用(如果可用)指示灯闪烁所需信息。

答案 1 :(得分:0)

对于您的问题,有一个简单但有点贵的解决方案。 Cortex M4内核支持跟踪指令。因此,您需要检查跟踪信号是否路由到引脚(需要大包装> 100引脚),启动后启用跟踪并只连接硬件跟踪器,这将记录核心已执行的每个实例。