第2次《單片機(jī)原理及應(yīng)用》_第1頁(yè)
第2次《單片機(jī)原理及應(yīng)用》_第2頁(yè)
第2次《單片機(jī)原理及應(yīng)用》_第3頁(yè)
第2次《單片機(jī)原理及應(yīng)用》_第4頁(yè)
第2次《單片機(jī)原理及應(yīng)用》_第5頁(yè)
已閱讀5頁(yè),還剩43頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、單片機(jī)原理與應(yīng)用實(shí)驗(yàn) 信通學(xué)院 MCS51共有四個(gè)共有四個(gè)8位的雙向并行位的雙向并行I/O口,口,分別記作分別記作P0、P1、P2和和P3。實(shí)際上它們已。實(shí)際上它們已被歸入專用寄存器之列。被歸入專用寄存器之列。 口是一個(gè)綜合概念,是一個(gè)集數(shù)據(jù)輸入緩口是一個(gè)綜合概念,是一個(gè)集數(shù)據(jù)輸入緩沖、數(shù)據(jù)輸出驅(qū)動(dòng)及鎖存等多項(xiàng)功能為一沖、數(shù)據(jù)輸出驅(qū)動(dòng)及鎖存等多項(xiàng)功能為一體的體的I/O電路。對(duì)于口有時(shí)也稱為端口。電路。對(duì)于口有時(shí)也稱為端口。 一個(gè)數(shù)據(jù)輸出鎖存器和兩個(gè)三態(tài)數(shù)據(jù)輸入緩沖器。一個(gè)數(shù)據(jù)輸出鎖存器和兩個(gè)三態(tài)數(shù)據(jù)輸入緩沖器。 一個(gè)多路轉(zhuǎn)接電路一個(gè)多路轉(zhuǎn)接電路MUX在控制信號(hào)的作用下,在控制信號(hào)的作用下, M

2、UX可以分別接通鎖可以分別接通鎖存器輸出或地址存器輸出或地址/數(shù)據(jù)線。當(dāng)作為通用的數(shù)據(jù)線。當(dāng)作為通用的I/O口使用時(shí),內(nèi)部的控制口使用時(shí),內(nèi)部的控制信號(hào)為低電平,封鎖與門將輸出驅(qū)動(dòng)電路的上拉場(chǎng)效應(yīng)管(信號(hào)為低電平,封鎖與門將輸出驅(qū)動(dòng)電路的上拉場(chǎng)效應(yīng)管(FET)截)截止,同時(shí)使止,同時(shí)使MUX接通鎖存器接通鎖存器Q端的輸出通路。端的輸出通路。 作通用作通用I/O口使用,所以在電路結(jié)構(gòu)上與口使用,所以在電路結(jié)構(gòu)上與P0口有一些不同之處。口有一些不同之處。首先它不再需要多路轉(zhuǎn)接電路首先它不再需要多路轉(zhuǎn)接電路MUX,其次是電路的內(nèi)部有上拉,其次是電路的內(nèi)部有上拉電阻。與場(chǎng)效應(yīng)管共同組成輸出驅(qū)動(dòng)電路。作

3、為輸出口使用時(shí),電阻。與場(chǎng)效應(yīng)管共同組成輸出驅(qū)動(dòng)電路。作為輸出口使用時(shí),已能向外提供推拉電流負(fù)載,無需再外接上拉電阻。已能向外提供推拉電流負(fù)載,無需再外接上拉電阻。 P2口電路中比口電路中比P1口多了一個(gè)多路轉(zhuǎn)換電路口多了一個(gè)多路轉(zhuǎn)換電路MUX,這又正好與,這又正好與P0口一樣??谝粯印2口也可以作為通用口也可以作為通用I/O口使用。這時(shí)多路轉(zhuǎn)接開口使用。這時(shí)多路轉(zhuǎn)接開關(guān)倒向鎖存器的關(guān)倒向鎖存器的Q端。但通常應(yīng)用情況下,端。但通常應(yīng)用情況下,P2口是作為口是作為高位地址高位地址線線使用,此時(shí)多路轉(zhuǎn)接開關(guān)應(yīng)倒向相反方向。使用,此時(shí)多路轉(zhuǎn)接開關(guān)應(yīng)倒向相反方向。 P3口的特點(diǎn)在于為適應(yīng)引腳信號(hào)第二

