




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
項目三交通燈系統(tǒng)設計3.1單片機的中斷系統(tǒng)3.2定時/計數(shù)器3.1單片機的中斷系統(tǒng)1、中斷的概念2、MCS-51中斷系統(tǒng)的結構3、中斷的控制4、單片機中斷處理過程5、中斷優(yōu)先級控制一、中斷的概念中斷的概念CPU在處理某一事件A時,發(fā)生了另一事件B請求CPU迅速去處理(中斷發(fā)生);CPU暫時中斷當前的工作,轉去處理事件B(中斷響應和中斷服務);待CPU將事件B處理完畢后,再回到原來事件A被中斷的地方繼續(xù)處理事件A(中斷返回),這一過程稱為中斷。3.1單片機的中斷系統(tǒng)MCS-51單片機的中斷系統(tǒng)結構執(zhí)行主程序主程序繼續(xù)執(zhí)行主程序斷點中斷請求中斷響應執(zhí)行中斷處理程序中斷返回3.1單片機的中斷系統(tǒng)引起CPU中斷的根源,稱為中斷源。中斷源向CPU提出的中斷請求。CPU暫時中斷原來的事務A,轉去處理事件B。對事件B處理完畢后,再回到原來被中斷的地方(即斷點),稱為中斷返回。實現(xiàn)上述中斷功能的部件稱為中斷系統(tǒng)(中斷機構)。3.1單片機的中斷系統(tǒng)中斷的優(yōu)點
隨著計算機技術的應用,人們發(fā)現(xiàn)中斷技術不僅解決了快速主機與慢速I/O設備的數(shù)據(jù)傳送問題,而且還具有如下優(yōu)點:
分時操作。CPU可以分時為多個I/O設備服務,提高了計算機的利用率;實時響應。CPU能夠及時處理應用系統(tǒng)的隨機事件,系統(tǒng)的實時性大大增強;可靠性高。CPU具有處理設備故障及掉電等突發(fā)性事件能力,從而使系統(tǒng)可靠性提高。3.1單片機的中斷系統(tǒng)二、MCS-51中斷系統(tǒng)的結構
80C51的中斷系統(tǒng)有5個中斷源(8052有6個),2個優(yōu)先級,可實現(xiàn)二級中斷嵌套
。3.1單片機的中斷系統(tǒng)3.1單片機的中斷系統(tǒng)EX0EAPX001ET0PT001EX1PX101ET1PT101ESPS01≥1RITISCONTCONIE0TF0IE1TF110101IT0IT1INT0INT1T0T1RXTXIEIP111111110硬件查詢自然優(yōu)先級自然優(yōu)先級中斷入口中斷入口高級低級中斷源中斷源11、(P3.2)可由IT0(TCON.0)選擇其為低電平有效還是下降沿有效。當CPU檢測到P3.2引腳上出現(xiàn)有效的中斷信號時,中斷標志IE0(TCON.1)置1,向CPU申請中斷。3.1單片機的中斷系統(tǒng)2、(P3.3)可由IT1(TCON.2)選擇其為低電平有效還是下降沿有效。當CPU檢測到P3.3引腳上出現(xiàn)有效的中斷信號時,中斷標志IE1(TCON.3)置1,向CPU申請中斷。3.1單片機的中斷系統(tǒng)三、中斷的控制1、TCON的中斷標志IT0(TCON.0),外部中斷0觸發(fā)方式控制位。當IT0=0時,為電平觸發(fā)方式。當IT0=1時,為邊沿觸發(fā)方式(下降沿有效)。IE0(TCON.1),外部中斷0中斷請求標志位。IT1(TCON.2),外部中斷1觸發(fā)方式控制位。IE1(TCON.3),外部中斷1中斷請求標志位。TF0(TCON.5),定時/計數(shù)器T0溢出中斷請求標志位。TF1(TCON.7),定時/計數(shù)器T1溢出中斷請求標志位。
2、中斷允許控制
CPU對中斷系統(tǒng)所有中斷以及某個中斷源的開放和屏蔽是由中斷允許寄存器IE控制的。EX0(IE.0),外部中斷0允許位;ET0(IE.1),定時/計數(shù)器T0中斷允許位;EX1(IE.2),外部中斷0允許位;ET1(IE.3),定時/計數(shù)器T1中斷允許位;ES(IE.4),串行口中斷允許位;EA(IE.7),CPU中斷允許(總允許)位。3.1單片機的中斷系統(tǒng)四、單片機中斷處理過程
1、中斷響應條件中斷源有中斷請求;此中斷源的中斷允許位為1;
CPU開中斷(即EA=1)。以上三條同時滿足時,CPU才有可能響應中斷。3.1單片機的中斷系統(tǒng)2、外部中斷編程:利用INT0作為外部中斷輸入線,每按一次開關K使P2口處的LED改變一下狀態(tài)(由全亮到全滅或由全滅到全亮)。3.1單片機的中斷系統(tǒng)#include<reg51.h>unsignedchara=0xff;main(){ EA=1; EX0=1; IT0=1;while(1){ P2=a;}}voidext0()interrupt0using1{ a=~a;}?unsignedchara=0xff;放在main中定義可以嗎?3.1單片機的中斷系統(tǒng)3.1單片機的中斷系統(tǒng)3、中斷函數(shù)的完整語法:
返回值函數(shù)名(【參數(shù)】)interruptnusingn
{中斷處理程序}中斷源
入口地址編號
外部中斷00003H0
定時/計數(shù)器0000BH1外部中斷10013H2定時/計數(shù)器1001BH3串行口中斷0023H4練習題:利用INT0作為外部中斷輸入線,每按一次開關K使P1口處的8個LED輪流點亮一次。3.1單片機的中斷系統(tǒng)3.1單片機的中斷系統(tǒng)五、中斷優(yōu)先級控制1、中斷優(yōu)先級寄存器
80C51單片機有兩個中斷優(yōu)先級,即可實現(xiàn)二級中斷服務嵌套。每個中斷源的中斷優(yōu)先級都是由中斷優(yōu)先級寄存器IP中的相應位的狀態(tài)來規(guī)定的
。PX0(IP.0),外部中斷0優(yōu)先級設定位;PT0(IP.1),定時/計數(shù)器T0優(yōu)先級設定位;PX1(IP.2),外部中斷0優(yōu)先級設定位;PT1(IP.3),定時/計數(shù)器T1優(yōu)先級設定位;PS
(IP.4),串行口優(yōu)先級設定位;PT2(IP.5),定時/計數(shù)器T2優(yōu)先級設定位。2、自然優(yōu)先級
同一優(yōu)先級中的中斷申請不止一個時,則有中斷優(yōu)先權排隊問題。同一優(yōu)先級的中斷優(yōu)先權排隊,由中斷系統(tǒng)硬件確定的自然優(yōu)先級形成,其排列如所示:3.1單片機的中斷系統(tǒng)3、80C51單片機的中斷優(yōu)先級有三條原則:CPU同時接收到幾個中斷時,首先響應優(yōu)先級別最高的中斷請求。正在進行的中斷過程不能被新的同級或低優(yōu)先級的中斷請求所中斷。正在進行的低優(yōu)先級中斷服務,能被高優(yōu)先級中斷請求所中斷。
為了實現(xiàn)上述后兩條原則,中斷系統(tǒng)內部設有兩個用戶不能尋址的優(yōu)先級狀態(tài)觸發(fā)器。其中一個置1,表示正在響應高優(yōu)先級的中斷,它將阻斷后來所有的中斷請求;另一個置1,表示正在響應低優(yōu)先級中斷,它將阻斷后來所有的低優(yōu)先級中斷請求。3.1單片機的中斷系統(tǒng)3.2定時器/計數(shù)器
1、定時/計數(shù)器的結構2、定時/計數(shù)器的工作原理3、定時/計數(shù)器的控制4、定時/計數(shù)器的工作方式5、定時器的初始化6、定時器應用實例
實現(xiàn)定時功能,比較方便的辦法是利用單片機內部的定時/計數(shù)器。也可以采用下面三種方法:軟件定時:軟件定時不占用硬件資源,但占用了CPU時間,降低了CPU的利用率。采用時基電路定時:例如采用555電路,外接必要的元器件(電阻和電容),即可構成硬件定時電路。但在硬件連接好以后,定時值與定時范圍不能由軟件進行控制和修改,即不可編程。采用可編程芯片定時:這種定時芯片的定時值及定時范圍很容易用軟件來確定和修改,此種芯片定時功能強,使用靈活。在單片機的定時/計數(shù)器不夠用時,可以考慮進行擴展。3.2定時器/計數(shù)器
一、定時/計數(shù)器的結構定時/計定時/計數(shù)器的結構數(shù)器的實質是加1計數(shù)器(16位),由高8位和低8位兩個寄存器組成。TMOD是定時/計數(shù)器的工作方式寄存器,確定工作方式和功能;TCON是控制寄存器,控制T0、T1的啟動和停止及設置溢出標志。
3.2定時器/計數(shù)器
二、定時/計數(shù)器的工作原理
加1計數(shù)器輸入的計數(shù)脈沖有兩個來源,一個是由系統(tǒng)的時鐘振蕩器輸出脈沖經12分頻后送來;一個是T0或T1引腳輸入的外部脈沖源。每來一個脈沖計數(shù)器加1,當加到計數(shù)器為全1時,再輸入一個脈沖就使計數(shù)器回零,且計數(shù)器的溢出使TCON中TF0或TF1置1,向CPU發(fā)出中斷請求(定時/計數(shù)器中斷允許時)。如果定時/計數(shù)器工作于定時模式,則表示定時時間已到;如果工作于計數(shù)模式,則表示計數(shù)值已滿。
可見,由溢出時計數(shù)器的值減去計數(shù)初值才是加1計數(shù)器的計數(shù)值。
3.2定時器/計數(shù)器
設置為定時器模式時,加1計數(shù)器是對內部機器周期計數(shù)(1個機器周期等于12個振蕩周期,即計數(shù)頻率為晶振頻率的1/12)。計數(shù)值N乘以機器周期Tcy就是定時時間t
。設置為計數(shù)器模式時,外部事件計數(shù)脈沖由T0或T1引腳輸入到計數(shù)器。在每個機器周期的S5P2期間采樣T0、T1引腳電平。當某周期采樣到一高電平輸入,而下一周期又采樣到一低電平時,則計數(shù)器加1,更新的計數(shù)值在下一個機器周期的S3P1期間裝入計數(shù)器。由于檢測一個從1到0的下降沿需要2個機器周期,因此要求被采樣的電平至少要維持一個機器周期。當晶振頻率為12MHz時,最高計數(shù)頻率不超過1/2MHz,即計數(shù)脈沖的周期要大于2ms。
3.2定時器/計數(shù)器
三、定時/計數(shù)器的控制80C51單片機定時/計數(shù)器的工作由兩個特殊功能寄存器控制。TMOD用于設置其工作方式;TCON用于控制其啟動和中斷申請。1、工作方式寄存器TMOD
工作方式寄存器TMOD用于設置定時/計數(shù)器的工作方式,低四位用于T0,高四位用于T1。其格式如下:3.2定時器/計數(shù)器
3.2定時器/計數(shù)器
GATE:門控位。GATE=0時,只要用軟件使TCON中的TR0或TR1為1,就可以啟動定時/計數(shù)器工作;GATA=1時,要用軟件使TR0或TR1為1,同時外部中斷引腳或也為高電平時,才能啟動定時/計數(shù)器工作。即此時定時器的啟動條件,加上了或引腳為高電平這一條件。
:定時/計數(shù)模式選擇位。=0為定時模式;=1為計數(shù)模式。M1M0:工作方式設置位。定時/計數(shù)器有四種工作方式,由M1M0進行設置。
2、控制寄存器TCON
TCON的低4位用于控制外部中斷,已在前面介紹。TCON的高4位用于控制定時/計數(shù)器的啟動和中斷申請。其格式如下:TF1(TCON.7):T1溢出中斷請求標志位。T1計數(shù)溢出時由硬件自動置TF1為1。CPU響應中斷后TF1由硬件自動清0。T1工作時,CPU可隨時查詢TF1的狀態(tài)。所以,TF1可用作查詢測試的標志。TF1也可以用軟件置1或清0,同硬件置1或清0的效果一樣。TR1(TCON.6):T1運行控制位。TR1置1時,T1開始工作;TR1置0時,T1停止工作。TR1由軟件置1或清0。所以,用軟件可控制定時/計數(shù)器的啟動與停止。TF0(TCON.5):T0溢出中斷請求標志位,其功能與TF1類同。TR0(TCON.4):T0運行控制位,其功能與TR1類同。3.2定時器/計數(shù)器
四、定時/計數(shù)器的工作方式1、方式0
方式0為13位計數(shù),由TL0的低5位(高3位未用)和TH0的8位組成。TL0的低5位溢出時向TH0進位,TH0溢出時,置位TCON中的TF0標志,向CPU發(fā)出中斷請求。3.2定時器/計數(shù)器
3.2定時器/計數(shù)器
定時器模式時有:N=t/Tcy計數(shù)初值計算的公式為:定時器的初值還可以采用計數(shù)個數(shù)直接取補法獲得。計數(shù)模式時,計數(shù)脈沖是T0引腳上的外部脈沖。門控位GATE具有特殊的作用。當GATE=0時,經反相后使或門輸出為1,此時僅由TR0控制與門的開啟,與門輸出1時,控制開關接通,計數(shù)開始;當GATE=1時,由外中斷引腳信號控制或門的輸出,此時控制與門的開啟由外中斷引腳信號和TR0共同控制。當TR0=1時,外中斷引腳信號引腳的高電平啟動計數(shù),外中斷引腳信號引腳的低電平停止計數(shù)。這種方式常用來測量外中斷引腳上正脈沖的寬度。
3.2定時器/計數(shù)器
2、方式1方式1的計數(shù)位數(shù)是16位,由TL0作為低8位、TH0作為高8位,組成了16位加1計數(shù)器。計數(shù)個數(shù)與計數(shù)初值的關系為:
3.2定時器/計數(shù)器
3、方式2方式2為自動重裝初值的8位計數(shù)方式。
工作方式2特別適合于用作較精確的脈沖信號發(fā)生器。
計數(shù)個數(shù)與計數(shù)初值的關系為:
3.2定時器/計數(shù)器
4、方式3方式3只適用于定時/計數(shù)器T0,定時器T1處于方式3時相當于TR1=0,停止計數(shù)。
工作方式3將T0分成為兩個獨立的8位計數(shù)器TL0和TH0
。
5、工作原理D8F0D8F2FFFFD8F10000113.2定時器/計數(shù)器
五、定時器的初始化1.初始化步驟程序應完成如下工作:對TMOD賦值,以確定T0和T1的工作方式。計算初值,并將其寫入TH0、TL0或TH1、TL1。中斷方式時,則對IE賦值,開放中斷。使TR0或TR1置位,啟動定時器。3.2定時器/計數(shù)器
例:T0工作于:定時方式1,定時時間T=10ms,系統(tǒng)主頻f=12MHZ,允許中斷,對T0進行初始化編程。1、求T0的方式控制字TMOD:0100TMOD=0X01;××××0000
T1T03.2定時器/計數(shù)器
2、計算計數(shù)初值Count:TH0=0XD8;TL0=0XF0;機器周期=(1/fosc)×12Count=2^n–
定時時間/機器周期=(1/12MHZ)×12=1us=
2^16-10ms/1us=65536-10000=55536=D8F0HD8HF0H
8位8位TH0TL0TH0=(65536-10000)/256;TL0=(65536-10000)%256;
3、開中斷
EA=1;ET0=1;4、啟動定時器
TR0=1;
初始化程序:TMOD=0X01;TH0=0XD8;TL0=0XF0;EA=1;ET0=1;TR0=1;3.2定時器/計數(shù)器
2、定時器的應用舉例例:設單片機晶振頻率f=6MHZ,使用定時器T1以方式1產生周期為500uS的等寬正方形脈沖,并由P1.0腳輸出。①確定TMOD寄存器的內容定時器/計數(shù)器1的工作方式為方式1,從而M1M0=01;實現(xiàn)定時功能,從而C/T=0;設通過給TR1置位來啟動定時器工作,從而GATE=0;另外,定時器/計數(shù)器0不用,從而低四位全為0;所以(TMOD)=10H。②計算計數(shù)初值要產生500us的等寬正方波脈沖,只需在P1.0端以250us為周期交替輸出高低電平即可實現(xiàn),從而定時時間為250us,f=6MHz。則機器周期=2us,利用公式:定時時間=(65536-計數(shù)初值)×機器周期,可得250=(65536-COUNT)×2,求得:計數(shù)初值COUNT=8067=FF83H,這樣(TH1)=FFH,(TL1)=83H。3.2定時器/計數(shù)器
中斷方式:#include<at89x51.h>voidmain(){TMOD=0x10;TH1=(65536-125)/256;TL1=(65536-125)%256;ET1=1;EA=1;TR1=1;while(1);}3.2定時器/計數(shù)器
voidtimer1_int()interrupt3using1{ P1_0=~P1_0;
TH1=(65536-125)/256;TL1=(65536-125)%256;}3.2定時器/計數(shù)器
3.2定時器/計數(shù)器
查詢方式voidmain(){TMOD=0x10;TH1=0xFF;TL1=0x83;TR1=1;While(1){While(TF1==1){ P10=~P10; TR1=0; TH1=0x1F;TL1=0x83;TF1=0;TR1=1;}}}3.2定時器/計數(shù)器
例:設單片機晶振頻率f=12MHZ,在P1.0端接一個發(fā)光二極管,利用定時T0工作在方式1,使LED亮1s、滅1s,閃爍。(中斷)3、長時間延時3.2定時器/計數(shù)器
#includeat89x51.h>SbitP10=P1^0;unsignedcharnum=0;main(){TMOD=0x10;TH1=(65536-50000)%256;TL1=(65536-50000)/256;ET1=1;EA=1;TR1=1;While(1){if(num==20){num=0;P10=~P10;}}}3.2定時器/計數(shù)器
voidtimer1_int()interrupt3{ num++;TH1=(65536-50000)/256;TL1=(65536-50000)%256;}3.2定時器/計數(shù)器
編程題:設單片機晶振頻率f=12MHZ,在P1口接8個發(fā)光二極管,利用定時T0工作在方式1,使8個LED每隔1秒輪流左移點亮,并循環(huán)。(中斷)3.2定時器/計數(shù)器
例:要求
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030住宅煙霧探測器行業(yè)市場現(xiàn)狀供需分析及重點企業(yè)投資評估規(guī)劃分析研究報告
- 2025-2030中老年保健品市場發(fā)展分析及行業(yè)投資戰(zhàn)略研究報告
- 村居工會活動方案
- 村里太極活動方案
- 服裝開店活動方案
- 智慧家居創(chuàng)享活動方案
- 景區(qū)打造活動方案
- 服裝公司春節(jié)vip活動方案
- 春節(jié)社區(qū)繪畫活動方案
- 智慧父母沙龍活動方案
- 腫瘤隨訪登記培訓
- 勞動仲裁內部培訓
- 2025年云南普洱市墨江天下一雙文旅體育集團有限公司招聘筆試參考題庫附帶答案詳解
- 機械原理課程設計-沖壓機構及送料機構設計說明書
- 品牌中國產業(yè)聯(lián)盟簡介ppt課件
- 肝素鈉生產工藝綜述
- 實驗一機構運動簡圖繪制與分析
- 人民網刪除稿件(帖文)申請登記表
- 服裝校服投標書模板(精編版)
- 機械制圖基礎知識完整版
- 電動汽車銷售部崗位說明書
評論
0/150
提交評論