您好!
我正在努力确定 CPU1复位的最后一个原因,目前使用 的是 SYSCTL_getResetCuser()。 具体而言、我想确定之前的复位是由 WDTRS、NMIFTRS 还是 XRSn 引起的(从外部电路驱动为低电平)。 我看到,当这些条件中的每一个都被强制时,我会看到 SYSCTL_getResetCuser()的相应结果。 但是、一旦它们发生、这些位 在随后的复位后仍然被置位。
例如、如果我通过 NMIFLGFRC 触发一个 NMIWDTRS、那么 SYSCTL_getResetCuser()将按 预期返回0x0000000A。 但是、如果我通过 XRSn 或调试器进行热复位、它会继续报告 0x0000000A。 我可以看到 RESC 中的 NMIWDRSn 位仍然被置位。 清除它的唯一方法似乎是通过调试器或冷复位。
这是预期行为吗? 我在 TRM 中看到、RESC 中的这些位应在复位时清除、那么引导 ROM 是否以某种方式设置它们?
此致、
Mike