第5章 MCS-51單片機(jī)內(nèi)部資源及應(yīng)用_第1頁
第5章 MCS-51單片機(jī)內(nèi)部資源及應(yīng)用_第2頁
第5章 MCS-51單片機(jī)內(nèi)部資源及應(yīng)用_第3頁
第5章 MCS-51單片機(jī)內(nèi)部資源及應(yīng)用_第4頁
第5章 MCS-51單片機(jī)內(nèi)部資源及應(yīng)用_第5頁
已閱讀5頁,還剩160頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束教學(xué)目標(biāo)教學(xué)目標(biāo)5.1 AT89S51單片機(jī)內(nèi)部并行接口單片機(jī)內(nèi)部并行接口 5.1.1 端口的結(jié)構(gòu)端口的結(jié)構(gòu) 5.1.2 端口工作過程分析端口工作過程分析 5.1.3 端口的訪問及示例端口的訪問及示例 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束MCS-51系列單片機(jī)外部引腳說明系列單片機(jī)外部引腳說明單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束地址總線(AB)805187518031P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0P3 .0P3 .1P3.2P3.3P3.4P3.5P3.6P3.7PS ENEAALERST用戶I

2、/O控制總線(CB)鎖存器P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0ALEA15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0D7D6D5D4D3D2D1D0VCCVSS數(shù)據(jù)總線(DB)(a)(b)P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD、 P3 .0TXD 、 P3 .1INT0、 P3.2INT1、 P3.3T0 、 P3.4T1 、 P3.5WR 、 P3.6RD 、 P3.7XTAL2XTAL1VSSVCCP0.0P0.1P0.2P0

3、.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.080518751803112345678910111213141516171819204039383736353433323130292827262524232221VCCVSS(1)P0.0P0.7統(tǒng)稱為統(tǒng)稱為P0口???。 P0口可作為口可作為通用通用I/OI/O接口接口。 在接在接有片外存儲器或有片外存儲器或I/0擴(kuò)擴(kuò)展接展接時(shí),時(shí),作低作低8位地址總線位地址總線與雙向與雙向8位數(shù)據(jù)總線位數(shù)據(jù)總線。5.1.1 端口的結(jié)構(gòu)及其功能描述端口的結(jié)構(gòu)及其功能描述單

4、片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束地址總線(AB)805187518031P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0P3 .0P3 .1P3.2P3.3P3.4P3.5P3.6P3.7PS ENEAALERST用戶I/O控制總線(CB)鎖存器P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0ALEA15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0D7D6D5D4D3D2D1D0VCCVSS數(shù)據(jù)總線(DB)(a)(b)P1.0P1.1P1.2P1.3P1.4P1

5、.5P1.6P1.7RST/VPDRXD、 P3 .0TXD 、 P3 .1INT0、 P3.2INT1、 P3.3T0 、 P3.4T1 、 P3.5WR 、 P3.6RD 、 P3.7XTAL2XTAL1VSSVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.080518751803112345678910111213141516171819204039383736353433323130292827262524232221VCCVSS(2) P1口口(18腳腳):P1.0

6、P1.7統(tǒng)稱為統(tǒng)稱為P1口???。P1口是一個(gè)口是一個(gè)帶內(nèi)部上拉電阻帶內(nèi)部上拉電阻的的8位雙向位雙向I/O口??凇纹瑱C(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束地址總線(AB)805187518031P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0P3 .0P3 .1P3.2P3.3P3.4P3.5P3.6P3.7PS ENEAALERST用戶I/O控制總線(CB)鎖存器P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0ALEA15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0D

7、7D6D5D4D3D2D1D0VCCVSS數(shù)據(jù)總線(DB)(a)(b)P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD、 P3 .0TXD 、 P3 .1INT0、 P3.2INT1、 P3.3T0 、 P3.4T1 、 P3.5WR 、 P3.6RD 、 P3.7XTAL2XTAL1VSSVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0805187518031123456789101112131415161718192040393837

8、36353433323130292827262524232221VCCVSS(3) P2口口(2128腳腳):P2.0P2.7統(tǒng)稱為統(tǒng)稱為P2口??凇2口也是口也是一個(gè)帶內(nèi)部上拉電一個(gè)帶內(nèi)部上拉電阻阻的雙向的雙向I/O口???。在在訪問片外存儲器或擴(kuò)展訪問片外存儲器或擴(kuò)展I/O接口時(shí),還用于提供高接口時(shí),還用于提供高8位地址。位地址。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束地址總線(AB)805187518031P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0P3 .0P3 .1P3.2P3.3P3.4P3.5P3.6P3.7PS ENEAALERST用戶I/O控制總線(

9、CB)鎖存器P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0ALEA15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0D7D6D5D4D3D2D1D0VCCVSS數(shù)據(jù)總線(DB)(a)(b)P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD、 P3 .0TXD 、 P3 .1INT0、 P3.2INT1、 P3.3T0 、 P3.4T1 、 P3.5WR 、 P3.6RD 、 P3.7XTAL2XTAL1VSSVCCP0.0P0.1P0.2P0.3P0.4P

10、0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.080518751803112345678910111213141516171819204039383736353433323130292827262524232221VCCVSS (4) P3口口(1017腳腳):P3.0P3.7統(tǒng)稱為統(tǒng)稱為P3口???。P3口也是口也是一個(gè)帶上拉電阻的一個(gè)帶上拉電阻的I/O口口可以作雙向的輸入輸可以作雙向的輸入輸出口。出口。具有第具有第2功能。功能。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束7一一.PO.PO口口5.1.1 端口的結(jié)構(gòu)及

11、其功能描述端口的結(jié)構(gòu)及其功能描述u P0P0口是一個(gè)三態(tài)雙向口口是一個(gè)三態(tài)雙向口, , 可作為通用可作為通用I/OI/O接口接口, , 也可作為也可作為地地址址/ /數(shù)據(jù)數(shù)據(jù)分時(shí)復(fù)用口。分時(shí)復(fù)用口。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束8端口三種不同操作方式:端口三種不同操作方式: 輸出數(shù)據(jù)方式輸出數(shù)據(jù)方式讀端口數(shù)據(jù)方式讀端口數(shù)據(jù)方式讀引腳方式讀引腳方式(1)P0(1)P0口作為通用口作為通用I/OI/O口使用口使用單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束9輸出數(shù)據(jù)方式輸出數(shù)據(jù)方式(紅色箭頭方向)(紅色箭頭方向)MOV P0,AMOV P0,#data 所有所有端口操作指令端口操

12、作指令均可從端口輸出數(shù)據(jù)。均可從端口輸出數(shù)據(jù)。00單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束u 在在CPUCPU向端口輸出數(shù)據(jù)時(shí)向端口輸出數(shù)據(jù)時(shí), , 對應(yīng)的對應(yīng)的控制信號為控制信號為0 0, , 轉(zhuǎn)換開轉(zhuǎn)換開關(guān)把輸出級與鎖存器端接通關(guān)把輸出級與鎖存器端接通, , 同時(shí)因與門同時(shí)因與門3 3輸出為輸出為0 0使使V2V2截止截止, , 此時(shí)此時(shí), , 輸出級是漏極開路電路輸出級是漏極開路電路。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束u 使用時(shí)注意使用時(shí)注意: : 在輸出數(shù)據(jù)時(shí)在輸出數(shù)據(jù)時(shí), , 由于由于V2V2截止截止, , 輸出級是漏極開路電輸出級是漏極開路電路路, , 要使要使

13、“1”1”信號正常輸出信號正常輸出, , 必須外接上拉電阻必須外接上拉電阻。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束13讀鎖存器數(shù)據(jù)方式讀鎖存器數(shù)據(jù)方式(紅色箭頭方向)(紅色箭頭方向)對端口及其口線對端口及其口線ANL、ORL、XRL、SETB、CLR、CPL的指令操作為讀鎖存的指令操作為讀鎖存器數(shù)據(jù)方式。器數(shù)據(jù)方式。該類指令又稱為該類指令又稱為“讀讀-改改-寫寫”指令。指令。為什么要讀鎖存器:為什么要讀鎖存器:避免避免PX.X引腳因負(fù)載引腳因負(fù)載原因?qū)е碌臓顟B(tài)改變原因?qū)е碌臓顟B(tài)改變失控。失控。僅對僅對端口鎖存器中的數(shù)據(jù)端口鎖存器中的數(shù)據(jù)進(jìn)

