回首頁ㄌ 向上一頁
8051簡介
                 基礎實習 串列埠實驗 時間中斷實驗 外部中斷實驗

 8051之中斷優先權實驗 8051之INT1中斷實驗 中斷優先權程式

8051之INT0中斷實驗

目的

        瞭解中斷觸發及中斷流程原理。

使用材料

   8051微電腦一片,包含八個顯示用LED,零件如下:

1. 8051單晶片微處理機1個(40 pin IC)

2. 74LS373位址鎖定1個(20 pin IC)

3. 2764A 8 Kbytes EPROM 1個(28 pin IC)

4. 12MHZ Xtal 石英振盪體 Crystal 1個

5. 10μf 電容1個

6. 20KΩ電阻1個

7. Tact Switch常開式重置開關1個

8. 30pf電容2個

9. LED單直徑3mm或5mm 8個

10. 470Ω 9pin排組1個

功能說明

(1)INT0腳為中斷請求輸入腳,觸發後,會跳到003H位址執行中斷程式。本實驗,將主程式之動作設為8個LED全暗。當INT0之按鈕按下時,LED將先亮一顆,再持續向左亮。

     (2 )8051之中斷輸入腳有 INT0,INT1 兩支腳,觸發後所跳位址不同。它們皆可設為負緣觸發 (Falling Edge Triggered ) 或低準位觸發 ( Low Level Triggered );除非有中斷交握之動作時設準位觸發,否則一般應定為負緣觸發才適合。

     (3)當中斷腳 ( INT0 )被觸發後,若已在中斷致能 ( EX0=1 ) 情況下 , 則中斷要求旗標 ( IE0 ) 會設立為1,即產生中斷,當 CPU 呼叫中斷服務程式,即自動清除 IE0 並執行中斷程式。嚴格的說,是由IE0 旗標要求中斷,而非 INT0 腳直接要求,故8051亦可直接以指令設定IE0而產生中斷0。      

     

 

      

INT0中斷程式

 

ORG  00H

JMP  START

ORG  03H                  記憶體位址由03H開始存放

INC   P1                   中斷0產生時P1加1

RETI

ORG  30H

START:

        SETB  IT0                  設INT0為負緣觸發

        MOV  IP,#01H              設INT0為高中斷優先權

        MOV  IE,#10000001B        致能INT0中斷

        END

 8051之INT1中斷實驗

目的

     瞭解中斷觸發及中斷流程原理。

使用材料

  8051微電腦一片,包含八個顯示用LED,零件如下:

1. 8051單晶片微處理機1個(40 pin IC)

2. 74LS373位址鎖定1個(20 pin IC)

3. 2764A 8 Kbytes EPROM 1個(28 pin IC)

4. 12MHZ Xtal 石英振盪體 Crystal 1個

5. 10μf 電容1個

6. 20KΩ電阻1個

7. Tact Switch常開式重置開關1個

8. 30pf電容2個

9. LED單直徑3mm或5mm 8個

10. 470Ω 9pin排組1個

功能說明

 (1) INT1腳為中斷請求輸入腳,觸發後,會跳到13H位址執行中斷程式。本實驗,將主程式之動作設為8個LED全暗。當INT1之按鈕按下時,LED將先亮一顆,再持續向左亮。

     (2 )8051之中斷輸入腳有 INT0,INT1 兩支腳,觸發後所跳位址不同。它們皆可設為負緣觸發 (Falling Edge Triggered ) 或低準位觸發 ( Low Level Triggered );除非有中斷交握之動作時設準位觸發,否則一般應定為負緣觸發才適合。

     (3)當中斷腳(INT1)被觸發後,若已在中斷致能(EX1=1)情況下 , 則中斷要求旗標(IE1)會設立為1,即產生中斷,當CPU呼叫中斷服務程式,即自動清除IE1並執行中斷程式。嚴格的說,是由IE1旗標要求中斷,而非 INT1 腳直接要求,故8051亦可直接以指令設定IE1而產生中斷0。

   

      

INT1中斷程式  

                                   

ORG  00H

JMP  START

ORG  13H              記憶體位址由13H開始存放

INC   P1               中斷0產生時P1加1

RETI

ORG  30H

START:

        SETB  IT1               設INT1為負緣觸發

        MOV  IP,#00000100B      設INT1為高中斷優先權

        MOV  IE,#10001000B      致能INT1中斷

        END

 

8051之中斷優先權實驗

目的

  瞭解中斷優先權之原理及如何安排優先權順序

使用材料

  8051微電腦一片,包含八個顯示用LED,零件如下:

1. 8051單晶片微處理機1個(40 pin IC)

2. 74LS373位址鎖定1個(20 pin IC)

3. 2764A 8 Kbytes EPROM 1個(28 pin IC)

4. 12MHZ Xtal 石英振盪體 Crystal 1個

5. 10μf 電容1個

6. 20KΩ電阻1個

7. Tact Switch常開式重置開關2個

8. 30pf電容2個

9. LED單直徑3mm或5mm 8個

10. 470Ω 9pin排組1個

功能說明

    使PORT1的8支接腳一次只有一支腳為LOW,且一直向左旋轉不停。當同時觸發

INT0及INT1時,會先顯示閃滅,再出現四個燈輪流閃滅。

 

 

 

 

中斷優先權程式

        ORG  00H

        JMP  START

        ORG  003H

        JMP  INT0_DRV

        ORG  13H

        JMP  INT1_DRV

        ORG  30H

START:MOV  SP,#60               由記憶體位址61H開始存放

        STEB  IT0                  設INT0為負緣觸發     

        STEB  IT1                  設INT1為負緣觸發

        MOV  IP,#00000100B         設INT1為高中斷優先權

        MOV  IE,#10000101B         致能INT0及 INT1中斷

        MOV   A,#11111110B

 MAIN:MOV  P1,A

        MOV  R5,#10

        CALL  DELAY

        RL  A

        JMP  MAIN

DELAY:MOV  R6,#200

   DE1:MOV  R7,#250

        DJNZ  R7,$

        DJNZ  R6,DL1

        DJNZ  R5,DELAY

        RET

INTO_DRV:PUSH  PSW              

            SETB  RS0              設定RS0為進位旗標

            SETB  RS1              設定RS1為進位旗標

            MOV  R1,#10

            MOV  A,#0fh

      

LP1:

MOV  P1,A

            MOV  R5,#10

            CALL  DELAY

            CPL  A                 將A值取反向

            DJNZ  R1,LP1

            POP  PSW

            POP  A

            RETI

INT1_DRV:PUSH  A

           PUSH  PSW

           CLR  RS0

           SETB  RS1

           MOV  R1,#10

           MOV  A,#01010101B

      LP2:

           MOV  P1,A

           MOV  R5,#10

           CALL  DELAY

           CPL  A                  將A值取反向

           DJNZ  R1,LP2

           POP  PSW

           POP  A

           RETI

           END