单片机中断函数什么时候需要使用

可以解释一下什么时候需要用中断函数吗?真的不知道什么时候需要555

举个例子:当赋值IT0为1时,P3.2遇到下降沿,IE0被置1,要想使IE0自动清零,我们引用中断函数就可以了

img


寄存器 - 单片机教程 - C语言网 寄存器1.单片机内部资源大家看到下面这张图片应该不算陌生了可是如果我们看到的是这张的话就会觉得陌生像我们所熟知的P0,P1,P2,P3,包括上图的TCON以及“#include<r…… https://www.dotcpp.com/course/366

中断函数 - 单片机教程 - C语言网 中断函数1.中断函数概念上一讲里,当赋值IT0为1时,P3.2遇到下降沿,IE0被置1,要想使IE0自动清零,我们引用中断函数就可以了。我们可能已经习惯了都是在main函数里阅读分析代码,其实还有另一种函数需…… https://www.dotcpp.com/course/367

说的形象点,我觉得中断就是减少资源浪费的一种手段,比如说你如果不使用中断去实现一个闪烁灯,大多数单片机的主函数都是死循环,在主函数死循环里无限去执行电平翻转,资源浪费太大了尤其是在大项目里面。这时我们用按键触发外部中断事件去点灯会极大减少资源的浪费。
如果你不知道什么时候去用中断,就先去看看你学习的硬件主控有哪些中断可以使用,触发中断的机制是怎么样的。比如定时器计数中断,当计数到某一数值时候触发,就可以用来做延时或者是在那一时间去执行你想要干事情。
最后补充些小知识点,中断发生的时间很快,不要使用printf在中断函数里,单步调试不要在函数里打断点。
以上就是我本人的经验。