中斷嵌套。附件里包含源代碼,proteus工程文件。 使用一個(gè)外部中斷和定時(shí)器中斷,通過(guò)P1口連接的八個(gè)發(fā)光二極管來(lái)顯示中斷的作用。外部中斷未發(fā)生時(shí),即引腳INT0的按鍵開(kāi)關(guān)沒(méi)有按下時(shí),系統(tǒng)通過(guò)定時(shí)器定時(shí)中斷的方法,使LED呈流水燈顯示,當(dāng)INT0腳的按鍵開(kāi)光按下,即產(chǎn)生外部中斷,外部中斷INT0打斷定時(shí)器的定時(shí)中斷,從而控制8個(gè)LED閃爍顯示。當(dāng)按鍵開(kāi)關(guān)松開(kāi),繼續(xù)呈流水燈顯示。本實(shí)驗(yàn)中外部中斷0設(shè)置為高優(yōu)先級(jí)中斷,定時(shí)器中斷設(shè)置為低優(yōu)先級(jí)中斷。 電路原理圖:
圖片1.png (56.99 KB, 下載次數(shù): 58)
下載附件
2021-12-28 20:43 上傳
電路工作原理的重點(diǎn)說(shuō)明:發(fā)光二極管為共陽(yáng)極連接,當(dāng)對(duì)應(yīng)P1口輸出0時(shí),發(fā)光二極管發(fā)光。K1按鍵沒(méi)按下時(shí),INT0=1,當(dāng)K1按鍵按下時(shí),INT0=0。 源代碼
圖片2.png (224.96 KB, 下載次數(shù): 74)
下載附件
2021-12-28 20:46 上傳
控制程序的重點(diǎn)說(shuō)明:PX0=1外部中斷為高優(yōu)先級(jí),PT0=0定時(shí)器中斷為低優(yōu)先級(jí),IT0=0將外部中斷0設(shè)置為電平觸發(fā)中斷方式,當(dāng)按鍵K1按下時(shí),為低電平觸發(fā)中斷,當(dāng)按鍵松開(kāi)時(shí)為高電平,外中斷0的中斷服務(wù)函數(shù)執(zhí)行完后,中斷結(jié)束,回到定時(shí)器T0的中斷服務(wù)函數(shù)。
單片機(jī)源程序如下: - #include <reg51.h>
- #include<intrins.h>
- #define uint unsigned int
- #define uchar unsigned char//延時(shí)函數(shù)Delay( ),i為形式參數(shù),不能賦初值
- void delay(uint i) {
- uchar j;
- for(;i>0;i--)
- for(j=0;j<125;j++)
- {;} //空函數(shù)
- }
- void main( )
- { //主函數(shù)
-
- TMOD=0x01; //定時(shí)器t0為方式1
- TH0=0xee; //設(shè)置定時(shí)器初值
- TL0=0x00;
- EA=1; //總中斷允許
- ET0=1;//允許定時(shí)器t0中斷
- TR0=1;//啟動(dòng)定時(shí)器t0
- EX0=1; //允許外部中斷0中斷
- IT0=0; //選擇外部中斷0為電平觸發(fā)中斷方式
- PX0=1;//外部中斷為高優(yōu)先級(jí)
- PT0=0;//定時(shí)器中斷為低優(yōu)先級(jí)
- P1=0xff;
- while(1);
- {;} //循環(huán)等待
- }
- void timer0() interrupt 1 //T0中斷程序
- {
- uchar i;
- uchar display[9]= {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //流水燈顯示數(shù)據(jù)組
- TH0=0xee;
- TL0=0x00;
- while(1)
- {
- P1=0xff;
- for(i=0;i<9;i++)
- {
- delay(500);
- P1=display[i];
- }
- }
- }
- void int0_isr(void) interrupt 0 //外中斷0的中斷服務(wù)函數(shù)
- {
- P1=0;
- delay(700);
- P1=0xff;
- delay(700);
- }
復(fù)制代碼
Keil代碼與Proteus仿真下載:
中斷嵌套.zip
(34.25 KB, 下載次數(shù): 18)
2021-12-28 20:48 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
中斷嵌套.zip
(11.62 KB, 下載次數(shù): 14)
2021-12-28 20:48 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|