14、行讀入進(jìn)行讀入00單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束14讀端口引腳方式讀端口引腳方式 為了正確為了正確讀入端口引腳數(shù)據(jù),須先使讀入端口引腳數(shù)據(jù),須先使V1、V2管截止管截止,而后讀入。,而后讀入。0001應(yīng)注意應(yīng)注意 ,當(dāng),當(dāng)P0P0口作輸口作輸入口使用時(shí),應(yīng)先對該口入口使用時(shí),應(yīng)先對該口引腳寫入引腳寫入“1 1”使場效應(yīng)管使場效應(yīng)管T2T2截止,防止場效應(yīng)管處截止,防止場效應(yīng)管處于導(dǎo)通狀態(tài),會將輸入的于導(dǎo)通狀態(tài),會將輸入的高電平拉成低電平,從而高電平拉成低電平,從而引起誤讀。引起誤讀。 注:注:這里就體現(xiàn)了這里就體現(xiàn)了“準(zhǔn)雙向準(zhǔn)雙向I/O口口”的概念,即的概念,即P0口口線口口線

15、輸入數(shù)據(jù)時(shí),要先在輸入數(shù)據(jù)時(shí),要先在P0相應(yīng)口線上輸出相應(yīng)口線上輸出“1”,做,做好輸入準(zhǔn)備工作(鋪墊工好輸入準(zhǔn)備工作(鋪墊工作)。作)。與此類似,與此類似,P1、P2、P3作為作為I/O口使用時(shí)也是口使用時(shí)也是“準(zhǔn)準(zhǔn)雙向口雙向口”。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束15例如讀例如讀P0P0口低口低4 4位引腳線上的信號:位引腳線上的信號: MOV P0,#0FHMOV P0,#0FH MOV A,P0 MOV A,P0 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束u此時(shí)可分為兩種情況:此時(shí)可分為兩種情況: 一種是從一種是從P0P0口口輸出輸出地址或數(shù)據(jù)地址或數(shù)據(jù) 另一種是從另一

16、種是從P0P0口口輸入輸入數(shù)據(jù)。數(shù)據(jù)。1 12 23 34 4(2)P0(2)P0口作為口作為地址地址/ /數(shù)據(jù)數(shù)據(jù)使用使用單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束1 12 23 34 4u在訪問片外存儲器需從在訪問片外存儲器需從P0P0輸出地址或數(shù)據(jù)輸出地址或數(shù)據(jù)信號時(shí)信號時(shí), , 控制控制信號應(yīng)信號應(yīng)為高電平為高電平1 1, , 使轉(zhuǎn)換開關(guān)使轉(zhuǎn)換開關(guān)MUXMUX把反向器把反向器4 4的輸出端與的輸出端與V1V1接通接通, , 同時(shí)把與門同時(shí)把與門3 3打開。打開。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束1 12 23 34 4u從從P0P0口送出地址后,又從口送出地址后,又從

17、P0P0口接收數(shù)據(jù),口接收數(shù)據(jù),輸入輸入數(shù)數(shù)據(jù)類似于從據(jù)類似于從P0P0口讀引腳??谧x引腳。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束19讀取片外讀取片外RAM的的2050H單元內(nèi)容到累加器單元內(nèi)容到累加器MOV DPTR,#2050HMOVX A,DPTR;執(zhí)行此指令執(zhí)行此指令, P3.7引腳上輸出引腳上輸出/RD 有效信號有效信號(低電平低電平),DPTR包含包含16位地址信息由位地址信息由P0(低(低8位)、位)、P2口(高口(高8位)位)提供,數(shù)據(jù)由提供,數(shù)據(jù)由P0口輸入到累加器??谳斎氲嚼奂悠鳌纹瑱C(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束20Q二二.P1.P1口口單片機(jī)原理及

18、其接口技術(shù)主目錄上一頁下一頁結(jié) 束21Qu P1P1口為準(zhǔn)雙向口。它在結(jié)構(gòu)上與口為準(zhǔn)雙向口。它在結(jié)構(gòu)上與P0P0口的口的區(qū)別在于區(qū)別在于輸出驅(qū)動部輸出驅(qū)動部分分, , 其輸出驅(qū)動部分由場效應(yīng)管其輸出驅(qū)動部分由場效應(yīng)管V1V1與內(nèi)部上拉電阻組成。與內(nèi)部上拉電阻組成。 當(dāng)某位輸出高電平時(shí)當(dāng)某位輸出高電平時(shí), , 可以提供拉電流負(fù)載可以提供拉電流負(fù)載, , 不必象不必象P0P0口那口那樣需要外接電阻樣需要外接電阻。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束22Qu 從功能上來看從功能上來看P1P1只有一種功能(對只有一種功能(對MCS51MCS51子系列)子系列), , 即即通用輸入輸出通用輸

19、入輸出I/OI/O接口接口, , 具有具有輸入、輸出、輸入、輸出、 端口操作端口操作3 3種工作方式種工作方式, , 每每1 1位口線能獨(dú)立地用作輸入或輸出線。位口線能獨(dú)立地用作輸入或輸出線。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束23三三.P2口口 P2P2口的位結(jié)構(gòu)比口的位結(jié)構(gòu)比P1P1多了一個(gè)轉(zhuǎn)換控制部分,當(dāng)多路開多了一個(gè)轉(zhuǎn)換控制部分,當(dāng)多路開關(guān)關(guān)MUXMUX倒向下時(shí),倒向下時(shí),P2P2口作通用口作通用I/OI/O口,口,具有具有輸入、輸出、輸入、輸出、 端口操作端口操作3 3種工作方式種工作方式, , ;單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束24三三.P2口口 當(dāng)擴(kuò)展片外