4、功能的需要??诘奶攸c(diǎn)在于為適應(yīng)引腳信號(hào)第二功能的需要。 對(duì)于第二功能為輸出的信號(hào)引腳,當(dāng)作為對(duì)于第二功能為輸出的信號(hào)引腳,當(dāng)作為I/O使用時(shí),第二功能信使用時(shí),第二功能信號(hào)引線應(yīng)保持高電平,與非門開通,以維持從鎖存器到輸出端數(shù)據(jù)號(hào)引線應(yīng)保持高電平,與非門開通,以維持從鎖存器到輸出端數(shù)據(jù)輸出通路的暢通。輸出通路的暢通。 當(dāng)輸出第二功能信號(hào)時(shí),該位的鎖存器應(yīng)置當(dāng)輸出第二功能信號(hào)時(shí),該位的鎖存器應(yīng)置“1”,使與非門對(duì)第二,使與非門對(duì)第二功能信號(hào)的輸出是暢通的,從而實(shí)現(xiàn)第二功能信號(hào)的輸出。功能信號(hào)的輸出是暢通的,從而實(shí)現(xiàn)第二功能信號(hào)的輸出。 (1)系統(tǒng)總線:)系統(tǒng)總線: 地址總線(地址總線(16位位)

5、:P0(地址低(地址低8位)、位)、P2口(地址高口(地址高8位)位) 數(shù)據(jù)總線(數(shù)據(jù)總線(8位位):P0口(地址口(地址/ /數(shù)據(jù)分時(shí)復(fù)用,借助數(shù)據(jù)分時(shí)復(fù)用,借助ALE);); 控制總線(控制總線(6根根):P3口的第二功能和口的第二功能和9、29、30、31腳;腳; (2)供用戶使用的端口:)供用戶使用的端口:P1口、部分未作第二功能的口、部分未作第二功能的P3口;口; (3)P0口作地址口作地址/ /數(shù)據(jù)時(shí),是真正的雙向口,三態(tài),負(fù)載能力數(shù)據(jù)時(shí),是真正的雙向口,三態(tài),負(fù)載能力 為為8個(gè)個(gè)LSTTL電路;電路; P1P3是準(zhǔn)雙向口,負(fù)載能力為是準(zhǔn)雙向口,負(fù)載能力為4個(gè)個(gè)LSTTL電路。電路

6、。 (4)P0P3在用作輸入之前必須先寫在用作輸入之前必須先寫“1”,即:,即: (P0)=FFH (P3)=FFH 。MCS51系列單片機(jī)引腳及總線結(jié)構(gòu) (a) 管腳圖; (b) 引腳功能分類 P0為三態(tài)雙向口,它可作為輸入輸出端口使用,也可作為系統(tǒng)擴(kuò)展時(shí)的低8位地址/8位數(shù)據(jù)總線使用。 P1口為準(zhǔn)雙向口,每一位都可以分別定義為輸入或輸出使用。 P2口也是一個(gè)準(zhǔn)雙向口,它有兩種使用功能:作為普通I/O端口或作為系統(tǒng)擴(kuò)展時(shí)的高8位地址總線。 P3口為多功能口,除了用作通用I/O口之外,它的每一位都有各自的第二功能 。一、實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)說明三、實(shí)驗(yàn)儀器四、實(shí)驗(yàn)內(nèi)容六、實(shí)驗(yàn)報(bào)告要求五、思考題1、

7、學(xué)習(xí)、學(xué)習(xí)P1口的使用方法。口的使用方法。2、學(xué)習(xí)延時(shí)子程序的編寫和使用。、學(xué)習(xí)延時(shí)子程序的編寫和使用。 3、熟練在匯編軟件環(huán)境下編寫、修改、調(diào)、熟練在匯編軟件環(huán)境下編寫、修改、調(diào) 試、和運(yùn)行硬件程序試、和運(yùn)行硬件程序4、熟悉匯編語(yǔ)言、熟悉匯編語(yǔ)言 1、P1口做輸出口,接八只發(fā)光二極管,編口做輸出口,接八只發(fā)光二極管,編寫程序,使發(fā)光二極管循環(huán)點(diǎn)亮。寫程序,使發(fā)光二極管循環(huán)點(diǎn)亮。 2、P1.0,P1.1作輸入口接兩個(gè)撥動(dòng)開關(guān),作輸入口接兩個(gè)撥動(dòng)開關(guān),P1.2,P1.3作輸出口,接兩個(gè)發(fā)光二極管,作輸出口,接兩個(gè)發(fā)光二極管,編寫程序讀取開關(guān)狀態(tài),將此狀態(tài),在發(fā)編寫程序讀取開關(guān)狀態(tài),將此狀態(tài),在發(fā)

8、光二極管上顯示出來。編程時(shí)應(yīng)注意光二極管上顯示出來。編程時(shí)應(yīng)注意P1.0,P1.1作為輸入口時(shí)應(yīng)先置作為輸入口時(shí)應(yīng)先置1,才能正才能正確讀入值。確讀入值。 計(jì)算機(jī)計(jì)算機(jī) 偉福軟件(偉福軟件( lab2000P ) 1、P1口是準(zhǔn)雙向口。它作為輸出口時(shí)與一口是準(zhǔn)雙向口。它作為輸出口時(shí)與一般的雙向口使用方法相同。由準(zhǔn)雙向口結(jié)般的雙向口使用方法相同。由準(zhǔn)雙向口結(jié)構(gòu)可知當(dāng)構(gòu)可知當(dāng)P1口用為輸入口時(shí),必須先對(duì)它口用為輸入口時(shí),必須先對(duì)它置置“1”。若不先對(duì)它置。若不先對(duì)它置“1”,讀入的數(shù)據(jù),讀入的數(shù)據(jù)是不正確的。是不正確的。 2、8051延時(shí)子程序的延時(shí)計(jì)算問題,計(jì)延時(shí)子程序的延時(shí)計(jì)算問題,計(jì)算和估算

9、延時(shí)子程序的時(shí)間。算和估算延時(shí)子程序的時(shí)間。 關(guān)于延時(shí)子程序的時(shí)間計(jì)算,查指令表可知MOV和DJNZ指令均需用兩個(gè)機(jī)器周期,在6MHz晶振時(shí),一個(gè)機(jī)器周期時(shí)間長(zhǎng)度為12/6MHZ,所以上面延時(shí)子程序該的執(zhí)行時(shí)間為: (256255+2)2126 261ms P1口是準(zhǔn)雙向口,它作為輸出口使用時(shí)具有鎖存功能。實(shí)驗(yàn)所需要LED電平顯示電路如圖所示。 由P1口的準(zhǔn)雙向口結(jié)構(gòu)可知,當(dāng)作為輸入口時(shí),必須先對(duì)它置“1”。若不先對(duì)它置“1”,讀入的數(shù)據(jù)是不正確的。實(shí)驗(yàn)所需要LED電平顯示電路和邏輯電平開關(guān)電路如圖所示。 KeyLeft equ P1.0 KeyRight equ P1.1 LedLeft e

10、qu P1.2 LedRight equ P1.3 SETB KeyLeft SETB KeyRightLoop: MOV C,KeyLeft MOV LedLeft,C MOV C,KeyRight MOV Ledright,C LJMP Loop END Loop:mov a, #01h mov r2, #8Output: mov P1, a rl a call Delay djnz r2, Output ljmp LoopDelay: mov r6, #0 mov r7, #0DelayLoop: djnz r6, DelayLoop djnz r7, DelayLoop ret end

11、 1、改變延時(shí)時(shí)間,變快或者變慢,觀察效、改變延時(shí)時(shí)間,變快或者變慢,觀察效果;果; 2、第、第2個(gè)實(shí)驗(yàn)在每個(gè)端口增加軟件延時(shí),個(gè)實(shí)驗(yàn)在每個(gè)端口增加軟件延時(shí),延時(shí)時(shí)間變快或者變慢,觀察撥動(dòng)開關(guān)響延時(shí)時(shí)間變快或者變慢,觀察撥動(dòng)開關(guān)響應(yīng)效果;應(yīng)效果; 3、改變流水燈的運(yùn)行方向;、改變流水燈的運(yùn)行方向; 4、改變流水燈的運(yùn)行模式,雙燈對(duì)跑,雙、改變流水燈的運(yùn)行模式,雙燈對(duì)跑,雙燈一起跑。燈一起跑。 5、如果、如果LED燈為低電平點(diǎn)亮,如何改動(dòng)。燈為低電平點(diǎn)亮,如何改動(dòng)。1、實(shí)驗(yàn)?zāi)康暮蛢?nèi)容、實(shí)驗(yàn)?zāi)康暮蛢?nèi)容 2、記錄下對(duì)原程序修改的地方,分析原理、記錄下對(duì)原程序修改的地方,分析原理3、寫清相關(guān)程序運(yùn)行結(jié)

