項(xiàng)目6 單片機(jī)的中斷_第1頁
項(xiàng)目6 單片機(jī)的中斷_第2頁
項(xiàng)目6 單片機(jī)的中斷_第3頁
項(xiàng)目6 單片機(jī)的中斷_第4頁
項(xiàng)目6 單片機(jī)的中斷_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

單片機(jī)技術(shù)應(yīng)用項(xiàng)目六認(rèn)識單片機(jī)的中斷廣東機(jī)電職業(yè)技術(shù)學(xué)院第一部分說課程第一部分說課程1.單片機(jī)的中斷1.中斷的概念

中斷在生活中隨處可見。比如,正在看書,突然電閃雷鳴準(zhǔn)備下大雨,只好先用書簽記錄看到的位置,然后跑去收衣服,收好衣服再回來繼續(xù)看。單片機(jī)的中斷:CPU在處理程序1的過程中,突然來了一個(gè)請求,CPU響應(yīng)請求后暫時(shí)停止運(yùn)行當(dāng)前程序,轉(zhuǎn)而去執(zhí)行程序2,執(zhí)行程序2后,再轉(zhuǎn)回來繼續(xù)執(zhí)行程序1中剩余的部分。

第一部分說課程第一部分說課程1.單片機(jī)的中斷2.

單片機(jī)中斷的優(yōu)點(diǎn)1.提高了CPU的效率CPU與外部設(shè)備聯(lián)系時(shí),CPU接到中斷請求后,暫停當(dāng)前的工作轉(zhuǎn)去為外部設(shè)備服務(wù),處理完畢后又返回到原來的工作。因此,CPU不必浪費(fèi)時(shí)間去查詢外部設(shè)備狀態(tài),使得效率大大提高。2.可實(shí)現(xiàn)實(shí)時(shí)處理在實(shí)時(shí)控制中,利用中斷技術(shù),外部設(shè)備在任何時(shí)刻都可以發(fā)出中斷請求,CPU接到請求后就能及時(shí)處理,以滿足實(shí)時(shí)控制要求。3.可及時(shí)處理故障

單片機(jī)在運(yùn)行過程中出現(xiàn)故障,可以通過中斷系統(tǒng)由故障源向CPU發(fā)送中斷請求,CPU及時(shí)轉(zhuǎn)到相應(yīng)的故障處理程序進(jìn)行處理,提高了計(jì)算機(jī)的可靠性。第一部分說課程第一部分說課程1.單片機(jī)的中斷3.單片機(jī)的中斷系統(tǒng)

有5個(gè)中斷源:分別是兩個(gè)外部中斷、兩個(gè)定時(shí)器中斷(T0、T1)和一個(gè)串行口中斷。外部中斷0和外部中斷1分別由單片機(jī)的P3.2和P3.3端口引入。定時(shí)/計(jì)數(shù)器中斷源位于單片機(jī)內(nèi)部,當(dāng)計(jì)數(shù)器計(jì)滿溢出時(shí)就會(huì)向CPU發(fā)出中斷請求。單片機(jī)內(nèi)部有1個(gè)串行通信接口,當(dāng)串行口接收或發(fā)送完一幀數(shù)據(jù)后會(huì)向CPU發(fā)出中斷請求。第一部分說課程第一部分說課程2.單片機(jī)中斷的寄存器

1.定時(shí)/計(jì)數(shù)器控制寄存器TCONTF1、TF0、TR1、TR0是定時(shí)/計(jì)數(shù)器控制位。后4位的IE1、IT1、IE0、IT0是中斷位。IE1、IE0:外部中斷1、外部中斷0的請求標(biāo)志位。IT1、IT0:外部中斷1、外部中斷0的觸發(fā)方式選擇位。當(dāng)IT=0,為低電平觸發(fā)方式;當(dāng)IT=1,為下降沿觸發(fā)方式。第一部分說課程第一部分說課程2.單片機(jī)中斷的寄存器

2.中斷允許寄存器IE

單片機(jī)CPU對中斷源開放或屏蔽,由中斷允許寄存器IE控制。EA:即EnableAll的縮寫,全局總中斷。當(dāng)EA=0時(shí),所有中斷均被禁止;當(dāng)EA=1時(shí),全局總中斷允許打開。EX0:外部中斷0的中斷允許位。EX0=1,允許外部中斷0中斷,否則禁止外部中斷0中斷。ET0:定時(shí)/計(jì)數(shù)器0的中斷允許位。ET0=1,允許定時(shí)/計(jì)數(shù)器0中斷,否則禁止定時(shí)/計(jì)數(shù)器0中斷。EX1:外部中斷1的中斷允許位。EX1=1,允許外部中斷1中斷,否則禁止外部中斷1中斷。ET1:定時(shí)/計(jì)數(shù)器1的中斷允許位。ET1=1,允許定時(shí)/計(jì)數(shù)器1中斷,否則禁止定時(shí)/計(jì)數(shù)器1中斷。ES:串行通信的中斷允許位。ES=1,允許串行通信中斷,否則禁止串行通信中斷。第一部分說課程第一部分說課程2.單片機(jī)中斷的寄存器

