IT0 的設定,不同單片機作用不同,相同的是 IT0 = 1 , 都是下降沿觸發, IT0 = 0,STC15系列,是上升沿下降沿都可以觸發, 而 STC11系列,好像是僅上升沿觸發,而 89C51 則是低電平觸發,根據你的描述,我覺得你用的單片機應該是 89C51, 所以當 IT0 = 0, 那么在低電平狀態,就會反復觸發,而縱觀你的中斷程序,你會判斷是否處于高電平,直到低電平才會退出中斷,那么,其實反過來理解,當產生了高電平,又變成了低電平這個時候觸發中斷,是不是對系統而言更經濟?那么針對你的需求,其實下降沿中斷才是更合理的,畢竟你這個中斷,就算最慢的89c51跑一下也就幾微秒,等電平重新下降了在中斷運行完全沒有影響。 |