20、存貯器時(shí),當(dāng)擴(kuò)展片外存貯器時(shí),MUXMUX開關(guān)打向上,開關(guān)打向上,P2P2口作口作高八位地高八位地址線址線輸出高八位地址信號。輸出高八位地址信號。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束25 四四.P3.P3口口 P3P3口為雙功能口為雙功能I/OI/O口,內(nèi)部結(jié)構(gòu)中增加了第二輸入口,內(nèi)部結(jié)構(gòu)中增加了第二輸入/ /輸出功能。輸出功能。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束P3口各位的第二功能口各位的第二功能引腳引腳第二功能第二功能功功 能能 說說 明明 P3.0RXD串行數(shù)據(jù)輸入端串行數(shù)據(jù)輸入端 P3.1TXD串行數(shù)據(jù)輸出端串行數(shù)據(jù)輸出端 P3.2INT0外部中斷外部中斷0中斷請

21、求信號輸入中斷請求信號輸入端端P3.3INT1外部中斷外部中斷1中斷請求信號輸入中斷請求信號輸入端端P3.4T0定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器0外部計(jì)數(shù)脈沖外部計(jì)數(shù)脈沖輸入端輸入端P3.5T1定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器1外部計(jì)數(shù)脈沖外部計(jì)數(shù)脈沖輸入端輸入端P3.6WR片外片外RAM寫選通信號輸出端寫選通信號輸出端 P3.7RD片外片外RAM讀選通信號輸出端讀選通信號輸出端 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束2789S5189S51P1.0P1.0P1.1P1.1P1.2P1.2P1.3P1.3P1.4P1.4P1.5P1.5P1.6P1.6P1.7P1.7+5V+5V+5V+5V1K1K4 4

22、330330 4 47.2.3 應(yīng)用舉例應(yīng)用舉例例例1.1.在圖中在圖中P1.4P1.4P1.7P1.7接四個(gè)發(fā)光二極管接四個(gè)發(fā)光二極管LED,P1.0LED,P1.0P1.3P1.3接四個(gè)接四個(gè)開關(guān),編程將開關(guān)的狀態(tài)反映到發(fā)光二極管上。開關(guān),編程將開關(guān)的狀態(tài)反映到發(fā)光二極管上。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束28例例1.1.在圖中在圖中P1.4P1.4P1.7P1.7接四個(gè)發(fā)光二極管接四個(gè)發(fā)光二極管LED,P1.0LED,P1.0P1.3P1.3接四個(gè)開關(guān),編程將開關(guān)的狀態(tài)反映到發(fā)光二極管上。接四個(gè)開關(guān),編程將開關(guān)的狀態(tài)反映到發(fā)光二極管上。 89S5189S51P1.0P1.

23、0P1.1P1.1P1.2P1.2P1.3P1.3P1.4P1.4P1.5P1.5P1.6P1.6P1.7P1.7+5V+5V+5V+5V1K1K4 4330330 4 4EA單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束29 ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV P1,#0FFH ;高四位全滅,低四位輸入線送高四位全滅,低四位輸入線送“1”, ABC: MOV A,P1 ;讀讀P1口引腳開關(guān)狀態(tài),并送入口引腳開關(guān)狀態(tài),并送入A SWAP A ;低四位開關(guān)狀態(tài)換到高四位低四位開關(guān)狀態(tài)換到高四位 MOV P1,A ;從從P1口輸出口輸出 ORL P1,#0

24、FH ;高四位不變,低四位送高四位不變,低四位送“1”, SJMP ABC ;循環(huán)執(zhí)行循環(huán)執(zhí)行END 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束5.2.1 中斷的概念中斷的概念5.2.2 AT89S51 AT89S51單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)與控制單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)與控制5.2.3 中斷處理過程中斷處理過程5.2.4 中斷響應(yīng)時(shí)間中斷響應(yīng)時(shí)間5.2.5 51 51單片機(jī)中斷請求的撤除單片機(jī)中斷請求的撤除5.2.6 中斷服務(wù)程序與子程序的區(qū)別中斷服務(wù)程序與子程序的區(qū)別5.2.7 外部中斷源的擴(kuò)展外部中斷源的擴(kuò)展5.2.8 中斷應(yīng)用舉例中斷應(yīng)用舉例單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束1

25、.中斷的定義:中斷的定義: 由于由于內(nèi)部或外部內(nèi)部或外部的某種原因的某種原因, 而而CPU必須必須暫時(shí)中止暫時(shí)中止其正在執(zhí)行的程序,轉(zhuǎn)去執(zhí)行請求中斷的那個(gè)外設(shè)或事其正在執(zhí)行的程序,轉(zhuǎn)去執(zhí)行請求中斷的那個(gè)外設(shè)或事件的服務(wù)程序,等處理完畢后再返回執(zhí)行原來中止的程件的服務(wù)程序,等處理完畢后再返回執(zhí)行原來中止的程序,序,這一過程叫做這一過程叫做中斷中斷。 5.2.1 中斷的概念中斷的概念單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 中斷概念類比 看電視中斷處理中斷請求實(shí)際生活中斷返回電話鈴響接聽電話看電視主程序計(jì)算機(jī)事件發(fā)生事件處理主程序圖5.1 中斷概念示意圖 單片機(jī)原理及其接口技術(shù)主目錄上一頁下

26、一頁結(jié) 束圖5.2 中斷過程示意圖中斷源中斷申請單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束34 “中斷”響應(yīng)之后所執(zhí)行的相應(yīng)的處理程序通常稱之為中斷服務(wù)或中斷處理子程序,原來正常運(yùn)行的程序稱為主程序。 主程序被斷開的位置(或地址)稱為“斷點(diǎn)”。引起中斷的原因,或能發(fā)出中斷申請的來源,稱為“中斷源”。中斷源要求服務(wù)的請求稱為“中斷請求”(或中斷申請)。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 調(diào)用中斷服務(wù)程序的過程類似于調(diào)用子程序,其區(qū)別在于調(diào)用子程序在程序中是事先安排好的,而何時(shí)調(diào)用中斷服務(wù)程序事先卻無法確定。 因?yàn)椤爸袛唷钡陌l(fā)生是由外部因素決定的,程序中無法事先安排調(diào)用指令,因此,