12、果,并詳細(xì)說明結(jié)果、寫清相關(guān)程序運(yùn)行結(jié)果,并詳細(xì)說明結(jié)果 的正確性的正確性 8051單片機(jī)有5個(gè)中斷源,有兩個(gè)中斷優(yōu)先級(jí),高優(yōu)先級(jí)的中斷源可以中斷低優(yōu)先級(jí)的服務(wù)程序,反之不行。當(dāng)兩個(gè)同樣級(jí)別的中斷申請(qǐng)同時(shí)到來時(shí),則按一個(gè)固定的查尋次序來處理中斷響應(yīng)。中斷源入口地址優(yōu)先級(jí)順序說 明外部中斷00003H最高來自P3.2引腳(INT0)的外部中斷請(qǐng)求定時(shí)/計(jì)數(shù)器0000BH定時(shí)/計(jì)數(shù)器T0溢出中斷請(qǐng)求外部中斷10013H來自P3.3引腳(INT1)的外部中斷請(qǐng)求定時(shí)/計(jì)數(shù)器T1001BH定時(shí)/計(jì)數(shù)器T1溢出中斷請(qǐng)求串行口0023H最低串行口完成一幀數(shù)據(jù)的發(fā)送或接收中斷一、一、MCS-51MCS-51

13、中斷系統(tǒng)內(nèi)部結(jié)構(gòu)中斷系統(tǒng)內(nèi)部結(jié)構(gòu)2 2、中斷允許控制:、中斷允許控制:總允許開關(guān):總允許開關(guān):EAEA;源允許開關(guān):源允許開關(guān):ESES、ET1ET1、EX1EX1、ET0ET0、EX0EX0。3 3、2 2級(jí)中斷優(yōu)先級(jí)控制:級(jí)中斷優(yōu)先級(jí)控制:優(yōu)先級(jí)選擇開關(guān):優(yōu)先級(jí)選擇開關(guān):PSPS、PT1PT1、PX1PX1、PT0PT0、PX0PX0。1 1、中斷源信號(hào):、中斷源信號(hào):2 2個(gè)外部中斷源信號(hào):個(gè)外部中斷源信號(hào):INT0INT0、INT1INT1;2 2個(gè)定時(shí)器個(gè)定時(shí)器T0T0、T1T1溢出中斷請(qǐng)求:溢出中斷請(qǐng)求:TF0TF0、TF1TF1;1 1個(gè)串行口數(shù)據(jù)發(fā)送、接收結(jié)束中斷請(qǐng)求:個(gè)串行口

