【发布时间】:2016-04-24 16:22:32
【问题描述】:
在区分架构、编程问题和操作系统方面,使用定时器中断而不是虚拟循环来实现时间延迟有什么优势?任何帮助将不胜感激。提前致谢。
【问题讨论】:
-
计时器不需要中断,您可以使用计数到 n 的循环,这取决于编译器和处理器,有时如果可能的话很难调整。然后是准确的轮询计时,然后是准确的中断。中断更难实现和维护,但允许你做其他事情。
-
我很确定我们之前在 SO 上已经多次遇到过这个问题。懒得去搜了。粗略总结:考虑到任何计时问题,硬件计时器是专业的解决方案,而虚拟循环是车库黑客的业余解决方案。实现可以在代码中的多个位置重复使用的通用计时器 HAL 相当容易。
标签: embedded infinite-loop interrupt cpu-architecture