27、調(diào)用中斷服務(wù)程序的過程是由硬件自動完成的。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束2為什么要設(shè)中斷為什么要設(shè)中斷 中斷解決了中斷解決了快速主機(jī)與慢速快速主機(jī)與慢速I/O設(shè)備的數(shù)據(jù)設(shè)備的數(shù)據(jù)傳送速度匹配的問題傳送速度匹配的問題,還具有如下優(yōu)點(diǎn):,還具有如下優(yōu)點(diǎn): (1)分時(shí)操作:)分時(shí)操作: (2)實(shí)時(shí)響應(yīng):)實(shí)時(shí)響應(yīng): (3)可靠性高:)可靠性高: CPU具有處理設(shè)備故障及掉電等突發(fā)性事件能力,從而使系統(tǒng)可靠性提高。 CPU可以分時(shí)為多個(gè)I/O設(shè) 備服務(wù),提高了計(jì)算機(jī)的利用率; CPU能夠及時(shí)處理應(yīng)用系統(tǒng)的隨機(jī)事件,系統(tǒng)的實(shí)時(shí)性大大增強(qiáng);單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束3

28、7 中斷源是指在計(jì)算機(jī)系統(tǒng)中向CPU發(fā)出中斷請求的來源, 中斷可以人為設(shè)定,也可以是為響應(yīng)突發(fā)性隨機(jī)事件而設(shè)置。通常有I/O設(shè)備、實(shí)時(shí)控制系統(tǒng)中的隨機(jī)參數(shù)和信息故障源等。 3中斷源中斷源u外部設(shè)備中斷源u控制對象中斷源u故障中斷源u定時(shí)脈沖中斷源u通訊中斷源單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 4中斷優(yōu)先級中斷優(yōu)先級u如果正在執(zhí)行主程序時(shí)只有如果正在執(zhí)行主程序時(shí)只有1個(gè)中斷源個(gè)中斷源請求中斷請求中斷,而而這時(shí)這時(shí)CPU又是對中斷開放又是對中斷開放的,此時(shí)的,此時(shí)中斷立即響應(yīng)中斷立即響應(yīng)。u由于中斷是隨機(jī)產(chǎn)生的由于中斷是隨機(jī)產(chǎn)生的,中斷源一般又不止中斷源一般又不止1個(gè)個(gè),因因此會出現(xiàn):

29、此會出現(xiàn):幾個(gè)中斷源同時(shí)請求中斷;或者當(dāng)某一幾個(gè)中斷源同時(shí)請求中斷;或者當(dāng)某一個(gè)中斷正在響應(yīng)中個(gè)中斷正在響應(yīng)中(即正在執(zhí)行該中斷源的中斷服即正在執(zhí)行該中斷源的中斷服務(wù)程序務(wù)程序),又有其它的中斷源請求中斷,又有其它的中斷源請求中斷,這時(shí)中斷系這時(shí)中斷系統(tǒng)應(yīng)如何處理呢統(tǒng)應(yīng)如何處理呢?單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 在一般情況下,首先把各個(gè)中斷源分成若干個(gè)優(yōu)先級,然后再按如下原則進(jìn)行處理:(1)不同級的中斷源同時(shí)申請中斷時(shí)先高后低;(2)同級的中斷源同時(shí)申請中斷時(shí)事先規(guī)定;(3)處理低級中斷又收到高級中斷請求時(shí)停低轉(zhuǎn)高;(4)處理高級中斷又收到低級中斷請求時(shí)高不理低。 單片機(jī)原理及

30、其接口技術(shù)主目錄上一頁下一頁結(jié) 束 中斷優(yōu)先級越高, 則響應(yīng)優(yōu)先權(quán)就越高。當(dāng)CPU正在執(zhí)行中斷服務(wù)程序時(shí), 又有中斷優(yōu)先級更高的中斷申請產(chǎn)生, 這時(shí)CPU就會暫停當(dāng)前的中斷服務(wù)轉(zhuǎn)而處理高級中斷申請, 待高級中斷處理程序完畢再返回原中斷程序斷點(diǎn)處繼續(xù)執(zhí)行, 這一過程稱為中斷嵌套。 5 . 中斷嵌套中斷嵌套響應(yīng)低級中斷請求返回主程序RETI低級中斷程序斷點(diǎn)響應(yīng)高級中斷請求返回低級中斷程序斷點(diǎn)主程序繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行高級中斷服務(wù)程序單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束41 6 .中斷處理過程圖5.2 中斷過程示意圖中斷源中斷申請單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束42 6 .

31、中斷處理過程實(shí)現(xiàn)中斷響應(yīng)和中斷返CPU中斷響應(yīng)過程如下: 首先,將斷點(diǎn)處的PC值(即下一條應(yīng)執(zhí)行指令的地址)推入堆棧保留下來,這稱為保護(hù)斷點(diǎn),由硬件自動執(zhí)行。 然后,將有關(guān)的寄存器內(nèi)容和標(biāo)志位狀態(tài)推入堆棧保留下來,這稱為保護(hù)現(xiàn)場,由用戶自己編程完成。 保護(hù)斷點(diǎn)和現(xiàn)場后即可執(zhí)行中斷服務(wù)程序,執(zhí)行完畢,CPU由中斷服務(wù)程序返回主程序。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束43 中斷返回過程如下: 首先恢復(fù)原保留寄存器的內(nèi)容和標(biāo)志位的狀態(tài),這稱為恢復(fù)現(xiàn)場,由用戶編程完成。 然后,再加返回指令RETI,RETI指令的功能是恢復(fù)PC值,使CPU返回?cái)帱c(diǎn),這稱為恢復(fù)斷點(diǎn)。 恢復(fù)現(xiàn)場和斷點(diǎn)后,CPU

32、將繼續(xù)執(zhí)行原主程序,中斷響應(yīng)過程到此為止。實(shí)現(xiàn)中斷響應(yīng)和中斷返回單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束44中斷響應(yīng)、返回過程流程圖中斷響應(yīng)、返回過程流程圖 斷點(diǎn)主程序繼續(xù)執(zhí)行主程序響應(yīng)中斷請求返回主程序中斷服務(wù)程序保護(hù)現(xiàn)場保護(hù)斷點(diǎn)恢復(fù)現(xiàn)場恢復(fù)斷點(diǎn)執(zhí)行繼續(xù)執(zhí)行中斷源中斷申請單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 1. 中斷源:中斷源: AT89S51單片機(jī)有單片機(jī)有5個(gè)中斷源,其中外部中個(gè)中斷源,其中外部中斷源斷源2個(gè);內(nèi)部中斷源個(gè);內(nèi)部中斷源3個(gè)個(gè) 。5.2.2 AT89S51 AT89S51單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)與控制單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)與控制單片機(jī)原理及其接口技術(shù)主目錄上一頁

