我正在尝试为stm32f103c8t6微控制器编写一些代码。它一直在与设备通信,这需要禁用中断...但是,这也需要立即通过某个GPIO引脚的下降沿来中断。
在不禁用中断的情况下,通信偶尔会失败,偶尔会有大约45个时钟周期的延迟。通过设置CPSR寄存器的I位禁用所有中断可以完全解决此问题,使我认为这是一个中断问题……但是,我的GPIO中断不起作用,因此这不是解决方案。
我尝试清除NVIC中的所有使能位,但用于GPIO中断的位除外,但问题仍然存在。
是否存在NVIC无法处理的任何中断,而这些中断可能会导致此问题?还是有人有其他想法?任何帮助或想法将不胜感激!谢谢。
答案 0 :(得分:1)
使用优先级分组-您将禁用优先级低于您设置的中断。