14、數(shù)據(jù)發(fā)送、接收結(jié)束中斷請(qǐng)求:TITI、RIRI。高高低低 8051單片機(jī)中斷的開放和關(guān)閉是由特殊功能寄存器IE來實(shí)現(xiàn)兩級(jí)控制的。在寄存器IE中有一個(gè)總允許位EA,當(dāng)EA=0時(shí), 就關(guān)閉了所有的中斷申請(qǐng),CPU不響應(yīng)任何中斷申請(qǐng)。而當(dāng)EA=1時(shí),對(duì)各中斷源的申請(qǐng)是否開放,還要看各中斷源的中斷允許位的狀態(tài)。EAESET1EX1ET0 EX0D7 D6 D5 D4 D3 D2 D1 D0EA:中斷總允許位。 EA=0,CPU關(guān)閉所有的中斷申請(qǐng); EA=1,允許各個(gè)中斷源的中斷申請(qǐng),但 還要取決于各中斷源中斷允許控 制位的狀態(tài)。ES:串行口中斷允許位。 ES=1,串行口開中斷; ES=0,串行口關(guān)中斷

15、。ET1:定時(shí)/計(jì)數(shù)器T1的溢出中斷允許位。 ET1=1允許T1溢出中斷; ET1=0則不允許T1溢出中斷。EX1:外部中斷1(INT1)的中斷允許位。 ET1=1允許外部中斷1申請(qǐng)中斷, EX1=0則不允許中斷。ET0:定時(shí)/計(jì)數(shù)器T0的溢出中斷允許位。 ET0=1允許中斷, ET0=0不允許中斷。EX0:外部中斷0(INT0)的中斷允許位。 EX0=1允許中斷, EX0=0不允許中斷。 每個(gè)中斷源的優(yōu)先級(jí)別由特殊功能寄存器IP來管理。PSPT1PX1PT0PX0D7 D6 D5 D4 D3 D2 D1 D0PS:串行口中斷優(yōu)先級(jí)控制位。PT1:定時(shí)器/計(jì)數(shù)器T1中斷優(yōu)級(jí)控制位。PX1:外部

