單片機(jī)中斷系統(tǒng)和定時計數(shù)器_第1頁
單片機(jī)中斷系統(tǒng)和定時計數(shù)器_第2頁
單片機(jī)中斷系統(tǒng)和定時計數(shù)器_第3頁
單片機(jī)中斷系統(tǒng)和定時計數(shù)器_第4頁
單片機(jī)中斷系統(tǒng)和定時計數(shù)器_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第4章AT89S51單片機(jī)中斷系統(tǒng)和定時/計數(shù)器

本章主要內(nèi)容1、中斷概述3、定時/計數(shù)器4、鍵盤接口2、外部中斷的應(yīng)用一、中斷的概述1、中斷概念單片機(jī)的CPU正在處理某個任務(wù)時,遇到其它事件請求(如定時器溢出),暫時停止目前的任務(wù),轉(zhuǎn)去處理請求的事件,處理完后再回到原來的地方,繼續(xù)原來的工作,這一過程稱為“中斷”,我們把請求的事件稱為中斷源。2、MCS-51系列單片機(jī)的中斷系統(tǒng)3、與中斷系統(tǒng)有關(guān)的SFR(1)TCON——中斷控制寄存器TCOND7D6D5D4D3D2D1D0位地址8FH8DH8BH8AH89H88H位定義TF1TF0IE1IT1IE0IT0IT0——外部中斷INT0的觸發(fā)方式選擇位。IT0=0,低電平觸發(fā)方式;IT0=1,下降沿觸發(fā)方式。IE0——外部中斷INT0的中斷請求標(biāo)志。IT1——外部中斷INT1的觸發(fā)方式選擇位。功能與IT0類似。IE1——外部中斷INT1的中斷請求標(biāo)志。功能與IE0類似。TF0——定時/計數(shù)器T0的中斷請求標(biāo)志。TF1——定時/計數(shù)器T1的中斷請求標(biāo)志。(2)IE——中斷允許控制寄存器IED7D6D5D4D3D2D1D0位地址AFH——ACHABHAAHA9HA8H位定義EA——ESET1EX1ET0EX0EX0——外部中斷0中斷允許控制位。EX0=1,INT0被允許(開中斷),EX0=0,外部中斷0被禁止(關(guān)中斷)。ET0——定時/計數(shù)器T0中斷允許控制位。EX1——外部中斷INT1中斷允許控制位。ET1——定時/計數(shù)器T1中斷允許控制位。ES——串行口中斷允許控制位。EA——中斷系統(tǒng)總允許控制位。(3)中斷優(yōu)先級控制寄存器IPD7D6D5D4D3D2D1D0位地址———BCHBBHBAHB9HB8H位定義———PSPT1PX1PT0PX0PX0——外部中斷INT0中斷優(yōu)先級控制位。PT0——定時/計數(shù)器T0優(yōu)先級控制位。PX1——外部中斷INT1中斷優(yōu)先級控制位。PT1——定時/計數(shù)器T1優(yōu)先級控制位。PS——串行口優(yōu)先級控制位。4、中斷源向量地址

INT0:0003HT0:000BHINT1:0013HT1:001BH串行口:0023H二、中斷處理過程

中斷處理過程:中斷請求、中斷響應(yīng)、中斷服務(wù)和中斷返回。

1、中斷請求中斷源只有在有請求時,CPU才可能響應(yīng)它,不同的中斷源產(chǎn)生中斷請求的方式是不同的。外部中斷產(chǎn)生請求是在外中斷的引腳上加低電平或下降沿信號,而定時/計數(shù)器中斷請求是在內(nèi)部的計數(shù)單元計滿溢出時產(chǎn)生,串行口中斷請求是在完成一次發(fā)送或接收時產(chǎn)生。2、中斷響應(yīng)(1)條件中斷源的中斷已經(jīng)被允許,中斷允許標(biāo)志和總的中斷允許標(biāo)志EA都被設(shè)置為“1”。CPU此時沒有響應(yīng)同級或高級中斷。CPU正處于執(zhí)行某一條指令的最后一個機(jī)器周期。(并且不是對IE、IP進(jìn)行訪問的指令或者是中斷返回指令RETI)(2)響應(yīng)中斷時的操作保護(hù)斷點地址。撤除該中斷源的請求標(biāo)志。關(guān)閉同級中斷。將該中斷源的入口地址送給PC,程序?qū)⑥D(zhuǎn)到該程序的入口地址處運行。3、中斷服務(wù)中斷服務(wù)就是中斷源請求CPU做的任務(wù),需要編程者用指令來實現(xiàn)。4、中斷返回中斷返回和子程序的返回類似,需要執(zhí)行一條返回指令RETIRETI;①(SP)→PC15~8,SP-1→SP。;②(SP)→PC7~0,SP-1→SP。中斷返回時完成的操作:(1)恢復(fù)斷點地址。(2)開放同級中斷。三、外部中斷應(yīng)用的一般步驟1、硬件把中斷請求信號加到單片機(jī)的中斷引腳上2、軟件中斷的初始化工作方式選擇SETBIT0開中斷SETBEX0SETBEA提供中斷入口地址編寫具體的中斷服務(wù)程序。例:在前面做過的循環(huán)彩燈電路的基礎(chǔ)上,現(xiàn)在要求:通過一個按鍵控制,每按一次彩燈移一位。

按鍵信號加到外部中斷0的引腳P3.2上,當(dāng)S不按下時,P3.2引腳為高電平,按下則為低電平,在按鍵的過程中P3.2引腳產(chǎn)生中斷請求信號S10K+5V360Ω

最小系統(tǒng)

P3.2+5V程序如下:

