第六章 輸入輸出及中斷_第1頁
第六章 輸入輸出及中斷_第2頁
第六章 輸入輸出及中斷_第3頁
第六章 輸入輸出及中斷_第4頁
第六章 輸入輸出及中斷_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、華中科技大學(xué)電氣與電子工程學(xué)院2015年秋季學(xué)期1 6.1 輸入/輸出與接口技術(shù)概述 6.2 CPU與外設(shè)之間交換信息的控制方式 6.3 中斷技術(shù)概述 6.4 51單片機(jī)的中斷系統(tǒng)及其應(yīng)用2 6.1 輸入/輸出與接口技術(shù)概述 6.2 CPU與外設(shè)之間交換信息的控制方式 6.3 中斷技術(shù)概述 6.4 51單片機(jī)的中斷系統(tǒng)及其應(yīng)用3 I/O接口是CPU和外圍設(shè)備(簡稱為外設(shè))之間交換信息的連接部件 。 I/O接口的功能 數(shù)據(jù)緩沖和鎖存 信息轉(zhuǎn)換 通信聯(lián)絡(luò) I/O接口是CPU和外圍設(shè)備(簡稱為外設(shè))之間交換信息的連接部件 ,其硬件部分稱為接口電路。 接口電路中已編址并能進(jìn)行讀寫操作的寄存器稱為端口(

2、port)。 (1)I/O端口與存儲器統(tǒng)一編址 (2)I/O端口獨(dú)立編址(端口映射編址) 6.1 輸入/輸出與接口技術(shù)概述 6.2 CPU與外設(shè)之間交換信息的控制方式 6.3 中斷技術(shù)概述 6.4 51單片機(jī)的中斷系統(tǒng)及其應(yīng)用7 從信息傳送的控方式考慮,單片機(jī)與外設(shè)之間的信息傳送方式可分為三種,即: 程序控制傳送方式 無條件傳送 有條件傳送 中斷傳送方式 DMA傳送方式 6.1 輸入/輸出與接口技術(shù)概述 6.2 CPU與外設(shè)之間交換信息的控制方式 6.3 中斷技術(shù)概述 6.4 51單片機(jī)的中斷系統(tǒng)及其應(yīng)用9一般情況下,程序是順序執(zhí)行的,但是在程序運(yùn)行過程中,一旦出現(xiàn)意外事件和特殊請求,計(jì)算機(jī)就

3、應(yīng)盡快在適當(dāng)?shù)臅r(shí)候暫時(shí)停止現(xiàn)行程序的執(zhí)行,為意外事件和特殊請求服務(wù)。通常把計(jì)算機(jī)停止現(xiàn)行程序的運(yùn)行而為意外事件和特殊請求服務(wù)的過程稱之為中斷,為意外事件和特殊請求服務(wù)稱為中斷服務(wù)或者中斷處理。中斷源在中斷系統(tǒng)中,將引起中斷請求的設(shè)備或事件的來源,般統(tǒng)稱為中斷源。常見中斷源: 1輸入、輸出設(shè)備中斷源 一般計(jì)算機(jī)的輸入、輸出設(shè)備,如鍵盤、磁盤驅(qū)動器、打印機(jī)等,可通過接口電路向CPU申請中斷。 2故障源 故障源是產(chǎn)生故障信息的來源。例如:CPU內(nèi)部故障源,如除法中除數(shù)為零時(shí)的情況;外部故障源,如電源掉電情況。在電源掉電時(shí)可以接入備用的電池供電,以保存存儲器中的信息。當(dāng)電壓因掉電降到定值時(shí),就發(fā)出中斷

4、申請,由計(jì)算機(jī)的中斷系統(tǒng)完成替換備用電源的控制。 3實(shí)時(shí)中斷源 在實(shí)時(shí)控制中,常常將被控參數(shù)、信息作為實(shí)時(shí)中斷源。例如,電壓、電流、溫度等超越上限或下限時(shí),以及繼電器、開關(guān)閉合斷開時(shí),都可以作為中斷源申請中斷。 4定時(shí)計(jì)數(shù)脈沖中斷源 內(nèi)部定時(shí)計(jì)數(shù)中斷是由單片機(jī)內(nèi)部的定時(shí)器計(jì)數(shù)器溢出時(shí)自動產(chǎn)生的;外部定時(shí)/計(jì)數(shù)中斷是由外部定時(shí)脈沖通過CPU的中斷請求輸入線或定時(shí)器計(jì)數(shù)器的輸入線引起的。 中斷請求是否一定被CPU響應(yīng)? 可屏蔽中斷與不可屏蔽中斷 不同重要程度的中斷源如何處理? 中斷優(yōu)先級與中斷嵌套 計(jì)算機(jī)怎樣找到中斷服務(wù)程序并執(zhí)行 中斷矢量:存放中斷服務(wù)程序入口的存儲單元的地址。CPU響應(yīng)中斷時(shí),

