根据针对这个器件的 TRM 和 CPU 以及指令集文档、在进入一个 ISR 时、EALLOW 应该被禁用(至少请见 SPRUH18G 的图1-94)。 我们有许多 ISR 不调用 EALLOW、但似乎仍然能够写入受 EALLOW 保护的寄存 器、特别是 PieCtrlRegs (但也包括外设特定的 ISR)。 到目前为止、我们遇到问题的唯一时间就是在中断结束之前(在写入受 EALLOW 保护的寄存器之前)专门调用 EDIS。
我在调试模式中的一个 ISR (第一行)内停止、并且即使我们不调用 EALLOW、EALLOW 也确实被启用。
为什么感知行为与文档之间存在差异?
在 ISR 中、我们所做的某种初始化或配置是否可以忽略此保护?
或者在进入 ISR 或其他操作时将 EALLOW 设置为启用而不是禁用?
谢谢!