石工,您好。
实际使用单片机过程中遇到这两个问题一直搞的不是很清楚。请帮助解答,谢谢!
1、单片机的外部中断的电平触发方式的原理?
2、单片机的外部中断的边沿触发方式的原理?
3、两者的区别是?
1,电平触发的原理就是单片机要检测到持续一段时间的高低电平之后才触发的,持续的时间可以由用户自行设定
2,边沿触发,实际上是只要达到一个阈值就触发,由于电平的上升沿或者下降沿的时间很短,因此可以认为是一瞬间的,阈值有时不等于电平值,比如5v的边沿触发,阈值可能取4.7或者4.4这样
有很大的区别,
电平触发方式是按照电平的高或者低来触发,所以用的时候,必须在发生触发事件后立即将电平拉到非触发电平上,如果不这样做的话,会导致程序一直在触发事件程序入口处,而不会执行其他地方的程序。所以一般比较少用。
边沿触发方式是按照(上或下)边沿触发事件,由于触发的条件是边沿(上或下),所以即使在触发事件后,保存原来的电平都没有关系,不会一直在触发的,一般都用这种方式。
電平觸發方式就是,只要是高電平或者低電平,就會持續觸發,就像您判斷I/O口時候,用Busy wating方式檢查按鍵是否按下,只要是按下狀態就會持續觸發,有時候並不適合
而上升下降沿,只有上升和下降邊緣時候才會觸發一次,可確保時間內不會重複觸發好幾次,讓MCU/MPU可以抽空去做其他事情,較為理想
以上