新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)擴(kuò)展中斷的四種方法

51單片機(jī)擴(kuò)展中斷的四種方法

作者: 時(shí)間:2013-12-02 來源:網(wǎng)絡(luò) 收藏

MCS—51系列單片機(jī)內(nèi)部只有兩個(gè)外部輸入端,當(dāng)外部多于兩個(gè)時(shí)

,就必須進(jìn)行擴(kuò)展,下面介紹兩種簡單的擴(kuò)展方法:

一、采用硬件請求和軟件查詢的方法:

這種方法是:把各個(gè)通過硬件“或非(高有效,如CD4002)”(與,低有效)門引入到單片機(jī)外部中斷源輸入

端(INT0或INT1),同時(shí)再把外部中斷源送到單片機(jī)的某個(gè)輸入輸出端口,這

樣當(dāng)外部中斷時(shí),通過“或非”(與)門引起單片機(jī)中斷,在中斷服務(wù)程序中再通

過軟件查詢,進(jìn)而轉(zhuǎn)相應(yīng)的中斷服務(wù)程序。顯然,這種方法的中斷優(yōu)先級取決于

軟件查詢的次序。其硬件連接和軟件編程如下:

Void zhongduan (void) interrupt 0 using 3 //中斷函數(shù)

{

EX0=0;//關(guān)中斷

If(P0_0=1) { *****}//中斷查詢

If(P0_1=1) { *****}//中斷查詢

If(P0_2=1) { *****}//中斷查詢

EX0=1;開中斷

}

二、用普通二極管構(gòu)成中斷選擇

51單片機(jī)擴(kuò)展中斷的四種方法

擴(kuò)展的8個(gè)外部中斷源均通過二極管向I N T(x=0或I)請求中斷。當(dāng)某個(gè)外部中斷源請求中斷服務(wù)時(shí)輸出低電平,單片機(jī)的I NT 經(jīng)二極管接地電平,單片機(jī)滿足響應(yīng)外部中斷(I N T)請求條件,響應(yīng)中斷,程序立即轉(zhuǎn)向I NT 對應(yīng)的中斷入口地址處開始執(zhí)行中斷服務(wù)程序,通過軟件查詢PI.0~P1.7口外中斷源的狀態(tài),以識別提出請求的外擴(kuò)中斷源,并轉(zhuǎn)向中斷服務(wù)程序?yàn)槠浞?wù),其查詢順序即為外部源的中斷優(yōu)先級順序。在圖中,是選用PI.0~PI.7作為外擴(kuò)中斷源請求的狀態(tài)信息輸入端口。

有點(diǎn)類似第一種方法。

三、用定時(shí)器/計(jì)數(shù)器作外部中斷

單片機(jī)的定時(shí)器/計(jì)數(shù)器是一個(gè)加一計(jì)數(shù)器,每當(dāng)計(jì)數(shù)輸入端有一個(gè)“1—0”的負(fù)

跳變時(shí),計(jì)數(shù)器加一,當(dāng)加一計(jì)數(shù)器溢出時(shí),就向CPU發(fā)出中斷,利用這個(gè)特性

的方法是:首先把定時(shí)器/計(jì)數(shù)器設(shè)置成計(jì)數(shù)方式,并預(yù)置滿值,把

外部中斷源輸入到P3口第4引腳或第5引腳(計(jì)數(shù)器輸入端),這樣就可以利用

定時(shí)器/計(jì)數(shù)器作為單片機(jī)外部中斷了。注意這種方法的中斷服務(wù)的入口地址應(yīng)

在000BH或001BH。

四、用專用中斷擴(kuò)展芯片8259A

8259A是可編程中斷控制接口,單片機(jī)控制八級中斷。在系統(tǒng)中還可采用級聯(lián)方式,一個(gè)主片可級聯(lián)8個(gè)從片,構(gòu)成64級中斷處理系統(tǒng)。

這樣在程序小于8K的情況,就可以用一片單片機(jī)實(shí)現(xiàn)了,而不需要用兩片單片機(jī)控制,還要進(jìn)行單片機(jī)點(diǎn)對點(diǎn)通訊。

塵埃粒子計(jì)數(shù)器相關(guān)文章:塵埃粒子計(jì)數(shù)器原理


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