ORG0000H LJMPSETUPSETBIT0SETBEX0SETBEAMAIN:LJMPMAIN

ENDORG0003HMOVP1,ARLARETIINEX0P:MOVP1,A RLA RETIORG0030HSETUP:MOVA,#0FEH一、定時器概述兩個16位的定時/計數(shù)器T0和T1。它們本質(zhì)上是計數(shù)器。在做計數(shù)器使用時計數(shù)引腳上的脈沖信號(下降沿),在做定時器使用時數(shù)內(nèi)部的機(jī)器周期。計數(shù)器是加法計數(shù)器,計滿時溢出,并產(chǎn)生溢出標(biāo)志(TF0、TF1)。二、與定時器有關(guān)的SFR1.定時/計數(shù)器控制寄存器TCONTCOND7D6D5D4D3D2D1D0位地址8FH8EH8DH8CH8BH8AH89H88H位定義TF1TR1TF0TR0IE1IT1IE0IT1TR0——定時/計數(shù)器T0運行控制位。TR0=1,啟動T0運行(與TMOD中的GATE位有關(guān)),TR0=0,T0停止運行。TR1——定時/計數(shù)器T1運行控制位。功能同TR0。2、定時/計數(shù)器工作方式控制寄存器TMOD

TMODD7D6D5D4D3D2D1D0位定義GATEC/TM1M0GATEC/TM1M0高4位控制T1,低4位控制T0(1)GATE——門控位。GATE一般情況下設(shè)置為0,此時定時/計數(shù)器的運行僅受TR0/TR1控制。(2)C/T——定時/計數(shù)選擇位。C/T=0,為定時方式,對內(nèi)部的機(jī)器周期計數(shù)。C/T=1,為計數(shù)方式,對引腳上的脈沖信號計數(shù),負(fù)跳變有效。(3)M1M0——工作方式選擇位。M1M0=00B,方式0——13位的定時/計數(shù)器。M1M0=01B,方式1——16位的定時/計數(shù)器。M1M0=10B,方式2——8位的定時/計數(shù)器,初值自動重裝。M1M0=11B,方式3——兩個8位的定時/計數(shù)器,僅適用于T0。3.定時/計數(shù)器計數(shù)寄存器TH0——T0的高8位。TL0——T0的低8位。TH1——T1的高8位。TL1——T1的低8位。三、定時/計數(shù)器工作方式1.工作方式0M1M0=00B時,定時/計數(shù)器工作于方式0。(以T0為例)2.工作方式1M1M0=01B時,定時/計數(shù)器工作于方式1。3.工作方式2M1M0=10B時,定時/計數(shù)器工作于方式2。4.工作方式3M1M0=11B時,定時/計數(shù)器工作于方式3。四、定時/計數(shù)器應(yīng)用步驟1.硬件定時/計數(shù)器在對外部信息或事件進(jìn)行計數(shù)時,需要通過適當(dāng)?shù)碾娐穼⑵滢D(zhuǎn)換成脈沖信號,再加到定時/計數(shù)器的引腳上。最高頻率不能超過系統(tǒng)時鐘頻率的1/24。2.軟件(1)初始化。TMOD:選擇定時器設(shè)置工作方式賦初值:TH0、TL0、TH1、TL1啟動:TR0、TR1開中斷:開通所選定時器中斷(2)入口地址。T0:000BH;T1:001BH。(3)中斷服務(wù)程序。3.初值計算初值=2N─計數(shù)值=2N─t/T(其中t為定時的時間,T為系統(tǒng)的機(jī)器周期,t/T不能超出計數(shù)范圍)[例4-2]已知系統(tǒng)晶振是12MHz,在P1.0輸出2ms的方波。T0工作在方式0,計算定時器的初值。初值=2N─計數(shù)值=2N─t/T=213─1ms/1μs=213─1000=7192=1110000011000BTL0=11000B=18H,TH0=11100000B=E0H,分別為13位二進(jìn)制數(shù)的低5位和高8位。一、按鍵的抖動問題1.鍵盤作用于分類作用:實現(xiàn)人——機(jī)交互。分類:編碼鍵盤非編碼鍵盤:獨立式按鍵、行列式鍵盤2、鍵盤的抖動消抖動的方法:1)硬件:雙穩(wěn)態(tài)電路、單穩(wěn)態(tài)電路或濾波電路。2)軟件:軟件延時。二、獨立式鍵盤接口電路

獨立式按鍵就是每一個按鍵的狀態(tài)都用一位的I/O口去檢測,并且任一按鍵的狀態(tài)都不影響其它按鍵的工作狀態(tài)。鍵盤控制掃描方式:程序掃描方式;定時掃描方式;中斷掃描方式。

中斷掃描控制方式獨立式鍵盤接口電路(在LED數(shù)碼管動態(tài)掃描電路基礎(chǔ)上)

定義S1~S4四個按鍵的功能分別為:第一個數(shù)碼管上數(shù)據(jù)加1(0~9循環(huán))、第二個數(shù)碼管上的數(shù)據(jù)減1(0~9循環(huán))、4位數(shù)據(jù)左移一次、4位數(shù)據(jù)右移一次。三、行列式鍵盤接口電路1、接口電路又稱做矩陣式鍵盤接口2、工作原理(1)將行線作為輸出線,列線為輸入線,在所有行線輸出上0,讀列線。D7D6D5D4D3D2D1D0r7r6r5r4XXXX列線有效行線無效(2)將列線作為輸出線,行線為輸入線,在所有列線輸出上0,讀行線。D7D6D5D4D3D2D1D0XXXXr3r2r1r0列線無效行線

溫馨提示

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

評論

0/150

提交評論