16、中斷INT1中斷優(yōu)先級(jí)控制位。PT0:定時(shí)器/計(jì)數(shù)器T0中斷優(yōu)先級(jí)控制位。PX0:外部中斷INT0中斷優(yōu)先級(jí)控制位。 外部中斷觸發(fā)方式通過特殊功能寄存器TCON(地址為88H)控制,TCON中各控制位分布如下:D7 D6 D5 D4 D3 D2 D1 D0TF1TF0IE1IT1IE0IT0IT0:選擇外中斷INT0的中斷觸發(fā)方式。IT0=0為電平觸發(fā)方式,低電平有效。IT0=1為負(fù)邊沿觸發(fā)方式,INT0腳上的負(fù)跳變有效。IT0的狀態(tài)可以用指令來置“1”或清“0”。IE0:外中斷INT0的中斷申請(qǐng)標(biāo)志。 當(dāng)檢測(cè)到INT0上存在有效中斷申請(qǐng)時(shí),由硬件使IE0置位。當(dāng)CPU轉(zhuǎn)向中斷服務(wù)程序時(shí),由硬

17、件清“0”IE0中斷申請(qǐng)標(biāo)志。 IT1:選擇外中斷INT1的觸發(fā)方式(功能與TI0類似)。IE1:外部中斷INT1的中斷申請(qǐng)標(biāo)志(功能與IE0 類似)。TF0:定時(shí)/計(jì)數(shù)器T0溢出中斷申請(qǐng)標(biāo)志。 當(dāng)T0溢出時(shí),由內(nèi)部硬件將TF0置“1”,當(dāng)CPU轉(zhuǎn)向中斷服務(wù)程序時(shí),由硬件將TF0清“0”,從而清除T0的中斷申請(qǐng)標(biāo)志。TF1:定時(shí)器1溢出中斷申請(qǐng)標(biāo)志(功能與TF0相同)。 例如例如, 某軟件中對(duì)寄存器某軟件中對(duì)寄存器IE、 IP設(shè)置如下設(shè)置如下: MOV IE, 8FH MOV IP, 06H 則此時(shí)該系統(tǒng)中則此時(shí)該系統(tǒng)中: CPU中斷允許中斷允許; 允許外部中斷允許外部中斷 0、 外部中斷外部

18、中斷 1、 定時(shí)器定時(shí)器 /計(jì)數(shù)器計(jì)數(shù)器 0、 定定時(shí)器時(shí)器 /計(jì)數(shù)器計(jì)數(shù)器1提出的中斷申請(qǐng)?zhí)岢龅闹袛嗌暾?qǐng); 允許中斷源的中斷優(yōu)先次序?yàn)樵试S中斷源的中斷優(yōu)先次序?yàn)? 定時(shí)器定時(shí)器 /計(jì)數(shù)器計(jì)數(shù)器 0外部中斷外部中斷 1外部中斷外部中斷 0定時(shí)器定時(shí)器/計(jì)數(shù)計(jì)數(shù)器器 1。 一、中斷響應(yīng)條件:一、中斷響應(yīng)條件:1有中斷請(qǐng)求信號(hào);有中斷請(qǐng)求信號(hào);2. . 系統(tǒng)處于開中斷狀態(tài)。系統(tǒng)處于開中斷狀態(tài)。二、中斷響應(yīng)過程:二、中斷響應(yīng)過程:1關(guān)中斷:屏蔽其它中斷請(qǐng)求信號(hào)。關(guān)中斷:屏蔽其它中斷請(qǐng)求信號(hào)。2保護(hù)斷點(diǎn):將斷點(diǎn)地址壓入堆棧保存,即當(dāng)前保護(hù)斷點(diǎn):將斷點(diǎn)地址壓入堆棧保存,即當(dāng)前PCPC值入棧。值入棧。3尋

