版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
5.180C51單片機的中斷系統(tǒng)
5.280C51中斷處理過程
5.380C51的定時/計數(shù)器第五章80C51的中斷系統(tǒng)及定時/計數(shù)器
5.1.180C51中斷系統(tǒng)的結構一、中斷的概念(1)中斷:CPU正在執(zhí)行事件A的過程中,發(fā)生了事件B請求CPU去處理(中斷發(fā)生);CPU暫時中斷當前工作,轉去處理事件B(中斷響應和中斷服務);待CPU將事件B處理完畢后,再回到原來事件A被中斷的地方繼續(xù)處理事件A(中斷返回),這一處理過程稱為中斷。(2)中斷源:引起CPU中斷的根源,稱為中斷源。(3)中斷請求:中斷源向CPU提出的處理請求,稱為中斷請求或中斷申請。(4)中斷系統(tǒng):
實現(xiàn)中斷過程的軟、硬件系統(tǒng)。5.180C51單片機的中斷系統(tǒng)5.180C51單片機的中斷系統(tǒng)中斷方式也是一種條件傳送。CPU可以與外設同時工作,并執(zhí)行與外設無關的操作,一旦外設需要服務,就主動向CPU提出申請,CPU暫?,F(xiàn)在的操作去執(zhí)行對外設的輸入輸出程序,執(zhí)行完畢又返回繼續(xù)執(zhí)行現(xiàn)在的操作。應用范圍較廣。中斷方式中斷的優(yōu)點:●分時操作?!駥崟r響應?!窨煽啃愿?。二、80C51中斷系統(tǒng)的結構(5個中斷源、2個優(yōu)先級)中斷優(yōu)先級:當多個中斷源同時申請中斷時,為了使CPU能夠按照用戶的規(guī)定先處理最緊急的,然后再處理其他事件,中斷系統(tǒng)設置有中斷優(yōu)先權排隊電路,通過用戶的設置,排在前面的中斷源稱為高級中斷,排在后面的稱為低級中斷。
中斷嵌套:當CPU響應某一中斷源請求而進入中斷處理時,若更高級別的中斷源發(fā)出申請,則CPU暫停現(xiàn)行的中斷服務程序,去響應優(yōu)先級更高的中斷,待更高級別的中斷處理完畢后,再返回低級中斷服務程序,繼續(xù)原先的處理,這個過程稱為中斷嵌套。
5.180C51單片機的中斷系統(tǒng)5.1.280C51的中斷源一、中斷源(5個)
5.180C51單片機的中斷系統(tǒng)中斷源有效的申請信號設置的標志位外部中斷0(P3.2)IT0位(TCON.0)=0時,為低電平申請中斷;IT0位=1時,有1到0的負跳變信號申請中斷。IE0(TCON.1)=1外部中斷1(P3.3)IT1位(TCON.2)=0時,為低電平申請中斷;IT1位=1時,有1到0的負跳變信號申請中斷。IE1(TCON.3)=1TF0(TCON.5)片內定時/計數(shù)器T0溢出中斷請求標志。當T0計滿溢出時申請中斷。TF0=1TF1(TCON.7)片內定時/計數(shù)器T1溢出中斷請求標志。當T1計滿溢出時申請中斷。TF1=1RI(SCON.0)或T1(SCON.1)串行接口中斷請求標志當發(fā)送完一幀數(shù)據(jù)時申請中斷TI=1當接收完一幀數(shù)據(jù)時申請中斷RI=189S51中斷系統(tǒng)有5個中斷源,2級中斷優(yōu)先級。結構框圖如圖所示。5.180C51單片機的中斷系統(tǒng)二、中斷請求標志(TCON和SCON屬于特殊功能寄存器)TCON、SCON的中斷標志(可進行位尋址)
5.180C51單片機的中斷系統(tǒng)5.1.380C51中斷的控制一、中斷允許控制(中斷允許寄存器IE)
5.180C51單片機的中斷系統(tǒng)二、中斷優(yōu)先級控制中斷優(yōu)先級控制寄存器IP:80C51有兩個中斷優(yōu)先級,每一個中斷源都可以由軟件設置為高級中斷或低級中斷,由中斷優(yōu)先級控制寄存器IP控制。某位設定為“1”時,此中斷為高級中斷,清“0”時設置為低級中斷。5.180C51單片機的中斷系統(tǒng)表5.1各中斷源響應優(yōu)先級及中斷服務程序入口表5.180C51單片機的中斷系統(tǒng)中斷源中斷標志中斷服務程序入口優(yōu)先級順序外部中斷0()IE00003H高定時/計數(shù)器0(T0)TF0000BH外部中斷1()IE10013H定時/計數(shù)器1(T1)TF1001BH串行接口RI或TI0023H80C51單片機的中斷優(yōu)先級有三條原則:1.CPU同時接受到幾個中斷時,首先響應優(yōu)先級別最高的中斷請求。2.正在進行的中斷過程不能被新的同級或低優(yōu)先級中斷請求所中斷。3.正在進行的低優(yōu)先級中斷服務,能被高優(yōu)先級中斷請求所中斷。80C51中斷的處理過程:
5.280C51單片機中斷處理過程5.2.1中斷響應條件和時間一、中斷響應條件CPU響應中斷的條件是:第一、中斷源有中斷請求;第二、此中斷源的中斷允許位為1;第三、CPU中斷開放,即EA=1;第四、無同級或更高優(yōu)先級中斷正在被服務;第五、當前查詢的機器周期不是所執(zhí)行指令的最后一個機器周期。第六、若正在執(zhí)行的指令為RET、RETI或訪問IE、IP寄存器指令,必須執(zhí)行完該指令和緊接著的下一條指令后才能響應中斷。5.280C51單片機中斷處理過程注:上述只要有一個條件不滿足,就不會立即響應中斷。二、中斷響應時間如果中斷響應過程受阻,就要增加等待時間。若同級或高級中斷正在執(zhí)行,所需要的附加等待時間取決于正在執(zhí)行的中斷服務程序的長短,等待的時間不確定;若沒有同級或高級中斷正在進行,所需要的附加等待時間在3~5個機器周期之間。這是因為:
5.280C51單片機中斷處理過程80C51的中斷響應時間(從標志置1到進入相應的中斷服務),至少需要3個完整的時間周期。第一、如果查詢周期不是正在執(zhí)行的指令的最后的機器周期,附加等待時間不會超過3個機器周期(因執(zhí)行時間最長的指令MUL和DIV也只有四個機器周期)第二、如果查詢周期恰逢RET、RETI或訪問IE、IP指令,而這類指令之后又跟著MUL或DIV指令,則由此引起的附加等待時間不會超過5個機器周期(1個機器周期完成正在執(zhí)行的指令再加上MUL或DIV的4個機器周期)
5.280C51單片機中斷處理過程注意:對于沒有嵌套的單機中斷,響應時間位3~8個機器周期。5.2.2中斷響應過程
CPU響應中斷的過程如下:
1.將相應的優(yōu)先級狀態(tài)觸發(fā)器置1(以阻斷后來的同級或低級的中斷請求);
2.執(zhí)行一條硬件LCALL指令,即把程序計數(shù)器PC的內容壓入堆棧保存,再將相應的中斷服務程序的入口地址送入PC。
3.執(zhí)行中斷服務程序。5.280C51單片機中斷處理過程編寫中斷服務程序時應注意:(1)80C51單片機的兩個相鄰中斷源中斷服務程序入口地址相距只有8個單元,通常是在相應的中斷服務程序入口地址單元放一條長跳轉指令LJMP,使中斷程序放在64KB程序存儲器的任何地方。若在2KB范圍內轉移,則可用AJMP指令。(2)硬件LCALL指令,只能將PC內的斷點地址壓入堆棧保護,而對其他寄存器(如PSW、A等)的內容并不作保護處理。在中斷服務程序中,應用軟件保護現(xiàn)場,在中斷服務后,中斷返回恢復現(xiàn)場。5.2.3中斷返回中斷返回指令RETI的具體功能:(1)將中斷響應時壓入堆棧保存的斷點地址從棧頂彈出送回PC,CPU從原來中斷的地方繼續(xù)執(zhí)行程序。(2)將相應中斷優(yōu)先級狀態(tài)觸發(fā)器清0,通知中斷系統(tǒng),中斷服務已執(zhí)行完畢。5.280C51單片機中斷處理過程注意:1.不能用RET指令代替RETI指令。2.在中斷程序中PUSH和POP指令必須成對使用。5.280C51單片機中斷處理過程5.280C51單片機中斷處理過程5.280C51單片機中斷處理過程4.2定時器/計數(shù)器
89S51單片機內部集成有兩個16位定時器/計數(shù)器T0、T1。一、定時器/計數(shù)器T0、T1的結構1.定時器的總體結構
定時器/計數(shù)器T0、T1的結構如圖所示。特殊功能寄存器TH0,TLO.TH1,TL12.定時器方式寄存器TMOD
特殊功能寄存器TMOD用于控制定時器/計數(shù)器的啟動方式、計數(shù)脈沖源的選擇、工作方式的選擇。其各位含義如圖所示。3.定時器控制寄存器TCON
各位含義如圖所示。
二、定時器/計數(shù)器T0、T1的工作方式
定時器/計數(shù)器的基本工作過程如圖所示。1.方式0
T0、T1定時器/計數(shù)器的方式0相同,為13位計數(shù)器結構,方式0的原理圖如圖所示。TH0最高位進位(即溢出)時,設置TF0=1,申請中斷。響應中斷后,系統(tǒng)自動對TF0復位。當C/=0,為定時功能;當C/=1,為計數(shù)功能。
這三者為啟動控制
定時時間t與計數(shù)器的位數(shù)、設置的計數(shù)初值(又稱時間常數(shù))、時鐘頻率有關。計算公式如下:
t=(計數(shù)最大值―x初值)×機器周期=(213―x初值)×12/fosc
其中:x初值:時間常數(shù);fosc:時鐘頻率。若fosc=12MHz,則方式0的最大定時時間T=(213―0)×12/fosc=8.192(ms)例1若設置定時器T1工作在方式0、定時功能,定時時間t=5ms,啟動由TR1控制。寫出初始化程序。解:方式0:設置M1、M0=00;定時功能:設置C/=0;
TR1啟動:設置GATE=0;定時時間t=5ms:由上述公式計算x初=3192=110001111000B,將x初值的低5位(11000B)送給TL1的低5位,TL1的高3位補0,將x初值的其余高位(1100011B)送給TH1,即設置TH1=63H,TL1=18H。初始化程序如下:START:MOVTMOD,#00H ;設置T1方式0,定時功能
MOVTH1,#63H ;送時間常數(shù)
MOVTL1,#18H SETBTR1 ;啟動T1工作2.方式1
T0、T1定時器/計數(shù)器的方式1相同,為16位計數(shù)器結構。方式1的原理圖如下圖所示。
方式1與方式0的唯一區(qū)別在于計數(shù)位數(shù)不同,其它工作過程相同。
方式1的定時時間計算公式如下:t=(計數(shù)最大值―x初值)×機器周期
=(
―x初值)×12/fosc若fosc=12MHz,則方式1的最大定時時間T=(―0)×12/fosc=65.536(ms)例2若設置定時器T0工作在方式1、計數(shù)功能,計數(shù)數(shù)目為10000次,啟動由引腳控制。寫出初始化程序。解:方式1:設置M1、M0=01;計數(shù)功能:設置C/=1;控制啟動:設置GATE=1;計數(shù)10000次:x初值=216―10000=55536=0D8F0H,將x初值的低8位送給TL0,將x初值的其余高位送給TH0,即設置TH0=0D8H,TL0=0F0H。初始化程序如下:START:MOVTMOD,#0DH;設置T0方式1,計數(shù)功能
MOVTH0,#0D8H;送計數(shù)初值
MOVTL0,#0F0H SETBTR0 ;置TR0=1,T0啟動由引腳控制3.方式2
T0、T1定時器/計數(shù)器的方式2相同,為可重栽時間常數(shù)的8位計數(shù)器結構。方式2的原理圖如圖所示。TH0作為重載時間常數(shù)寄存器,當TL0計滿溢出后,設置TF0=1申請中斷,同時將TH0中的數(shù)據(jù)自動裝載到TL0中重新工作。定時時間計算公式如下:t=(計數(shù)最大值―x初值)×機器周期=(―x初值)×12/fosc若fosc=12MHz,則方式2的最大定時時間T=(―0)×12/fosc=0.256(ms)4.方式3
T1設置為方式3時,停止工作;T0設置為方式3時,分成兩個獨立的8位定時器/計數(shù)器。T0方式3原理圖如圖所示。
任務演示任務T5—生產線零件打包機控制。見動畫十三——生產線零件打包機控制課堂實踐利用T0定時功能,在P1.0引腳上產生周期為100ms的方波信號,設fosc=12MHz。見動畫十四——方波發(fā)生器4.3串行口
一、串行通信的基本概念并行通信單位信息(通常為一個字節(jié))的各位數(shù)據(jù)同時傳送串行通信分類同步通信發(fā)送和接收同步進行,從而實現(xiàn)數(shù)據(jù)的不間斷傳送異步通信發(fā)送與接收沒有用同步時鐘同步,傳送過程中數(shù)據(jù)之間有間隔傳送方式單工半雙工全雙工2.波特率的概念
每秒傳送數(shù)據(jù)的位數(shù)稱為波特率(BaudRate),單位為波特,即位/秒(b/s)。波特率的倒數(shù)稱為位傳送時間,用Td表示,單位為秒(s)。例如:傳送速率每秒10幀數(shù)據(jù),每一幀數(shù)據(jù)11位,則傳送波特率為
10幀/秒×11位/幀=110b/s位傳送時間Td=9.1ms。二、串行口的結構1.串口的總體結構通過設置特殊功能寄存器SCON、PCON來控制串行口的工作方式與波特率。
2.串口控制寄存器SCON
數(shù)據(jù)格式如下:
SM0、SM1:串行口工作方式選擇位??梢栽O置4種工作方式。9FH9EH9DH9CH9BH9AH99H98H98HSM0SM1SM2RENTB8RB8TIRISM0SM1工作方式功能說明波特率00方式08位移位寄存器方式fosc/1201方式18位異步通信方式T1溢出率的16或32分頻10方式29位異步通信方式fosc的32或64分頻11方式39位異步通信方式T1溢出率的16或32分頻串行接收允許位。由軟件設置1允許接收,設為0禁止接收在9位異步通信方式下,由于緩沖器只有8位,故用TB8作為發(fā)送的第9位,RB8作為接收的第9位。發(fā)送中斷標志與接收中斷標志。SM2:允許方式2、3多機通信控制位。
串口工作方式SM2位功能說明方式0SM2=0此位無意義,設為0方式1SM2=1只有接收到有效的停止位,才將數(shù)據(jù)送入接收緩沖器保存,并置RI=1,否則數(shù)據(jù)丟失,不置位RISM2=0無論是否接收到有效的停止位,都將數(shù)據(jù)保存,并置位RI方式2、3SM2=1只有接收到第9位為1,才將數(shù)據(jù)送入接收緩沖器保存,并置RI=1,否則數(shù)據(jù)丟失,不置位RISM2=0無論是否接收到第9位為1,都將數(shù)據(jù)保存,并置位RI3.電源控制寄存器PCON
用來控制串行口的波特率倍增,以及在CHMOS系列單片機中實現(xiàn)電源控制,其格式如下:87HSMODPDIDL波特率倍增位。當SMOD=1時,使串行口波特率加倍。三、串行口方式0
1.方式0的工作過程
(1)發(fā)送過程①CPU將數(shù)據(jù)送入發(fā)送緩沖器SBUF后,自動啟動串口發(fā)送。②8位數(shù)據(jù)以固定的波特率(fosc/12),低位在前,從RXD引腳串行輸出,TXD引腳發(fā)送移位時鐘信號(頻率為fosc/12),每個移位時鐘對應一個輸出的數(shù)據(jù)位。③
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版服務外包合同協(xié)議書范本
- 2025年度化學原料藥生產許可證轉讓與許可合同9篇
- 電子商務平臺開發(fā)投資協(xié)議
- 2024水果的購銷合同范本
- 二零二五年度新能源發(fā)電項目承包經(jīng)營權抵押合同3篇
- 網(wǎng)格服務發(fā)現(xiàn)與路由-洞察分析
- 2025年度航道整治土石方工程承包合同標準協(xié)議書2篇
- 2024版樣板間裝修合同樣本
- 現(xiàn)代雕塑材料探索-洞察分析
- 新型煙草制品技術創(chuàng)新與應用-洞察分析
- 2025年首都機場集團招聘筆試參考題庫含答案解析
- 期末測試卷-2024-2025學年語文四年級上冊統(tǒng)編版
- 安徽省蕪湖市2023-2024學年高一上學期期末考試 數(shù)學 含解析
- 收割機轉讓協(xié)議
- 中學歷史教育中的德育狀況調查問卷
- 煤礦煤業(yè)掘進工作面班組安全確認工作記錄表 模板
- 第8期監(jiān)理月報(江蘇版)
- 建筑工程質量管理體系文件
- 乙丙橡膠電力電纜絕緣一步法硅烷交聯(lián)工藝
- 中止施工安全監(jiān)督申請書(范例)
- 世界各國標準鋼號對照表
評論
0/150
提交評論