我为一个项目使用了一个STM32F4发现板,并且想知道我是否正确地处理了这个问题。当我按下一个按钮时,触发一个外部中断来执行一个例程;不用延迟,这部分工作正常。当例行程序移动一个伺服器然后将其返回到其原始位置时,加上一个延迟以使伺服器在返回到原始位置之前赶上新的PWM输出。当我延迟运行新的中断程序时,电路板锁定。在调试中,代码似乎在延迟循环中停顿。STM32F4 - 我可以在中断例程中使用延迟吗?
延迟是一个简单的systick例程。这是不好的做法(因此我的崩溃的原因)把它放入我的中断,我应该使用不同的方法?例如,在外部中断程序中设置单次定时器,该程序在设定的时间后返回伺服?
谢谢!
在中断处理程序中放入延迟是绝对可怕的做法。如果您真的必须重新进入,并尽快重新启用中断。 – 2015-02-24 12:26:33