5、硬件電路自動生成中斷矢量,從而找到中斷服務(wù)程序入口。 6.1 輸入/輸出與接口技術(shù)概述 6.2 CPU與外設(shè)之間交換信息的控制方式 6.3 中斷技術(shù)概述 6.4 51單片機(jī)的中斷系統(tǒng)及其應(yīng)用15 MCS-51單片機(jī)有5個(gè)中斷源,可提供兩個(gè)中斷優(yōu)先級,即可實(shí)現(xiàn)二級中斷嵌套 MCS-51與中斷有關(guān)的特殊功能寄存器有4個(gè),分別為中斷源寄存器(即專用寄存器TCON和SCON的相關(guān)位)、中斷允許控制寄存器IE和中斷優(yōu)先級控制寄存器IP。 定時(shí)器/計(jì)數(shù)器1定時(shí)器/計(jì)數(shù)器0T1RXDTXDINT1T0INT00ET0中斷請求中斷優(yōu)先級PT1PX1SCONTF1R1T1串行口10IT1IE1EAESET1PS

6、010EX1101中斷優(yōu)先級低優(yōu)先IPPT0PX0TCON01TF0IT0IE0IEEX0011中斷入口地址高優(yōu)先 MCS-51的中斷系統(tǒng)結(jié)構(gòu)框圖的中斷系統(tǒng)結(jié)構(gòu)框圖 MCS-51的中斷源可分為三類:外部中斷、定時(shí)中斷和串行口中斷。 1外部中斷類 外部中斷是由外部原因引起的,即外部中斷0 (INT0)和外部中斷1 (INT1): INT0外部中斷0請求信號,由P3.2引腳輸入。由IT0 (TCON0) 決定中斷請求信號是低電平有效還是下降沿有效。一旦輸入信號有效,即向CPU申請中斷,并且使IE01。 INT1外部中斷1請求信號,由P3.3引腳輸入。由IT1 (TCON.2) 決定中斷請求信號是低

7、電平有效還是下降沿有效。一旦輸入信號有效,即向CPU申請中斷,并且使IE11。 定時(shí)中斷是為滿足定時(shí)或計(jì)數(shù)溢出處理的需要而設(shè)置的,當(dāng)定時(shí)器計(jì)數(shù)器中的計(jì)數(shù)結(jié)構(gòu)發(fā)生計(jì)數(shù)溢出時(shí),即表明定時(shí)時(shí)間到或計(jì)數(shù)值已滿,這時(shí)就以計(jì)數(shù)溢出信號作為中斷請求,去置位一個(gè)溢出標(biāo)志位,這種中斷請求是在單片機(jī)芯片內(nèi)部發(fā)生的,無需在芯片上設(shè)置引入端,但在計(jì)數(shù)方式時(shí),中斷源可以由單片機(jī)芯片外部引入。 TF0一定時(shí)器T0溢出中斷請求。當(dāng)定時(shí)器T0產(chǎn)生溢出時(shí),其中斷請求標(biāo)志TF01,請求中斷處理。 TF1定時(shí)器T1溢出中斷請求。當(dāng)定時(shí)器T1產(chǎn)生溢出時(shí),其中斷請求標(biāo)志TF11,請求中斷處理。 串行口中斷是為串行數(shù)據(jù)的傳送需要而設(shè)置的

