|
如圖是中斷實(shí)驗(yàn)
一、實(shí)驗(yàn)?zāi)康?/strong>- 1.理解外部中斷的作用及基本應(yīng)用
- 2. 掌握單片機(jī)使用外部中斷的簡(jiǎn)單應(yīng)用系統(tǒng)的設(shè)計(jì)方法和調(diào)試方法
二、實(shí)驗(yàn)原理- 1.中斷控制原理:?jiǎn)纹瑱C(jī)暫停執(zhí)行原程序,轉(zhuǎn)而為外部設(shè)備執(zhí)行中斷服務(wù)程序,執(zhí)行完又回到原程序的過(guò)程稱(chēng)之為中斷。
- 2.外部中斷的初始化設(shè)置共有三項(xiàng)內(nèi)容:
- 開(kāi)放外部中斷,設(shè)置IE中的EA=1,EX0=1或EX1=1,本實(shí)驗(yàn)選用EX0=1。
- 設(shè)置TCON中的IT0/IT1控制外部中斷的觸發(fā)方式為電平方式或邊沿方式,本實(shí)驗(yàn)選用邊沿觸發(fā)方式。
- 中斷請(qǐng)求信號(hào)由引腳INT0(P3.2)和INT1(P3.3)引入,本實(shí)驗(yàn)由INT0(P3.2)接獨(dú)立按鍵引入。
- 3.中斷響應(yīng)的過(guò)程:?jiǎn)纹瑱C(jī)會(huì)檢測(cè)P3.2上的狀態(tài),若在兩個(gè)相鄰周期采樣先高電平后低電平則中斷請(qǐng)求有效,中斷標(biāo)志位置“1”;否則繼續(xù)為“0”。當(dāng)單片機(jī)查詢(xún)到中斷標(biāo)志位置“1”后,進(jìn)行中斷響應(yīng)一次,進(jìn)入中斷服務(wù)程序,執(zhí)行完繼續(xù)回到主程序。
單片機(jī)源程序如下:
- #include“reg52.h”
- typedef unsigned int u16;
- typedef unsigned char u8;
- sbit LED1=P2^0;
- sbit KEY3=P3^2;
- void delay_10us(u16 ten_us)
- {
- While(ten_us--);
- }
- void exti0_init(void)
- {
- IT0=1;
- EX0=1;//打開(kāi)INT0的中斷允許
- EA=1;//打開(kāi)總中斷
- }
- void main()
- {
- Exti0_init();
- while(1)
- {
- }
- }
- void time0() interrupt 0
- {
- Delay_10us(1000);
- If(KEY3==0)
- LED1=!LED1;
- }
復(fù)制代碼
|
-
51hei.png
(54.79 KB, 下載次數(shù): 30)
下載附件
2023-6-4 22:56 上傳
-
-
DA1.7z
2023-6-4 22:56 上傳
點(diǎn)擊文件名下載附件
19.54 KB, 下載次數(shù): 1
|