33、下一頁結(jié) 束2.中斷系統(tǒng)結(jié)構(gòu)中斷系統(tǒng)結(jié)構(gòu)IE0EX0TF0IE1TF1TIESET1EX1ET0RIIP硬件查詢高級中斷請求低級中斷請求中斷入口地址中斷源INT0INT1中斷入口地址中斷源10IEPX0PSPT1PX1PT0111111111100000EA11SCON11T0T1RXTXIT0IT100TCON圖5.4 MCS-51中斷系統(tǒng)結(jié)構(gòu)示意圖中斷申請中斷控制中斷排隊(duì)5.2.2 AT89S51 AT89S51單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)與控制單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)與控制單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 5.2.2 中斷標(biāo)志與中斷控制中斷標(biāo)志與中斷控制 1中斷標(biāo)志中斷標(biāo)志 定時(shí)器控制

34、寄存器定時(shí)器控制寄存器TCON 串行控制寄存器串行控制寄存器SCON 2中斷控制 中斷允許控制寄存器IE單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 5.2.2 中斷標(biāo)志與中斷控制中斷標(biāo)志與中斷控制 1中斷標(biāo)志中斷標(biāo)志 (1) 定時(shí)器控制寄存器定時(shí)器控制寄存器TCON SFR之一,鎖存之一,鎖存中斷請求標(biāo)志,中斷請求標(biāo)志,字節(jié)地址字節(jié)地址88H,可位尋址??晌粚ぶ?。 其結(jié)構(gòu)、位名稱、位地址及其功能如表其結(jié)構(gòu)、位名稱、位地址及其功能如表5.1所示。所示。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束表表5.1 TCON的結(jié)構(gòu)、位名稱、位地址和功能的結(jié)構(gòu)、位名稱、位地址和功能位編碼位編碼位名稱

35、位名稱TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0位地址位地址8FH 8EH 8DH 8CH 8BH 8AH 89H 88H功功 能能 T1中斷標(biāo)志位T1啟停控制位T0中斷標(biāo)志位TCON.0/INT1中斷標(biāo)志位/INT0中斷標(biāo)志位/INT1觸發(fā)方式位/INT0觸發(fā)方式位T0啟??刂莆籘CON.1TCON.2TCON.3TCON.4TCON.5TCON.6TCON.7 在每個(gè)機(jī)器周期的S5P2時(shí)檢測(或接收)中斷源發(fā)來的中斷請求信號后使相應(yīng)的中斷標(biāo)志位置1,然后便在下個(gè)機(jī)器周期檢測這些中斷標(biāo)志位的狀態(tài),以決定是否響應(yīng)中斷。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束表5.1

36、TCON的結(jié)構(gòu)、位名稱、位地址和功能位編碼位編碼位名稱位名稱TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0位地址位地址8FH 8EH 8DH 8CH 8BH 8AH 89H 88H狀狀 態(tài)態(tài) TCON.0TCON.1TCON.2TCON.3TCON.4TCON.5TCON.6TCON.7外部中斷 0采用電平觸發(fā)0外部中斷 0采用邊沿觸發(fā)1 11 外部中斷1 采用邊沿觸發(fā)0 外部中斷1 采用電平觸發(fā) 0 0 0 0單片機(jī)復(fù)位時(shí)或無中斷請求發(fā)生時(shí),這些位均為0外部中斷1發(fā)出中斷請求時(shí)外部中斷0發(fā)出中斷請求時(shí)111T0發(fā)出中斷請求時(shí)T1發(fā)出中斷請求時(shí)停止T0計(jì)數(shù)啟動T0開始計(jì)數(shù)停止T

37、1計(jì)數(shù)啟動T1開始計(jì)數(shù)00 11單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束(2)串行控制寄存器SCON SFR之一,鎖存中斷請求標(biāo)志,字節(jié)地址98H,可位尋址。 SCON結(jié)構(gòu)、位名稱、位地址及其功能如下表所示。其中只有TI和RI兩位用來表示串行口中斷標(biāo)志位。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束位編碼位編碼位名稱位名稱SM0 SM1 SM2 REN TB8 RB8 TI RI位地址位地址9FH 9EH 9DH 9CH 9BH 9AH 99H 98H功功 能能 SCON.0串行發(fā)送中斷標(biāo)志位串行接收中斷標(biāo)志位SCON.1SCON.2SCON.3SCON.4SCON.5SCON.6SC

38、ON.7 SCON的結(jié)構(gòu)、位名稱、位地址和功能表單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 1) TI:為串行口發(fā)送中斷標(biāo)志位,位地址為串行口發(fā)送中斷標(biāo)志位,位地址為為99H。在串行口發(fā)送完一組數(shù)據(jù)時(shí),。在串行口發(fā)送完一組數(shù)據(jù)時(shí),TI由硬件由硬件自動置位自動置位(TI=1),請求中斷,當(dāng),請求中斷,當(dāng)CPU響應(yīng)中斷進(jìn)響應(yīng)中斷進(jìn)入中斷服務(wù)程序后,入中斷服務(wù)程序后,TI狀態(tài)不能被硬件自動清狀態(tài)不能被硬件自動清除,而必須在中斷程序中由軟件來清除。除,而必須在中斷程序中由軟件來清除。 2) RI:為串行口接收中斷標(biāo)志位,位地址為串行口接收中斷標(biāo)志位,位地址為為98H。在串行口接收完一組串行數(shù)據(jù)時(shí),

39、。在串行口接收完一組串行數(shù)據(jù)時(shí),RI由由硬件自動置位硬件自動置位(RI=1),請求中斷,當(dāng),請求中斷,當(dāng)CPU響應(yīng)中響應(yīng)中斷進(jìn)入中斷服務(wù)程序后,斷進(jìn)入中斷服務(wù)程序后,也必須由軟件來清除也必須由軟件來清除RI標(biāo)志。標(biāo)志。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 1) 中斷允許控制寄存器中斷允許控制寄存器IE 2. 中斷控制 MCS-51沒有專門的開中斷和關(guān)中斷指令,中斷的開放和關(guān)閉是通過中斷允許寄存器IE各位的狀態(tài)進(jìn)行兩級控制的。所謂兩級控制是指所有中斷允許的總控制位和各中斷源允許的單獨(dú)控制位,每位狀態(tài)靠軟件來設(shè)定。中斷允許控制寄存器IE各位的

40、定義及其功能等如表5.2所示。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束表表 5.2 IE的結(jié)構(gòu)、位名稱、位地址和功能的結(jié)構(gòu)、位名稱、位地址和功能 位編碼位編碼IE.7IE.6IE.5IE.4IE.3IE.2IE.1IE.0位名稱位名稱 EA ET2 ES ET1 EX1ET0 EX0位地址位地址 AFH ADH ACH ABH AAH A9H A8H功功 能能 中斷總允許控制位定時(shí)器T1的溢出中斷允許控制位 外部中斷1的中斷允許控制位定時(shí)器T0的溢出中斷允許控制位外部中斷0的中斷允許控制位串行口中斷允許控制位定時(shí)器T2的溢出中斷允許控制位 SFR之一,控制中斷開關(guān),字節(jié)地址A8H,可位尋