8、。 RI或TI串行中斷請求。當(dāng)接收或發(fā)送完一串行幀數(shù)據(jù)時(shí),使內(nèi)部串行口中斷請求標(biāo)志RI或TI1,并請求中斷。 各中斷源對應(yīng)的中斷服務(wù)程序入口地址: 中斷源 入口地址 外部中斷0 0003H 定時(shí)器T0中斷 000BH 外部中斷1 0013 定時(shí)器T1中斷 001BH 串行口中斷 0023HTFl TF0 IE1 IT1 IE0 IT0 (88H)MCS-51中斷請求中斷請求 TF0T0溢出中斷標(biāo)志。其操作功能類似于TF1。 IE1INT1外部中斷1標(biāo)志。IE11表明外部中斷1向CPU申請中斷。IT1外部中斷1觸發(fā)方式控制位。 (1)ITl0,外部中斷1為電平觸發(fā)方式,低電平有效。 (2)ITl

9、1,外部中斷1控制為邊沿(先高后低的負(fù)跳變)觸發(fā)方式。 IE0INT0外部中斷0標(biāo)志。其操作功能與IE1類同。 IT0外部中斷0觸發(fā)方式控制位。其操作功能與IT1類同。 SCON是串行口控制寄存器,其低2位TI和RI鎖存串口的發(fā)送中斷和接收中斷標(biāo)志。其格式和各位含義如下: SCON 99H 98H TI串行發(fā)送中斷標(biāo)志。CPU將一個(gè)字節(jié)數(shù)據(jù)寫入發(fā)送緩沖器SBUF后啟動發(fā)送,每發(fā)送完一個(gè)串行幀,硬件置位TI。TI標(biāo)志由軟件清除。 RI串行接收中斷標(biāo)志。在串行口允許接收時(shí),每接收完一個(gè)串行幀,硬件置位RI。RI標(biāo)志由軟件清除。 MCS51系統(tǒng)復(fù)位后,TCON和SCON中各位均被清“0”。 (98H

10、)SMOD TIRI 中斷允許寄存器IE格式和各位含義如下: IE AFH ACH ABH AAH A9H A8HEACPU中斷總允許位。EA1,CPU開放中斷,每個(gè)中斷源是被允許還是被禁止,分別由各自的允許位確定;EA0,CPU屏蔽所有的中斷請求,稱關(guān)中斷。 ES串行口中斷允許位。ES1,允許串行口中斷;ES0,禁止串行口中斷 ET1一T1中斷允許位。ET11,允許T1中斷;ET10,禁止T1中斷。 EX1外部中斷l(xiāng)允許位。EX11,允許外部中斷1中斷;EXl0,禁止外部中斷1中斷。 ET0一T0中斷允許位。ET0l,允許T0中斷;ET00,禁止T0中斷。 EX0外部中斷0允許位。EX01,

11、允許外部中斷0中斷;EX00,禁止外部中斷0中斷。MCS5l系統(tǒng)復(fù)位后,IE中各中斷允許位均被清“0”,即禁止所有中斷。EA ESET1EX1ET0EX0(A8H) 中斷優(yōu)先級系統(tǒng)設(shè)計(jì)人員給每個(gè)中斷源,事先安排一個(gè)中斷響應(yīng)的優(yōu)先順序。然后按照輕重緩急的次序響應(yīng)中斷。中斷源的這種優(yōu)先順序常被稱為中斷優(yōu)先權(quán)級別,或簡稱中斷優(yōu)先級。 專用寄存器IP統(tǒng)一管理中斷優(yōu)先級。它具有兩個(gè)中斷優(yōu)先級,由軟件設(shè)置每個(gè)中斷源為高優(yōu)先級中斷或低優(yōu)先級中斷,并可實(shí)現(xiàn)兩級中斷嵌套。 高優(yōu)先級中斷源可以中斷正在執(zhí)行的低優(yōu)先級中斷服務(wù)程序,除非在執(zhí)行低優(yōu)先級中斷服務(wù)程序時(shí)設(shè)置了CPU關(guān)中斷或禁止某些高優(yōu)先級中斷源的中斷。同級

