请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TMS570LS3137 快速的问题是--"hetREG1->INTENAC =1;"语句是否立即挂起 HET 中断或者它需要几个周期、如果它需要几个周期、为什么?
在我的应用中、我将 HET 绑定到 FIQ 中断、并且我在这个 FIQ 中断和一个单独的 IRQ 中断之间有一些共享数据、所以我需要临时暂停 HET 中断以更新共享数据。 我的数据表明、在代码行"hetREG1->INTENAC = 1;"之后、中断仍然可以在接下来的几行代码中发生。 我的解决方案如下:
hetREG1->INTENAC = 1;
inline_NOP();
inline_NOP();
inline_NOP();
return();
这似乎在100%的时间内工作;禁用 HET 中断后的这3个 NOP 是否合理?如果是、原因是什么?
谢谢、
Jim