19、找中斷源:中斷程序入口地址尋找中斷源:中斷程序入口地址PCPC,轉(zhuǎn)入中斷服務(wù)。,轉(zhuǎn)入中斷服務(wù)。4保護(hù)現(xiàn)場(chǎng):將中斷服務(wù)程序使用的所有寄存器內(nèi)容入棧。保護(hù)現(xiàn)場(chǎng):將中斷服務(wù)程序使用的所有寄存器內(nèi)容入棧。5中斷處理:執(zhí)行中斷源所要求的程序段。中斷處理:執(zhí)行中斷源所要求的程序段。鏈接中斷處理鏈接中斷處理6恢復(fù)現(xiàn)場(chǎng):恢復(fù)被使用寄存器的原有內(nèi)容?;謴?fù)現(xiàn)場(chǎng):恢復(fù)被使用寄存器的原有內(nèi)容。7開中斷:允許接受其它中斷請(qǐng)求信號(hào)。開中斷:允許接受其它中斷請(qǐng)求信號(hào)。8中斷返回:執(zhí)行中斷返回:執(zhí)行RETI指令,堆棧斷點(diǎn)地址指令,堆棧斷點(diǎn)地址PC, 程序跳轉(zhuǎn)回?cái)帱c(diǎn)處執(zhí)行。程序跳轉(zhuǎn)回?cái)帱c(diǎn)處執(zhí)行。 RETI= RET指令指令+

20、+通知通知CPU中斷服務(wù)已結(jié)束(復(fù)位觸發(fā)器)中斷服務(wù)已結(jié)束(復(fù)位觸發(fā)器)1、中斷采樣、中斷采樣僅對(duì)外中斷(僅對(duì)外中斷(INT0、INT1)請(qǐng)求信號(hào);)請(qǐng)求信號(hào);2、中斷查詢:?jiǎn)纹瑱C(jī)在每一個(gè)機(jī)器周期的最后一個(gè)狀態(tài)、中斷查詢:?jiǎn)纹瑱C(jī)在每一個(gè)機(jī)器周期的最后一個(gè)狀態(tài)S6, 按優(yōu)先級(jí)順序?qū)χ袛嗾?qǐng)求標(biāo)志位進(jìn)行查詢,即先查詢高級(jí)中斷后再查按優(yōu)先級(jí)順序?qū)χ袛嗾?qǐng)求標(biāo)志位進(jìn)行查詢,即先查詢高級(jí)中斷后再查詢低級(jí)中斷,同級(jí)中斷按詢低級(jí)中斷,同級(jí)中斷按“INTINT0 0T T0 0INTINT1 1T T1 1RI/TIRI/TI”的順序查詢。的順序查詢。如果查詢到有標(biāo)志位為如果查詢到有標(biāo)志位為“1 1”,則表明有中

21、斷請(qǐng)求發(fā)生,接著就從相鄰的,則表明有中斷請(qǐng)求發(fā)生,接著就從相鄰的下一個(gè)機(jī)器周期的下一個(gè)機(jī)器周期的S1狀態(tài)開始進(jìn)行中斷響應(yīng)。狀態(tài)開始進(jìn)行中斷響應(yīng)。 由于中斷請(qǐng)求是隨機(jī)發(fā)生的,由于中斷請(qǐng)求是隨機(jī)發(fā)生的,CPUCPU無法預(yù)先得知,因此在程序執(zhí)行無法預(yù)先得知,因此在程序執(zhí)行過程中,中斷查詢要在指令執(zhí)行的每個(gè)機(jī)器周期中不停地重復(fù)進(jìn)行。過程中,中斷查詢要在指令執(zhí)行的每個(gè)機(jī)器周期中不停地重復(fù)進(jìn)行。3、中斷響應(yīng):當(dāng)查詢到有效的中斷請(qǐng)求時(shí),就進(jìn)行中斷響應(yīng)。其主要內(nèi)中斷響應(yīng):當(dāng)查詢到有效的中斷請(qǐng)求時(shí),就進(jìn)行中斷響應(yīng)。其主要內(nèi)容是由硬件自動(dòng)生成一條長(zhǎng)調(diào)用指令容是由硬件自動(dòng)生成一條長(zhǎng)調(diào)用指令LCALLLCALL。其格