12、或低優(yōu)先級的中斷源不能中斷正在執(zhí)行的中斷服務(wù)程序。 專用寄存器IP為中斷優(yōu)先級寄存器,其格式和各位含義如下: IP BCH BBH BAH B9H B8HPS串行口中斷優(yōu)先級控制位。 PT1T1中斷優(yōu)先級控制位。 PX1外部中斷l(xiāng)中斷優(yōu)先級控制位。 PT0T0中斷優(yōu)先級控制位。PX0外部中斷0中斷優(yōu)先級控制位。 以上對應(yīng)位為1,高優(yōu)先級;為0,低優(yōu)先級。 當(dāng)系統(tǒng)復(fù)位后,IP低5位全部清“0”,將所有中斷源設(shè)置為低優(yōu)先級中斷。 PSPT1 PX1 PX1 PX0 (B8H)自然優(yōu)先級由硬件形成,排列次序如下: 中斷源 自然優(yōu)先級 外部中斷0 最高級 定時(shí)器T0中斷 外部中斷1 定時(shí)器T1中斷 串

13、行口中斷 最低級 當(dāng)重新設(shè)置優(yōu)先級時(shí),則順序查詢邏輯電路將會相應(yīng)改變排隊(duì)順序。例如,給中斷優(yōu)先級寄存器IP中設(shè)置的優(yōu)先級控制字為11H,則PS和PX0均為高優(yōu)先級中斷。當(dāng)這兩個(gè)中斷源同時(shí)發(fā)出中斷申請時(shí),CPU將先響應(yīng)自然優(yōu)先級高的PX0的中斷申請,而后響應(yīng)自然優(yōu)先級低的PS的中斷申請。不同的情況對中斷響應(yīng)的時(shí)間不同:(1) 最短的響應(yīng)時(shí)間,需要5個(gè)機(jī)器周期。調(diào)用指令本身要用2個(gè)機(jī)器周期,從外部中斷請求有效到開始執(zhí)行中斷服務(wù)程序的第一條指令,至少需要3個(gè)機(jī)器周期。(2)如果遇到中斷受阻的情況,中斷響應(yīng)時(shí)間會更長一些。 不同中斷受阻情況,附加的等待時(shí)間為15個(gè)機(jī)器周期。(3)若系統(tǒng)中只有一個(gè)中斷源

14、,則響應(yīng)時(shí)間為38個(gè)機(jī)器周期。(4)如果有兩個(gè)以上中斷源同時(shí)申請中斷,則響應(yīng)時(shí)間將更長。 般情況下,可不考慮響應(yīng)時(shí)間,但在精確定時(shí)控制的場合需要考慮此問題。 CPU響應(yīng)某中斷請求后,在中斷返回前,應(yīng)該撤消該中斷請求,否則會引起另一次中斷。(1)定時(shí)器0或1溢出中斷,CPU在響應(yīng)中斷后,中斷請求自動撤除。(2)邊沿激活的外部中斷,CPU在響應(yīng)中斷后,硬件自動清除有關(guān)的中斷請求 。(3)串行口中斷,CPU響應(yīng)中斷后,靠軟件來清除相應(yīng)的標(biāo)志。 電平激活的外部中斷撤除方法較復(fù)雜。 用P1.0接在觸發(fā)器的S端作為應(yīng)答線,當(dāng)CPU響應(yīng)中斷后可使用如下兩條指令: ANL Pl,# 0FEH ORL P1,#

15、 01H 執(zhí)行第一條指令使P1.0輸出為“0”,其持續(xù)時(shí)間為2個(gè)機(jī)器周期,足以使D觸發(fā)器置位,從而撤除中斷請求。執(zhí)行第二條指令使P1.0變?yōu)椤?”,否則D觸發(fā)器的S端始終有效,INT0端始終為“1”,無法再次申請中斷。P1.0MCS-51或 INT1INT0外 部 中 斷請 求 信 號DR0QS0CQ例6.5.1 如圖6-14所示,8031單片機(jī)的P1口接有8個(gè)LED,使用外部中斷0,當(dāng)每按下一次按鈕,使一只LED亮3秒后熄滅,再按一次按鈕,再使下一只LED亮3秒,再熄滅,如此一直循環(huán)下去。 ORG 0000H LJMP MAIN ;主程序跳轉(zhuǎn) ORG 0003H LJMP EXTER ;中斷跳轉(zhuǎn) ORG 0030HMAIN:MOV SP,#60H;設(shè)置堆棧指針 MOV A,#0H;熄滅所有LED MOV P1,A MOV A,#01H;點(diǎn)亮第一只LED初值SETB IT0 ;INT0下降沿方式 SETB EX0 ;INT0允許 SETB EA ;總中斷允許LOOP:

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論