如何解决在 STM32F103 中按下释放按钮时,EXTI 线获得奇数/偶数中断计数
我遇到了一个问题。
我使用的是 STM32F103。一条 EXTI 线路用于检查按钮按下和释放。 EXTI 线设置为由下降沿和上升沿触发。
我知道当我按下底部时会有毛刺。问题是,当我按下然后松开按钮时,中断次数有时是奇数,有时是偶数。据我所知,它应该是偶数,因为无论如何,您将返回到原始信号值(假设为 HIGH)。例如,如果您在推入式释放中有 2 个毛刺,您应该有 4 次中断(HIGH(原点)->LOW->HIGH->LOW->HIGH)。我不明白为什么。
感谢您的帮助!
解决方法
处理中断需要时间。因此,如果输入引脚上的下一次转换发生在中断标志被清除之前,则不会触发额外的中断。事件(转换)丢失。
如果您在中断处理程序的早期清除中断标志,您可以稍微改善这种情况。但是如果转换可以快速连续发生,它并不能完全解决它。有了按钮,他们就可以。因此,您必须相应地调整您的代码。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。