41、址。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束表表 5.3 IE的結(jié)構(gòu)、位名稱、位地址和功能的結(jié)構(gòu)、位名稱、位地址和功能 位編碼位編碼IE.7IE.6IE.5IE.4IE.3IE.2IE.1IE.0位名稱位名稱 EA ET2 ES ET1 EX1ET0 EX0位地址位地址 AFH ADH ACH ABH AAH A9H A8H功功 能能 禁止所有中斷開通外部中斷/INT0禁止其他中斷00 0 0 0 0 0開通總中斷1所有中斷仍被禁止0 0 0 0 0 10 1 0 0 1 0開通T0和串行口中斷禁止其他中斷 1 1 1 1 1 1開通所有中斷單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié)

42、束單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 2)中斷優(yōu)先級控制寄存器)中斷優(yōu)先級控制寄存器IP MCS-51的中斷源優(yōu)先級是由中斷優(yōu)先寄存器IP來進(jìn)行控制的。其5個(gè)中斷源劃分為兩個(gè)中斷優(yōu)先級:高優(yōu)先級和低優(yōu)先級。 相應(yīng)位置“1”,定義為高級中斷 相應(yīng)位清“0”,定義為低級中斷單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束表表 5.3 IP的結(jié)構(gòu)、位名稱、位地址和功能的結(jié)構(gòu)、位名稱、位地址和功能 位編碼位編碼IP.7IP.6IP.5IP.4IP.3IP.2IP.1IP.0位名稱位名稱 PT2 PS PT1 PX1PT0 PX0位地址位地址 BDH BCH BBH BAH B9H B8H功功

43、 能能保留位保留位保留位保留位 定時(shí)器T2中斷優(yōu)先級控制位串行口中斷優(yōu)先級控制位定時(shí)器T1中斷優(yōu)先級控制位定時(shí)器T0中斷優(yōu)先級控制位/INT0中斷優(yōu)先級控制位/INT1中斷優(yōu)先級控制位 1 1 1 1 1 1高級中斷(同為1時(shí)亦稱其為同級中斷)低級中斷(同為0時(shí)亦稱其為同級中斷)0 0 0 0 0 0 SFR之一,控制中斷優(yōu)先級,字節(jié)地址B8H,可位尋址。 優(yōu)先級相同如何處理?單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 如果同樣優(yōu)先級的請求同時(shí)接收到,則內(nèi)部對中如果同樣優(yōu)先級的請求同時(shí)接收到,則內(nèi)部對中斷源的查詢次序決定先接受哪一個(gè)請求,表斷源的查詢次序決定先接受哪一個(gè)請求,表5.4列出了

44、同列出了同(一優(yōu)先一優(yōu)先)級中斷源的內(nèi)部查詢順序。級中斷源的內(nèi)部查詢順序。中斷源中斷源 中斷標(biāo)志中斷標(biāo)志優(yōu)先查詢順序優(yōu)先查詢順序 外部中斷外部中斷0 定時(shí)器定時(shí)器T0中斷中斷 外部中斷外部中斷1 定時(shí)器定時(shí)器T1中斷中斷 串行口中斷串行口中斷IE0TF0IE1TF1RI+TI高高低低表5.4 中斷源的內(nèi)部查詢順序單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 例如:某軟件中對寄存器IE、 IP設(shè)置如下: MOV IE, 8FH MOV IP, 06H則此時(shí)該系統(tǒng)中: CPU中斷允許; 允許外部中斷0、外部中斷1、定時(shí)器/計(jì)數(shù)器0、定時(shí)器/計(jì)數(shù)器1提出的中斷申請; 允許中斷源的中斷優(yōu)先次序?yàn)?

45、定時(shí)器/計(jì)數(shù)器0 外部中斷1 外部中斷0 定時(shí)器/計(jì)數(shù)器1。 EAXET2ESET1EX1ET0EX01000111100000110IE單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束5.2.3 中斷處理過程中斷處理過程 中斷處理過程大致可分為4步: 。 1. 中斷請求 當(dāng)中斷源要求CPU為它服務(wù)時(shí),必須發(fā)出一個(gè)中斷請求信號。CPU將相應(yīng)的中斷請求標(biāo)志位置“1”。為確保該中斷得以實(shí)現(xiàn),中斷請求信號應(yīng)保持到CPU響應(yīng)該中斷后才能取消。CPU會不斷及時(shí)地查詢這些中斷請求標(biāo)志位,一旦查詢到某個(gè)中斷請求標(biāo)志置位,CPU就響應(yīng)這個(gè)中斷源的中斷請求。中斷請求、中斷響應(yīng)、 中斷服務(wù) 和中斷返回單片機(jī)原理及其

46、接口技術(shù)主目錄上一頁下一頁結(jié) 束 2.中斷響應(yīng)中斷響應(yīng)-條件條件 同時(shí)滿足以下同時(shí)滿足以下4個(gè)條件時(shí),才可能響應(yīng)中斷。個(gè)條件時(shí),才可能響應(yīng)中斷。 (1)有中斷請求;)有中斷請求; (2) 對應(yīng)中斷允許位為對應(yīng)中斷允許位為1; (3) 開中斷(即開中斷(即EA=1)。)。 (4) 當(dāng)前一條指令執(zhí)行完。當(dāng)前一條指令執(zhí)行完。 TF1TF0IE1IT1IE0IT0EAET2ESET1EX1ET0EX0TCONTIRISCONIEPSPT1PX1PT0PX0IPB8HA8H98H88H單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 2.中斷響應(yīng)中斷響應(yīng)-條件條件不響應(yīng)中斷的條件不響應(yīng)中斷的條件 (滿足之

47、一)(滿足之一)(1) 正在執(zhí)行同級或高優(yōu)先級的中斷服務(wù)程序正在執(zhí)行同級或高優(yōu)先級的中斷服務(wù)程序; (2) 不是指令的最后一個(gè)機(jī)器周期不是指令的最后一個(gè)機(jī)器周期; (該條指令沒有執(zhí)行完該條指令沒有執(zhí)行完)(3) 執(zhí)行執(zhí)行RETI 或或 讀寫讀寫 IE/IP指令期間不能響應(yīng)指令期間不能響應(yīng), 或不是或不是其后面其后面一條指令一條指令的最后一個(gè)機(jī)器周期。(的最后一個(gè)機(jī)器周期。(即如果是即如果是RETI或讀寫或讀寫IP/IE指指令后,需令后,需再再執(zhí)行一條指令后才能響應(yīng)中斷執(zhí)行一條指令后才能響應(yīng)中斷) ;(4) 軟件封鎖(軟件封鎖(EA0)單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 2.中斷響應(yīng)

48、中斷響應(yīng)-過程過程 單片機(jī)一旦響應(yīng)中斷請求單片機(jī)一旦響應(yīng)中斷請求, 就由就由硬件自動完成硬件自動完成以下功能以下功能: (1)把當(dāng)前程序計(jì)數(shù)器)把當(dāng)前程序計(jì)數(shù)器PC的內(nèi)容(的內(nèi)容(中斷點(diǎn)地址)壓入堆棧中斷點(diǎn)地址)壓入堆棧,以便,以便在在RETI后返回原程序執(zhí)行后返回原程序執(zhí)行; (2)關(guān)閉中斷關(guān)閉中斷,以,以防止在響應(yīng)中斷期間受其它中斷的干擾防止在響應(yīng)中斷期間受其它中斷的干擾。 (3)清除相應(yīng)的中斷請求標(biāo)志位清除相應(yīng)的中斷請求標(biāo)志位(串行口中斷請求標(biāo)志(串行口中斷請求標(biāo)志RI和和TI除除外)外); (4)把被響應(yīng)的中斷源所對應(yīng)的中斷服務(wù)程序的入口地址()把被響應(yīng)的中斷源所對應(yīng)的中斷服務(wù)程序的入

49、口地址(中斷矢中斷矢量量)送入)送入PC, 從而從而轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序。 單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束表表5.6 MCS-51中斷入口地址表中斷入口地址表中斷源中斷源中斷程序入口地址中斷程序入口地址INT00003H定時(shí)器定時(shí)器T0000BHINT10013H定時(shí)器定時(shí)器T1001BH串行口中斷串行口中斷0023HORG 0013HLJMP WBZD1 一般在入口地址處放置一條跳轉(zhuǎn)指令,轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序入口處。如對外部中斷1的中斷響應(yīng):單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束5.2.4 中斷響應(yīng)時(shí)間中斷響應(yīng)時(shí)間最短:3個(gè)機(jī)器周期最長:8個(gè)

