在51單片機當中,一般的at89s51就是兩個外部中斷源,其它加強型的我想應(yīng)該會多兩個,但是依舊還是不是很多,某些時候需要對其進行擴展,一般用定時器/計數(shù)器作外部中斷,將其設(shè)定為計數(shù)器模式,并置初始化數(shù)為0xffH,這樣只要一次就會計數(shù)溢出,產(chǎn)生中斷。一般比較實用的就是實用軟件中斷。
這種方法是:把各個中斷源通過硬件“或非”門引入到單片機外部中斷源輸入端(INT0或INT1),同時再把外部中斷源送到單片機的某個輸入輸出端口,這樣 當外部中斷時,通過“或非”門引起單片機中斷,在中斷服務(wù)程序中再通過軟件查詢,進而轉(zhuǎn)相應(yīng)的中斷服務(wù)程序。顯然,這種方法的中斷優(yōu)先級取決于軟件查詢的 次序。其硬件連接如下:
注意:這里碰到一個很讓人費解的問題,原來的時候我仿真的是int1,但是在實際仿真的過程當中是沒有辦法成功的,于是只能是采用INT0來仿真,效果正常。可能是軟件的問題吧。