This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
当 ePWM1计数器的值为零时、我配置的 F28027会产生一个中断。 但是、pwm1信号和跳中断之间存在延迟时间。 约~2usn。 (代码位于闪存上)
当我只将 ISR 例程移动到 RAM 时、延迟时间为0.6~0.7us。 PWM 触发 ADC_SOCx 也存在相同的问题。 (我使用 C2000 Launchpad。)
开关周期10us、因此该延迟是一个问题。 如何克服这一问题?
此致、
您好!
在处理中断时会有一些延迟、如您的情况所示。 您在项目代码中使用什么优化? 此外、在您的案例中、ISR 代码需要多长时间? 此外、请提供更多详细信息、说明为何此延迟会成为您的用例中的问题?
谢谢
Vasudha
此延迟时间可能会随着优化级别的增加而减少。 但它绝不会变为零。
我只需在中断服务例程中设置 GPIO。 我还将清除中断标志。 没有什么需要时间的东西。
我打开了一个空项目、并进行了 ADC 和 PWM 设置。 没有其它中断功能或代码可用。
因此、这种延迟毫无意义。
谢谢
Ferudun
您好!
由于硬件和编译器生成的上下文保存和恢复、ISR 会有一些延迟。 您可以共享您的代码、我们可以检查代码是否存在任何其他问题。
谢谢
Vasudha
您好!
跳转到 ISR 需要一点时间。 但是、这次的时间太长了。
闪存上的2 - 2.5us @ ISR 函数
RAM 上的0.5 - 0.7us @ ISR 函数
最后、我在零操作时配置了中断。 在中断延迟之后、ADC SOC 被触发。