3.中斷優(yōu)先級寄存器IP

單片機(jī)CPU在任一時(shí)刻只能處理一個(gè)中斷,若同時(shí)來兩個(gè)或兩個(gè)以上的中斷請求,按中斷優(yōu)先順序進(jìn)行分級。低5位是單片機(jī)5個(gè)中斷源的優(yōu)先級:PS:串行口中斷優(yōu)先級控制位。=1為高優(yōu)先級,=0為低優(yōu)先級。PT1:定時(shí)器T1中斷優(yōu)先級控制位。PX1:外部中斷1中斷優(yōu)先級控制位。PT0:定時(shí)器T0中斷優(yōu)先級控制位。PX0:外部中斷0中斷優(yōu)先級控制位。

自然優(yōu)先級順序:第一部分說課程第一部分說課程3.案例1-單片機(jī)的外部中斷1.任務(wù)目標(biāo)

使用按鍵,利用單片機(jī)的外部中斷實(shí)現(xiàn)流水燈過程中的全部發(fā)光二極管的閃爍控制。具體來說就是正常情況下程序跑的是流水燈,而當(dāng)按鍵按下后,全部LED燈閃爍一次,然后再回到原來的流水燈顯示。2.電路連接硬件電路,包括單片機(jī)最小系統(tǒng)及4個(gè)LED發(fā)光二極管與單片機(jī)IO口的連接,按鍵與P32連接。第一部分說課程第一部分說課程3.案例1-單片機(jī)的外部中斷3.C語言程序設(shè)計(jì)#include<reg52.h>typedefunsignedcharuchar;voidDelay_1s()//用定時(shí)器T0的工作方式1實(shí)現(xiàn)1S延時(shí)的程序{}voidint_0()interrupt0//外部中斷0的中斷發(fā)生時(shí)執(zhí)行的函數(shù){ P1=0x00;//同時(shí)點(diǎn)亮4顆LED Delay_1s();//調(diào)用1S延時(shí)函數(shù) P1=0xff;//同時(shí)熄滅4顆LED Delay_1s();}voidmain(){uchari,w;//i為循環(huán)變量,w用于保存led顯示編碼EA=1; //打開中斷總允許位,允許中斷EX0=1;//打開外部中斷0允許位,允許外部中斷IT0=1;//設(shè)置外部中斷的觸發(fā)方式為下降沿觸發(fā)TMOD=0x01;//設(shè)置定時(shí)器T0為工作方式1while(1){w=0x01;//設(shè)置led顯示控制編碼為01H for(i=0;i<4;i++) { P1=~w;//w取反后送P1口點(diǎn)亮相應(yīng)的LED燈 Delay_1s();//調(diào)用1S延時(shí)函數(shù)w<<=1;//點(diǎn)亮燈的位置移動(dòng)}}}第一部分說課程第一部分說課程3.案例1-單片機(jī)的外部中斷4.中斷函數(shù)的格式

在單片機(jī)C語言中,中斷函數(shù)是一種特別的函數(shù),有固定的格式。中斷服務(wù)程序(函數(shù))的格式如下:void中斷處理程序函數(shù)名()interrupt中斷類型號{ 中斷處理程序內(nèi)容;}5.中斷源的中斷序號及中斷服務(wù)程序入口地址6.實(shí)驗(yàn)現(xiàn)象

4個(gè)LED燈按LED1-LED2-LED3-LED4-LED1……的順序輪流點(diǎn)亮。按下K1鍵時(shí),產(chǎn)生中斷,4個(gè)LED燈會(huì)同時(shí)亮滅。完后,繼續(xù)LED輪流點(diǎn)亮。第一部分說課程第一部分說課程4.案例2-單片機(jī)定時(shí)器中斷1.任務(wù)目標(biāo)

使用單片機(jī)的定時(shí)器中斷,實(shí)現(xiàn)1S的精確定時(shí)。2.電路連接硬件電路,包括單片機(jī)最小系統(tǒng)及LED發(fā)光二極管與單片機(jī)IO口的連接。第一部分說課程第一部分說課程4.案例2-單片機(jī)定時(shí)器中斷3.C語言程序設(shè)計(jì)#include<reg52.h>sbitled=P1^0;unsignedintcount=0;//每次計(jì)數(shù)50us,1S需要計(jì)20000次voidTimer_Init(void)//定時(shí)器初始化{ EA=1;//開總中斷 ET0=1;//開定時(shí)器0中斷TMOD=0X02;//定時(shí)器0工作于方式2 TH0=256-50;//計(jì)數(shù)50次,晶振頻率為12MHZ,故一共50us TL0=256-50; TR0=1;//打開定時(shí)器0,定時(shí)器0開始計(jì)數(shù),計(jì)數(shù)滿一次count加1}voidTimer0_Int(void)interrupt1{ count++;//定時(shí)器0的中斷函數(shù),用于實(shí)現(xiàn)count的變化}intmain(void){ Timer_Init();//初始化定時(shí)器 led=1;//初始化led為暗 while(1) { if(count<20000) led=0;//led亮 elseif(count<40000) led=1; el

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論