50、機(jī)器周期第一機(jī)器周期:查詢中斷標(biāo)志狀態(tài);第一機(jī)器周期:查詢中斷標(biāo)志狀態(tài);第二、三機(jī)器周期:保護(hù)斷點(diǎn)及跳轉(zhuǎn)。第二、三機(jī)器周期:保護(hù)斷點(diǎn)及跳轉(zhuǎn)。 若正在執(zhí)行若正在執(zhí)行RETI等指令需等指令需1個(gè)機(jī)器周期。個(gè)機(jī)器周期。下一條指令最長需下一條指令最長需4個(gè)機(jī)器周期(如乘法指令)。個(gè)機(jī)器周期(如乘法指令)。響應(yīng)中斷需響應(yīng)中斷需3個(gè)機(jī)器周期。個(gè)機(jī)器周期。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 5.2.5 中斷請求的撤除中斷請求的撤除 中斷源發(fā)出中斷請求后,相應(yīng)的中斷源發(fā)出中斷請求后,相應(yīng)的中斷請求中斷請求標(biāo)志位自動置標(biāo)志位自動置“1”,而,而CPU響應(yīng)中斷后,響應(yīng)中斷后,必須及時(shí)清除中斷請求必須及

51、時(shí)清除中斷請求“1”標(biāo)志。標(biāo)志。否則中斷響應(yīng)返回后,將否則中斷響應(yīng)返回后,將再次進(jìn)入該中斷,引起死循環(huán)出錯(cuò)。再次進(jìn)入該中斷,引起死循環(huán)出錯(cuò)。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束u 邊沿觸發(fā)方式的外部中斷/INT0和/INT1請求u 定時(shí)器T0與T1的中斷請求CPU在響應(yīng)中斷后,由硬件自動清除自動清除相應(yīng)的中斷請求標(biāo)志TF0、TF1、IE0與IE1。注意:若不是以中斷響應(yīng)方式處理中斷請求,例注意:若不是以中斷響應(yīng)方式處理中斷請求,例如查詢方式,則硬件不會自動清零以上標(biāo)志位。如查詢方式,則硬件不會自動清零以上標(biāo)志位。u 串行中斷請求TI和RI需由軟件指令進(jìn)行清除: CLR TI 或 CL

52、R RI人工清除人工清除對于對于單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束u 電平觸發(fā)方式的外部中斷/INT0和/INT1請求 由軟硬件相結(jié)合進(jìn)行清除。INSVR: ANL P1, #0FEH ;P1.0=0,Q=1 撤銷中斷 ORL P1,#01H ;P1.0=1,為下次中斷 CLR IE0 ;清除中斷申請 對于單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 中斷返回中斷返回 注意:注意:(1)不能用)不能用RET指令代替指令代替RETI指令。指令。 (2)中斷服務(wù)程序中)中斷服務(wù)程序中PUSH與與POP須成對使用。須成對使用。 MCS-51響應(yīng)中斷后,自動執(zhí)行中斷服務(wù)程響應(yīng)中斷后,自動

53、執(zhí)行中斷服務(wù)程序。在中斷服務(wù)程序中,只要遇到序。在中斷服務(wù)程序中,只要遇到RETI指令指令(不論在什么位置不論在什么位置),單片機(jī)就結(jié)束本次中斷服,單片機(jī)就結(jié)束本次中斷服務(wù),返回原程序。因此,在中斷服務(wù)程序的最務(wù),返回原程序。因此,在中斷服務(wù)程序的最后必須有一條后必須有一條RETI指令,用于中斷返回。指令,用于中斷返回。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束5.2.6中斷服務(wù)程序與子程序的區(qū)別1.1.中斷服務(wù)程序的執(zhí)行與子程序調(diào)用主要類同點(diǎn):中斷服務(wù)程序的執(zhí)行與子程序調(diào)用主要類同點(diǎn): 都是暫停當(dāng)前正在執(zhí)行的主程序(或上一級程都是暫停當(dāng)前正在執(zhí)行的主程序(或上一級程 序),轉(zhuǎn)去執(zhí)行一個(gè)新

54、起始地址的程序段。序),轉(zhuǎn)去執(zhí)行一個(gè)新起始地址的程序段。 都是由硬件自動把斷點(diǎn)都是由硬件自動把斷點(diǎn)PCPC值壓入堆棧,然后通值壓入堆棧,然后通 過軟件完成現(xiàn)場保護(hù)。過軟件完成現(xiàn)場保護(hù)。 執(zhí)行完子程序或中斷服務(wù)程序后,都要通過軟執(zhí)行完子程序或中斷服務(wù)程序后,都要通過軟 件完成現(xiàn)場恢復(fù),并通過執(zhí)行返回指令,重新返件完成現(xiàn)場恢復(fù),并通過執(zhí)行返回指令,重新返 回到斷點(diǎn)處繼續(xù)執(zhí)行主程序(或上一級程序)。回到斷點(diǎn)處繼續(xù)執(zhí)行主程序(或上一級程序)。 二者都可以實(shí)現(xiàn)嵌套(但中斷嵌套和子程序嵌二者都可以實(shí)現(xiàn)嵌套(但中斷嵌套和子程序嵌 套深度不同)套深度不同)單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束2.2.