22、式為:。其格式為:LCALL addr16LCALL addr16,addr16addr16即是由系統(tǒng)設(shè)定的即是由系統(tǒng)設(shè)定的5 5個(gè)中斷程序的入口地址。個(gè)中斷程序的入口地址。各中斷源中斷服務(wù)各中斷源中斷服務(wù)程序的入口地址。程序的入口地址。 如右表:如右表:(1)各中斷源的入口地址之間僅相隔8個(gè)單元,如果中斷服務(wù)程序的長(zhǎng)度超過8個(gè)地址單元時(shí),應(yīng)在中斷入口地址處安排一條轉(zhuǎn)移指令,轉(zhuǎn)到其他有足夠空余存儲(chǔ)器單元的地址空間。(2)若執(zhí)行當(dāng)前中斷服務(wù)程序時(shí)需要禁止更高級(jí)中斷源,則要用軟件指令關(guān)閉中斷,在中斷返回之前再開放中斷。(3)在保護(hù)和恢復(fù)現(xiàn)場(chǎng)時(shí),為了不使現(xiàn)場(chǎng)信息受到破壞或造成混亂,保護(hù)現(xiàn)場(chǎng)之前應(yīng)關(guān)中

23、斷,若需要允許高級(jí)中斷,則應(yīng)在保護(hù)現(xiàn)場(chǎng)之后再開中斷。同樣在恢復(fù)現(xiàn)場(chǎng)之前也應(yīng)先關(guān)中斷,恢復(fù)現(xiàn)場(chǎng)之后再開中斷。(4)及時(shí)清除那些不能被硬件自動(dòng)清“0”的中斷請(qǐng)求標(biāo)志,以免產(chǎn)生錯(cuò)誤的中斷。一、實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)說明三、實(shí)驗(yàn)儀器四、實(shí)驗(yàn)內(nèi)容六、實(shí)驗(yàn)報(bào)告要求五、思考題1、學(xué)習(xí)外部中斷技術(shù)的基本使用方法。、學(xué)習(xí)外部中斷技術(shù)的基本使用方法。2、學(xué)習(xí)中斷處理程序的編程方法。、學(xué)習(xí)中斷處理程序的編程方法。 3、熟練在匯編軟件環(huán)境下編寫、修改、調(diào)、熟練在匯編軟件環(huán)境下編寫、修改、調(diào) 試、和運(yùn)行硬件程序試、和運(yùn)行硬件程序4、熟悉匯編語(yǔ)言、熟悉匯編語(yǔ)言 1、用單次脈沖申請(qǐng)中斷,在中斷處理程序中使P1.0的輸出狀態(tài)發(fā)生反

24、轉(zhuǎn),并通過發(fā)光二極管觀察P1.0的電平。 2、通過本實(shí)驗(yàn)加深對(duì)8051單片機(jī)中斷系統(tǒng)的理解,學(xué)習(xí)外部中斷的基本使用方法及相關(guān)編程。 計(jì)算機(jī)計(jì)算機(jī) 偉福軟件(偉福軟件( lab2000P ) 中斷服務(wù)程序的關(guān)鍵是:中斷服務(wù)程序的關(guān)鍵是:1、保護(hù)進(jìn)入中斷時(shí)的狀態(tài),并在退出中斷之、保護(hù)進(jìn)入中斷時(shí)的狀態(tài),并在退出中斷之前恢復(fù)進(jìn)入時(shí)的狀態(tài)。前恢復(fù)進(jìn)入時(shí)的狀態(tài)。2、必須在中斷程序中設(shè)定是否允許中斷重入,、必須在中斷程序中設(shè)定是否允許中斷重入,即設(shè)置即設(shè)置EXO位。位。3、本例中使用了、本例中使用了INTO中斷,一般中斷程序中斷,一般中斷程序進(jìn)入時(shí)應(yīng)保護(hù)進(jìn)入時(shí)應(yīng)保護(hù)PSW,ACC以及中斷程序使以及中斷程序使用但非其專用的寄存器。本例的中斷程序保用但非其專用的寄存器。

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論