55、中斷服務(wù)程序的執(zhí)行與子程序調(diào)用主要不同點(diǎn):中斷服務(wù)程序的執(zhí)行與子程序調(diào)用主要不同點(diǎn): 外部中斷請求信號的發(fā)生大多是隨機(jī)的,因此也就外部中斷請求信號的發(fā)生大多是隨機(jī)的,因此也就 無法確定響應(yīng)中斷的時(shí)刻,但子程序調(diào)用卻是由軟無法確定響應(yīng)中斷的時(shí)刻,但子程序調(diào)用卻是由軟 件編排好定點(diǎn)定時(shí)發(fā)生的。件編排好定點(diǎn)定時(shí)發(fā)生的。 中斷響應(yīng)后由固定的中斷矢量地址轉(zhuǎn)入中斷服務(wù)程中斷響應(yīng)后由固定的中斷矢量地址轉(zhuǎn)入中斷服務(wù)程 序,而子程序的入口地址是由軟件設(shè)定的。序,而子程序的入口地址是由軟件設(shè)定的。 中斷響應(yīng)時(shí)間不固定,為中斷響應(yīng)時(shí)間不固定,為3838個(gè)機(jī)器周期,而子程個(gè)機(jī)器周期,而子程 序調(diào)用過程時(shí)間是固定的。序

56、調(diào)用過程時(shí)間是固定的。 3.3.中斷返回指令中斷返回指令RETIRETI除了有恢復(fù)斷點(diǎn)地址的功能外,還除了有恢復(fù)斷點(diǎn)地址的功能外,還有清零相應(yīng)優(yōu)先級狀態(tài)觸發(fā)器的作用,而子程序返回指有清零相應(yīng)優(yōu)先級狀態(tài)觸發(fā)器的作用,而子程序返回指令令RETRET只有恢復(fù)斷點(diǎn)地址的功能,因此不能以只有恢復(fù)斷點(diǎn)地址的功能,因此不能以RETRET替代替代RETIRETI。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束5.3 中斷系統(tǒng)的應(yīng)用中斷系統(tǒng)的應(yīng)用(1)開中斷和允許中斷源中斷;(2)確定各中斷源的優(yōu)先級;(3)若是外部中斷,則應(yīng)規(guī)定是電平觸發(fā)還是邊沿觸發(fā)。 在中斷服務(wù)程序編程時(shí),在中斷服務(wù)程序編程時(shí),首先要對中斷

57、系統(tǒng)進(jìn)行首先要對中斷系統(tǒng)進(jìn)行初始化初始化,也就是對幾個(gè)特殊功能寄存器的有關(guān)控制位,也就是對幾個(gè)特殊功能寄存器的有關(guān)控制位進(jìn)行賦值。具體來說進(jìn)行賦值。具體來說, 就是要完成下列工作:就是要完成下列工作:單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束5.2.6外部中斷源的擴(kuò)展 AT89S51AT89S51單片機(jī)只有兩個(gè)外部中斷請求輸入端,通單片機(jī)只有兩個(gè)外部中斷請求輸入端,通常采用以下兩種方法對外部中斷源進(jìn)行擴(kuò)展。常采用以下兩種方法對外部中斷源進(jìn)行擴(kuò)展。 1.1.借用空余的內(nèi)部計(jì)數(shù)借用空余的內(nèi)部計(jì)數(shù)/ /定時(shí)器定時(shí)器 單片機(jī)的計(jì)數(shù)單片機(jī)的計(jì)數(shù)/ /定時(shí)器設(shè)置為外部事件(脈沖)計(jì)定時(shí)器設(shè)置為外部事件

58、(脈沖)計(jì)數(shù)功能,且工作于方式數(shù)功能,且工作于方式2 2(8 8位,數(shù)據(jù)初值自動重裝)、位,數(shù)據(jù)初值自動重裝)、初值為初值為FFHFFH時(shí),只要輸入引腳出現(xiàn)時(shí),只要輸入引腳出現(xiàn) 1 1個(gè)計(jì)數(shù)脈沖下降沿個(gè)計(jì)數(shù)脈沖下降沿就會產(chǎn)生定時(shí)器溢出中斷。就會產(chǎn)生定時(shí)器溢出中斷。 2.2.采用采用“與門與門”電路結(jié)合軟件查詢電路結(jié)合軟件查詢 擴(kuò)展外部中斷源電路如圖擴(kuò)展外部中斷源電路如圖5-5-6 6所示。共擴(kuò)展所示。共擴(kuò)展4 4個(gè)外部中斷源個(gè)外部中斷源IS1IS4,它們一方面通過一個(gè),它們一方面通過一個(gè)4 4輸入輸入“與門與門”接入到單片機(jī)外接入到單片機(jī)外中斷輸入引腳,另一方面分別接入到單片機(jī)中斷輸入引腳,另

59、一方面分別接入到單片機(jī)P1.0 P1.3。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束該擴(kuò)展外部中斷源的工作原理為:該擴(kuò)展外部中斷源的工作原理為:(1 1)規(guī)定)規(guī)定IS1IS4IS1IS4均為負(fù)脈沖有效,由于均為負(fù)脈沖有效,由于“與門與門”的存在,則只的存在,則只 要任一個(gè)有效,要任一個(gè)有效,/INT1/INT1上都會出現(xiàn)負(fù)脈沖,從而引起上都會出現(xiàn)負(fù)脈沖,從而引起/INT1/INT1 引腳上出現(xiàn)有效的中斷請求,若引腳上出現(xiàn)有效的中斷請求,若CPUCPU中斷是開放的,則中斷是開放的,則CPUCPU 將響應(yīng)中斷,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序;將響應(yīng)中斷,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序;(2) (2) 在中斷服務(wù)

60、程序中,通過在中斷服務(wù)程序中,通過P1.0P1.3查詢是查詢是IS1IS4中的哪一中的哪一 個(gè)發(fā)出了負(fù)脈沖信號;個(gè)發(fā)出了負(fù)脈沖信號;(3) (3) 根據(jù)查詢結(jié)果,在中斷服務(wù)程序中選擇執(zhí)行對應(yīng)的處理程序根據(jù)查詢結(jié)果,在中斷服務(wù)程序中選擇執(zhí)行對應(yīng)的處理程序 段,執(zhí)行完畢后,段,執(zhí)行完畢后,RETIRETI返回主程序。返回主程序。單片機(jī)原理及其接口技術(shù)主目錄上一頁下一頁結(jié) 束 5.2.8 中斷應(yīng)用舉例中斷應(yīng)用舉例例例1:若規(guī)定外部中斷若規(guī)定外部中斷0為電平觸發(fā)方式,高優(yōu)先級,試寫出有關(guān)的為電平觸發(fā)方式,高優(yōu)先級,試寫出有關(guān)的 初始化程序。初始化程序。解:一般可采用一般可采用位操作位操作指令來實(shí)現(xiàn):指

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論