




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1第五章第五章 輸入輸出系統(tǒng)輸入輸出系統(tǒng)一、微機(jī)接口的基本概念一、微機(jī)接口的基本概念 1、定義、定義-接口接口(Interface)就是就是主機(jī)(或主機(jī)(或CPU)與)與外設(shè)之間外設(shè)之間起連接作用起連接作用的電路的電路;信息交換的中轉(zhuǎn);信息交換的中轉(zhuǎn)站。站。 接口電路內(nèi)的寄存器接口電路內(nèi)的寄存器-端口寄存器,簡(jiǎn)稱端口端口寄存器,簡(jiǎn)稱端口 2、功能、功能 :數(shù)據(jù)暫存(緩沖、鎖存與驅(qū)動(dòng)):數(shù)據(jù)暫存(緩沖、鎖存與驅(qū)動(dòng)) 信號(hào)聯(lián)絡(luò)信號(hào)聯(lián)絡(luò) 地址譯碼和端口讀寫地址譯碼和端口讀寫 數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換 中斷管理中斷管理 23、端口的分類、端口的分類數(shù)據(jù)口數(shù)據(jù)口-存放輸入存放輸入/輸出的數(shù)據(jù)信息輸出的數(shù)據(jù)信息狀
2、態(tài)口狀態(tài)口-存放狀態(tài)信息存放狀態(tài)信息控制口控制口-存放控制信息存放控制信息-由由CPU寫入寫入4、I/O端口的編址方式端口的編址方式DBABCBCPU外設(shè)2接口2外設(shè)1接口1外設(shè)n接口n內(nèi)存儲(chǔ)器內(nèi)存接口3存儲(chǔ)器映象方式存儲(chǔ)器映象方式 -與存儲(chǔ)器統(tǒng)一編址,與存儲(chǔ)器統(tǒng)一編址, 使用存儲(chǔ)器讀使用存儲(chǔ)器讀/寫指令實(shí)現(xiàn)輸入輸出;寫指令實(shí)現(xiàn)輸入輸出; 占存儲(chǔ)器尋址空間。占存儲(chǔ)器尋址空間。獨(dú)立編址方式獨(dú)立編址方式 -I/O端口與內(nèi)存分別處理端口與內(nèi)存分別處理 使用輸入使用輸入/輸出指令對(duì)端口進(jìn)行讀寫輸出指令對(duì)端口進(jìn)行讀寫 不占存儲(chǔ)器尋址空間。不占存儲(chǔ)器尋址空間。1-訪問(wèn)Memory,MOV指令;0-訪問(wèn)I/
3、O設(shè)備,IN/OUT指令;M/IO=45、I/O端口的地址譯碼端口的地址譯碼譯碼器方法譯碼器方法-74LS138baGGG221譯碼控制端,譯碼控制端,CBA 000001010011100101110111譯碼輸出有效端譯碼輸出有效端0Y1Y2Y3Y4Y5Y6Y7Y為為100時(shí),對(duì)輸入信號(hào)時(shí),對(duì)輸入信號(hào)(CBA)譯碼。)譯碼。18916Vcc0Y1Y2Y3Y4Y5Y6Y7YABCaG2bG21GGND5數(shù)字比較器方法數(shù)字比較器方法-74520(8位數(shù)字比較器)位數(shù)字比較器) 74520內(nèi)部結(jié)構(gòu)與邏輯功能2011011GccUGNDBAA0B0A1B7A7A6A5A4A3A2B6B5B4B3B
4、2B1GiABAiB1 10 1iiBA 0 0iiBA 6用門電路設(shè)計(jì)地址譯碼電路用門電路設(shè)計(jì)地址譯碼電路1#端口寄存器2#端口寄存器IORIOWPSCPU數(shù)據(jù)線數(shù)據(jù)線A9A8A6A3A2A1A7A5A4A0AEN地址譯碼地址譯碼I/O端口端口讀寫控制讀寫控制地址允許地址允許:AEN 端口地址端口地址:0b7二、微型機(jī)與輸入輸出設(shè)備的信息交換二、微型機(jī)與輸入輸出設(shè)備的信息交換 信息交換方式:信息交換方式:DMACPU與與I/O設(shè)備間設(shè)備間程序控制程序控制中斷控制中斷控制無(wú)條件傳送無(wú)條件傳送程序查詢程序查詢8 CPU在做輸入輸出操作之前不查詢外設(shè)的狀態(tài),無(wú)條件執(zhí)行輸入輸出操作指令。 PORT1
5、PORT2WRRDIOM /輸出鎖存輸出設(shè)備輸入緩沖輸入設(shè)備地址譯碼 DBAB1、無(wú)條件傳送方式無(wú)條件傳送方式-數(shù)據(jù)交換雙方配合能力差、數(shù)據(jù)交換雙方配合能力差、可靠性低可靠性低9 輸出指令序列:輸出指令序列:Mov dx , port1 ;Mov al , dataOut dx ,alPort1為輸出設(shè)備地址為輸出設(shè)備地址Data為待輸出的數(shù)據(jù)為待輸出的數(shù)據(jù)輸入指令序列:輸入指令序列:Mov dx , port2 ;In al , dx ;Port2為輸入設(shè)備地為輸入設(shè)備地址址102、查詢方式、查詢方式-外設(shè)接口提供狀態(tài),外設(shè)接口提供狀態(tài),CPU通過(guò)端口通過(guò)端口讀取狀態(tài);讀取狀態(tài);-交換前,先
6、查狀態(tài)交換前,先查狀態(tài)準(zhǔn)備好,交換準(zhǔn)備好,交換未,再查未,再查 輸入:輸入:輸入型外設(shè)D0 數(shù)據(jù)D7READY(狀態(tài))地址譯碼器AB 數(shù)據(jù)緩沖器DBRDIOM /11程序段:mov dx , STATUS;In al ,dx ;讀入READY線狀態(tài)mov dx , PORT;in al , dx ;READY=1,輸入數(shù)據(jù)test al ,1 ;jz next ;判READY=1?READY=0,等待next:12STATUS 輸出:輸出:硬件PORT DB輸出鎖存地址譯碼器ABD0 數(shù)據(jù)D7BUSY(狀態(tài))輸出型外設(shè)RDIOM /WR13 程序段:Mov dx , status ;In al
7、 ,dx ;讀入BUSY狀態(tài)Mov dx ,port ;Out dx , al ;輸出數(shù)據(jù)Test al ,1 ;Jnz next ;判BUSY=1?BUSY=1,忙;等待Next:143、程序中斷方式、程序中斷方式 程序控制方式存在的問(wèn)題:程序控制方式存在的問(wèn)題: 無(wú)條件輸入輸出無(wú)條件輸入輸出-外設(shè)未準(zhǔn)備好時(shí)數(shù)據(jù)外設(shè)未準(zhǔn)備好時(shí)數(shù)據(jù) 傳輸出錯(cuò)傳輸出錯(cuò); 查詢方式查詢方式-外設(shè)未準(zhǔn)備好時(shí)外設(shè)未準(zhǔn)備好時(shí)CPU反復(fù)查反復(fù)查詢、等待,詢、等待,浪費(fèi)浪費(fèi)CPU資源資源;15 解決辦法:解決辦法: 查詢-CPU主動(dòng)查外設(shè)的狀態(tài); 若外設(shè)主動(dòng),一旦準(zhǔn)備好就向CPU發(fā)請(qǐng)求;CPU平時(shí)執(zhí)行正常的程序,接到外設(shè)請(qǐng)
8、求,就中斷當(dāng)前的操作,轉(zhuǎn)向?yàn)橥庠O(shè)服務(wù)的子程序-中斷服務(wù)子程序,結(jié)束后又回到斷點(diǎn)處繼續(xù)運(yùn)行-程序中斷輸入輸出方式。 程序中斷輸入輸出方式-數(shù)據(jù)的輸入輸出操作指令在中斷服務(wù)程序中。16中斷請(qǐng)求中斷請(qǐng)求INTR=1中斷服務(wù)程序中斷服務(wù)程序(輸入(輸入/輸出)輸出)正常程序正常程序繼續(xù)繼續(xù)17 特點(diǎn):特點(diǎn): CPU與外設(shè)交換數(shù)據(jù)的程序是放在一個(gè)特殊的子程序-中斷服務(wù)子程序中;只有執(zhí)行這個(gè)子程序,才能進(jìn)行輸入輸出操作。 中斷服務(wù)子程序的執(zhí)行不是由CPU執(zhí)行一條調(diào)用子程序指令來(lái)實(shí)現(xiàn)的,而是由外設(shè)給CPU的INTR端發(fā)一個(gè)中斷請(qǐng)求信號(hào)來(lái)產(chǎn)生-硬件觸發(fā); 184、直接存儲(chǔ)器存取方式、直接存儲(chǔ)器存取方式 (Di
9、rect Memory Access) 程序控制輸入輸出方式:交換數(shù)據(jù)要經(jīng)程序控制輸入輸出方式:交換數(shù)據(jù)要經(jīng)過(guò)過(guò)CPU-數(shù)據(jù)交換速度慢;數(shù)據(jù)交換速度慢; 程序中斷輸入輸出方式:斷點(diǎn)要進(jìn)棧和程序中斷輸入輸出方式:斷點(diǎn)要進(jìn)棧和出棧,大量的寄存器操作出棧,大量的寄存器操作-數(shù)據(jù)交換效數(shù)據(jù)交換效率低;率低; 成批數(shù)據(jù)傳輸成批數(shù)據(jù)傳輸-DMA方式。方式。19 在在DMA方式下,方式下,CPU暫停執(zhí)行程序,暫停執(zhí)行程序,將總線控制權(quán)交給將總線控制權(quán)交給DMA控制器控制器(DMAC)。數(shù)據(jù)的輸入或輸出是)。數(shù)據(jù)的輸入或輸出是在在DMAC的控制下直接在存儲(chǔ)器與的控制下直接在存儲(chǔ)器與外設(shè)之間進(jìn)行。因而效率高,速
10、度外設(shè)之間進(jìn)行。因而效率高,速度快,適合批量數(shù)據(jù)的傳輸。快,適合批量數(shù)據(jù)的傳輸。 DMA方式,主板必須配備有方式,主板必須配備有DMA控控制器(制器(DMAC)。)。20三、三、8259A中斷控制器中斷控制器1、中斷的基本概念、中斷的基本概念中斷類型中斷類型 -8086中斷系統(tǒng)可管理中斷系統(tǒng)可管理256個(gè)中斷,系統(tǒng)為每個(gè)中斷,系統(tǒng)為每個(gè)中斷分配一個(gè)代號(hào)個(gè)中斷分配一個(gè)代號(hào)-中斷類型碼中斷類型碼n(0-255)。256種中斷種中斷軟件中斷軟件中斷硬件中斷硬件中斷可屏蔽中斷(可屏蔽中斷(INTR)非屏蔽中斷(非屏蔽中斷(NMI)21 中斷向量中斷向量-中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址 中
11、斷向量中斷向量= 中斷類型碼中斷類型碼 n 4。 中斷向量表中斷向量表-內(nèi)存中的特定空間,中斷內(nèi)存中的特定空間,中斷服務(wù)程序的地址表。向量表的地址(偏移服務(wù)程序的地址表。向量表的地址(偏移地址)與內(nèi)容反映中斷類型碼地址)與內(nèi)容反映中斷類型碼n與中斷服與中斷服務(wù)程序起始地址之間的對(duì)應(yīng)關(guān)系。務(wù)程序起始地址之間的對(duì)應(yīng)關(guān)系。2280X86中斷向量表的結(jié)構(gòu)中斷向量表的結(jié)構(gòu) 80X86最多允許256個(gè)(級(jí))中斷。 每個(gè)中斷向量占4個(gè)存儲(chǔ)單元 中斷向量表占 個(gè)單元,在RAM的低端(00000H003FFH)。中斷服務(wù)程序入口地址段基地址(CS),16位偏移地址(IP), 16位-32位(4字節(jié))-4個(gè)連續(xù)存
12、儲(chǔ)單元2個(gè)低字節(jié)單元, 4n,4n+1 IP2個(gè)高字節(jié)單元,4n+2,4n+3 CS1024425623 8086 RAM區(qū)分配 中斷服務(wù)主程序CS:IP入口4Byte4n+34n+24n+14n8086中斷向量表1024byte00000H003FFH指令、數(shù)據(jù)、堆棧區(qū)高位低位CS段地址IP偏移地址RAM24 CPU響應(yīng)可屏蔽中斷的條件:響應(yīng)可屏蔽中斷的條件: CPU必須開中斷,即中斷允許標(biāo)志位IF=1; CPU必須將現(xiàn)行一條指令執(zhí)行結(jié)束。 無(wú)優(yōu)先級(jí)更高的中斷請(qǐng)求。說(shuō)明: 外部硬件必須保持INTR信號(hào)有效一直到被CPU檢測(cè)到,采取的方法通常是將外設(shè)發(fā)出的中斷請(qǐng)求信號(hào)鎖存起來(lái); 中斷服務(wù)程序執(zhí)
13、行完之前必須清除INTR中斷請(qǐng)求。 25中斷向量表中斷服務(wù)程序IPCSPSW堆棧區(qū)RAM261中斷請(qǐng)求接口卡 INTIRX D0D738259A8749壓棧中斷返回INTRD0D7IF=0TF=0IPCSPSW5CPU CPU響應(yīng)可屏蔽中斷的過(guò)程:響應(yīng)可屏蔽中斷的過(guò)程:26 接口向8259A發(fā)中斷請(qǐng)求信號(hào)IRQX,將8259內(nèi)中斷請(qǐng)求觸發(fā)器IRR相應(yīng)位置1; 8259A通過(guò)分析比較,由INT引腳向CPU的INTR引腳發(fā)中斷請(qǐng)求信號(hào); 若滿足可屏蔽中斷條件,CPU響應(yīng)中斷,連續(xù)發(fā)兩個(gè)中斷響應(yīng)信號(hào) 。第一個(gè)表示CPU響應(yīng)中斷,將8259A的中斷服務(wù)寄存器ISR相應(yīng)位置位,同時(shí)將中斷請(qǐng)求觸發(fā)器IRR
14、相應(yīng)位復(fù)位;第二個(gè)讀入8259A提供的中斷類型碼。INTA27 CPU屏蔽中斷,保護(hù)斷點(diǎn)(標(biāo)志寄存器和CS及IP壓棧)。 CPU將中斷允許標(biāo)志位IF和陷阱標(biāo)志位TF清0。 CPU計(jì)算中斷向量,得出中斷服務(wù)程序起始地址(段基址:偏移地址)送CS:IP寄存器,轉(zhuǎn)入中斷服務(wù)程序。 執(zhí)行中斷處理。 中斷處理完畢,執(zhí)行中斷返回指令I(lǐng)RET,返回?cái)帱c(diǎn)。 282、 8259A內(nèi)部結(jié)構(gòu)與中斷過(guò)程內(nèi)部結(jié)構(gòu)與中斷過(guò)程數(shù)據(jù)總線緩沖器讀/寫邏輯級(jí)聯(lián)緩沖/比較器中斷服務(wù)寄存器(ISR)中斷優(yōu)先級(jí)裁決器(PR)中斷屏蔽寄存器(IMR)中斷請(qǐng)求寄存器(IRR)控制邏輯INTAINT0CAS1CAS2CAS0IR7IR1IR
15、CSRDWR0AD0D7內(nèi)部總線 功能與結(jié)構(gòu)功能與結(jié)構(gòu)291)中斷請(qǐng)求寄存器中斷請(qǐng)求寄存器IRR接收并寄存接收并寄存8個(gè)中斷請(qǐng)求輸入個(gè)中斷請(qǐng)求輸入IR7IR0的狀態(tài)。的狀態(tài)。2)中斷屏蔽寄存器中斷屏蔽寄存器IMR IM7IM0每一位與中斷請(qǐng)求輸入每一位與中斷請(qǐng)求輸入IR7IR0一一對(duì)一一對(duì)應(yīng)。應(yīng)。IMi=1,則,則IRi被禁止被禁止IMi=0IRi被允許。被允許。3) 中斷在服務(wù)寄存器中斷在服務(wù)寄存器ISR 與與IRRIRR對(duì)應(yīng),記錄正在被處理的中斷請(qǐng)求。對(duì)應(yīng),記錄正在被處理的中斷請(qǐng)求。IRnIRn被響應(yīng),被響應(yīng),ISRnISRn被置被置1 1;IRnIRn處理結(jié)束,處理結(jié)束,ISRnISRn
16、置置0 0。4)中斷優(yōu)先權(quán)裁決器中斷優(yōu)先權(quán)裁決器PR 分析、比較中斷請(qǐng)求的優(yōu)先級(jí),裁決出優(yōu)先級(jí)分析、比較中斷請(qǐng)求的優(yōu)先級(jí),裁決出優(yōu)先級(jí)最高的中斷源。最高的中斷源。305)控制邏輯控制邏輯 控制核心,控制核心,寄存寄存8259A的命令字,實(shí)現(xiàn)多種工的命令字,實(shí)現(xiàn)多種工作方式的控制,向處理器發(fā)作方式的控制,向處理器發(fā)INT,接收,接收 。INTA6)讀讀/寫控制電路寫控制電路 接收端口地址信號(hào)、接收端口地址信號(hào)、CPU的讀寫控制信號(hào),控的讀寫控制信號(hào),控制命令字的寫入和狀態(tài)字的讀取。制命令字的寫入和狀態(tài)字的讀取。7)數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器 8位,雙向三態(tài)。位,雙向三態(tài)。 是是8259A與系統(tǒng)
17、數(shù)據(jù)總線的接口。與系統(tǒng)數(shù)據(jù)總線的接口。CPU寫控制寫控制字、讀狀態(tài)信息,字、讀狀態(tài)信息,8259A送出中斷類型碼的通送出中斷類型碼的通道。道。318)級(jí)聯(lián)緩沖級(jí)聯(lián)緩沖/比較器比較器 用于多片用于多片8259A構(gòu)成級(jí)聯(lián)方式。構(gòu)成級(jí)聯(lián)方式。 多片多片8259A級(jí)聯(lián)時(shí),總是連成主從結(jié)構(gòu),最多可級(jí)聯(lián)時(shí),總是連成主從結(jié)構(gòu),最多可構(gòu)成構(gòu)成88=64級(jí)中斷。級(jí)中斷。 8259A8259A級(jí)聯(lián)時(shí),對(duì)從片的標(biāo)識(shí)碼進(jìn)行寄存與比較。級(jí)聯(lián)時(shí),對(duì)從片的標(biāo)識(shí)碼進(jìn)行寄存與比較。32 8259A的中斷過(guò)程的中斷過(guò)程(1)中斷請(qǐng)求寄存器寄存中斷請(qǐng)求;)中斷請(qǐng)求寄存器寄存中斷請(qǐng)求;(2)對(duì)寄存的中斷請(qǐng)求判優(yōu);)對(duì)寄存的中斷請(qǐng)求判
18、優(yōu);(3)8259A向向CPU發(fā)中斷請(qǐng)求信號(hào);發(fā)中斷請(qǐng)求信號(hào);(4)滿足條件時(shí),)滿足條件時(shí),CPU向向8259A發(fā)中斷響應(yīng)信號(hào);發(fā)中斷響應(yīng)信號(hào);(5)8259A清除中斷請(qǐng)求寄存器的相應(yīng)位,同時(shí)清除中斷請(qǐng)求寄存器的相應(yīng)位,同時(shí) 使中斷服務(wù)寄存器相應(yīng)位置使中斷服務(wù)寄存器相應(yīng)位置1;(6)8259A送中斷類型碼至送中斷類型碼至CPU;(7)CPU根據(jù)中斷類型碼,計(jì)算中斷向量,轉(zhuǎn)向根據(jù)中斷類型碼,計(jì)算中斷向量,轉(zhuǎn)向 中斷服務(wù)程序。中斷服務(wù)程序。33 8259A的級(jí)連的級(jí)連從片1 8259AINTAINT0CAS1CAS2CAS0IR1IR2IR7IRENSP/從片2 8259AINTAINT0CAS
19、1CAS2CAS0IR1IR2IR7IRENSP/主片 8259AINTAINT0CAS1CAS2CAS0IR1IR2IR7IRENSP/CPU+5V中斷請(qǐng)求中斷請(qǐng)求343、8259A中斷管理方式中斷管理方式1)優(yōu)先級(jí)方式優(yōu)先級(jí)方式。4種: 優(yōu)先級(jí)全嵌套方式優(yōu)先級(jí)全嵌套方式 -中斷優(yōu)先級(jí)固定:從中斷優(yōu)先級(jí)固定:從IR0IR7依次是依次是IR0最高,最高,IR7最低。最低。 優(yōu)先級(jí)特殊嵌套方式優(yōu)先級(jí)特殊嵌套方式 -主片開放主片開放“同級(jí)同級(jí)”中斷;中斷; 優(yōu)先級(jí)自動(dòng)循環(huán)方式優(yōu)先級(jí)自動(dòng)循環(huán)方式 -起始優(yōu)先級(jí)固定:從起始優(yōu)先級(jí)固定:從IR0IR7依次是依次是IR0最高,最高,IR7最低最低當(dāng)當(dāng)某一個(gè)
20、中斷受到服務(wù)后,它的優(yōu)先級(jí)某一個(gè)中斷受到服務(wù)后,它的優(yōu)先級(jí)自動(dòng)自動(dòng)降到最低,其它中降到最低,其它中斷源的優(yōu)先級(jí)隨之?dāng)嘣吹膬?yōu)先級(jí)隨之按順序循環(huán)按順序循環(huán)地改變。地改變。 優(yōu)先級(jí)特殊循環(huán)方式優(yōu)先級(jí)特殊循環(huán)方式 -起始優(yōu)先級(jí)由命令字設(shè)置,自動(dòng)循環(huán)。起始優(yōu)先級(jí)由命令字設(shè)置,自動(dòng)循環(huán)。35 優(yōu)先級(jí)自動(dòng)循環(huán)方式優(yōu)先級(jí)自動(dòng)循環(huán)方式 IR0IR1IR2IR3IR4IR5IR6IR7IR0中斷響應(yīng)后中斷響應(yīng)后最高最高最低最低IR0IR1IR2IR3IR4IR5IR6IR7初始優(yōu)先級(jí)隊(duì)列初始優(yōu)先級(jí)隊(duì)列最高最高最低最低IR0IR1IR2IR3IR4IR5IR6IR7 IR4中斷響應(yīng)后中斷響應(yīng)后IR0IR1IR2IR
21、3IR4IR5IR6IR7 IR3中斷響應(yīng)后中斷響應(yīng)后362)屏蔽中斷源的方式)屏蔽中斷源的方式,2種。種。 普通屏蔽方式普通屏蔽方式 用操作命令字用操作命令字OCW1向向8259A的中斷屏蔽寄存器的中斷屏蔽寄存器IMR寫入屏蔽字來(lái)設(shè)置要屏蔽的中斷源。寫入屏蔽字來(lái)設(shè)置要屏蔽的中斷源。屏蔽為屏蔽為“1”,;允許為,;允許為“0”。 特殊屏蔽方式特殊屏蔽方式 “特殊特殊”之處在于執(zhí)行高級(jí)中斷服務(wù)程序過(guò)程中,之處在于執(zhí)行高級(jí)中斷服務(wù)程序過(guò)程中,屏蔽掉較高級(jí)的中斷,開放較低級(jí)的中斷從而轉(zhuǎn)屏蔽掉較高級(jí)的中斷,開放較低級(jí)的中斷從而轉(zhuǎn)為較低級(jí)的中斷源服務(wù)。為較低級(jí)的中斷源服務(wù)。 用操作命令字設(shè)置用操作命令字
22、設(shè)置/清除。清除。 373)中斷結(jié)束方式)中斷結(jié)束方式 普通中斷結(jié)束方式普通中斷結(jié)束方式(結(jié)束發(fā)結(jié)束命令)(結(jié)束發(fā)結(jié)束命令)特殊中斷結(jié)束方式特殊中斷結(jié)束方式(結(jié)束發(fā)結(jié)束命令)(結(jié)束發(fā)結(jié)束命令)兩大類兩大類自動(dòng)結(jié)束自動(dòng)結(jié)束非自動(dòng)結(jié)束非自動(dòng)結(jié)束3種種384)中斷觸發(fā)方式)中斷觸發(fā)方式 3種種 通過(guò)初始化命令字通過(guò)初始化命令字ICW1設(shè)置設(shè)置 。 邊沿觸發(fā)方式邊沿觸發(fā)方式 將上升沿作為中斷請(qǐng)求,即將上升沿作為中斷請(qǐng)求,即上升沿有效上升沿有效。 電平觸發(fā)方式電平觸發(fā)方式 高電平有效,高電平有效,當(dāng)中斷請(qǐng)求得到響應(yīng)后,中斷請(qǐng)求當(dāng)中斷請(qǐng)求得到響應(yīng)后,中斷請(qǐng)求信號(hào)必須及時(shí)撤消。信號(hào)必須及時(shí)撤消。 中斷查詢方
23、式中斷查詢方式5)總線連接方式)總線連接方式 2種種 緩沖方式緩沖方式非緩沖方式非緩沖方式394、8259A的命令字與初始化編程的命令字與初始化編程 8259A 8259A工作方式設(shè)定及運(yùn)行中的控制,均由工作方式設(shè)定及運(yùn)行中的控制,均由80868086發(fā)來(lái)的命令字發(fā)來(lái)的命令字(1(1字節(jié)代碼字節(jié)代碼) )決定。命令字分初始化決定。命令字分初始化命令字和操作命令字兩種,系統(tǒng)向命令字和操作命令字兩種,系統(tǒng)向8259A8259A兩個(gè)端口兩個(gè)端口之一寫入。之一寫入。 8259A8259A根據(jù)接收命令字的端口號(hào),特征位及順序根據(jù)接收命令字的端口號(hào),特征位及順序決定命令字的屬性。決定命令字的屬性。二類二類
24、初始化命令字初始化命令字 (Initialization Command Word,ICW),有,有ICW1ICW4四個(gè),有接收順序四個(gè),有接收順序要求。要求。操作命令字操作命令字 (Operation Command Word,OCW),),有有OCW1OCW33個(gè),無(wú)接收順序要求。個(gè),無(wú)接收順序要求。408259A8259A初始化流程初始化流程1A15/T7A14/T6A13/T5A12/T4A13/T3A10A9A8ICW2(type)用于用于8085A00ADILTIMSNGLA7A6A5IC41D7D6D5D2D1D0D4D3ICW1(chip control)8085用于用于808
25、5IC4=1?N1S5S4S6S7S3S2/ID2S1/ID1S0/ID0ICW3(slave control)SNGL=1?YN1SFNM00BUFM/SAEOIu PM0ICW4(mode control)可中斷可中斷41(1)ICW1-基本方式初始化命令字基本方式初始化命令字(偶地址偶地址,即片內(nèi) 口地址A0=0)硬件設(shè)置硬件設(shè)置D7 D6 D5 D4 D3 D2 D1 D0是否要ICW41:要寫0:不寫是否單片1:?jiǎn)纹?:級(jí)聯(lián)觸發(fā)方式1:電平觸發(fā)0:邊沿觸發(fā)標(biāo)志位標(biāo)志位ICW1 A7 A6 A5 1 LTIM ADI SNGL IC4中斷向量地址的A7A5(MCS 80/85)地址間隔
26、8080/8085 初始化命令字初始化命令字42(2)ICW2-中斷類型碼初始化命令字中斷類型碼初始化命令字 (奇地址奇地址,即 片內(nèi)口地址A0=1) ICW2是一個(gè)設(shè)定中斷矢量用的命令字。它緊跟在是一個(gè)設(shè)定中斷矢量用的命令字。它緊跟在ICW1后面,任何工作方式下都必須設(shè)置。后面,任何工作方式下都必須設(shè)置。 在在8086/8088模式下,模式下,D7D3為中斷類型碼的高為中斷類型碼的高5位位(即(即T7T3),低),低3位不用。位不用。中斷類型碼的低中斷類型碼的低3位位由硬件決定由硬件決定,自動(dòng)填入自動(dòng)填入,分別對(duì)應(yīng),分別對(duì)應(yīng)8個(gè)中斷源的中個(gè)中斷源的中斷請(qǐng)求斷請(qǐng)求IR0IR7,即,即由由IRn
27、IRn的的n n值定。值定。D7 D6 D5 D4 D3 D2 D1 D0 A15/T7 A14/T6 A13/T5 A12/T4 A11/T3 A10/T2 A9/T1 A8/T0 43例:例: 若若8個(gè)可屏蔽中斷個(gè)可屏蔽中斷IR0IR7類型號(hào)為類型號(hào)為08H0FH,則初始化的則初始化的ICW2為為08H(00001000)。)。 若初始化的若初始化的ICW2為為38H(00111000) ,則類,則類型號(hào)為型號(hào)為38H3FH(0011100000111111) 44(3)ICW3-主主/從片初始化命令字從片初始化命令字 若若8259A處于處于級(jí)聯(lián)方式級(jí)聯(lián)方式,即,即ICW1的的SNGL=0
28、,就必須就必須分別對(duì)主、從芯片寫入分別對(duì)主、從芯片寫入ICW3; ICW3必須寫入必須寫入8259A的的奇地址奇地址,即即A0=1 Si=1,對(duì)應(yīng)的輸入端對(duì)應(yīng)的輸入端IRi有從片有從片;Si=0,對(duì)應(yīng)的輸入端對(duì)應(yīng)的輸入端IRi無(wú)從片。無(wú)從片。 D7 D6 D5 D4 D3 D2 D1 D0 S7 S6 S5 S4 S3 S2 S1 S0 主片格式:主片格式: 從片格式:從片格式: D7 D6 D5 D4 D3 D2 D1 D0 S7 S6 S5 S4 S3 ID2 ID1 ID0 ID2ID0為從片標(biāo)識(shí)碼為從片標(biāo)識(shí)碼,與從片所連接的主片的中斷請(qǐng)求,與從片所連接的主片的中斷請(qǐng)求輸入端輸入端IRi
29、序號(hào)序號(hào) i 相對(duì)應(yīng)。相對(duì)應(yīng)。S7S3不用,可為不用,可為“1”或或“0”,一般填,一般填“0”。 45(4) ICW4-方式控制初始化命令字方式控制初始化命令字 若ICW1的D0位為為“1”,就需要要寫入ICW4,進(jìn)行方式控制初始化。 ICW4必須寫入8259A的奇地址奇地址端口(A0=1)。 D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 SFNM BUF M/S AEOI PM微處理器選擇1:86/880:80/851:自動(dòng)結(jié)束0:非自動(dòng)結(jié)束中斷結(jié)束方式 0 x 非緩沖方式 1 0 從片緩沖方式 1 1 主片緩沖方式嵌套方式1:特殊全嵌套方式0:全嵌套方式46 操作命令字操作
30、命令字(1)OCW1-設(shè)置設(shè)置/清除中斷屏蔽操作命令清除中斷屏蔽操作命令 片內(nèi)奇地址奇地址口,A0=1; 操作命令字操作命令字共有共有3個(gè)個(gè)OCW1-設(shè)置設(shè)置/清除中斷屏蔽操作;清除中斷屏蔽操作;OCW2-設(shè)置優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方設(shè)置優(yōu)先級(jí)循環(huán)方式和中斷結(jié)束方 式操作;式操作;OCW3-設(shè)置特殊屏蔽和查詢讀出操作設(shè)置特殊屏蔽和查詢讀出操作 D7 D6 D5 D4 D3 D2 D1 D0 M7 M6 M5 M4 M3 M2 M1 M0Mi=1 IRi被屏蔽;被屏蔽; Mi=0 IRi被開放。被開放。 47 8259A的級(jí)連的級(jí)連從片1 8259AINTAINT0CAS1CAS2CAS0IR
31、1IR2IR7IRENSP/從片2 8259AINTAINT0CAS1CAS2CAS0IR1IR2IR7IRENSP/主片 8259AINTAINT0CAS1CAS2CAS0IR1IR2IR7IRENSP/CPU+5V中斷請(qǐng)求中斷請(qǐng)求48三、三、 DMA方式的數(shù)據(jù)傳輸方式的數(shù)據(jù)傳輸DMA(Direct Memory Access)DMA(Direct Memory Access)的概念的概念DMADMA方式不用處理器干預(yù)完成方式不用處理器干預(yù)完成M M與與I/OI/O間數(shù)據(jù)傳送。間數(shù)據(jù)傳送。DMADMA期間系統(tǒng)總線由期間系統(tǒng)總線由DMADMA控制器控制控制器控制( (驅(qū)動(dòng)驅(qū)動(dòng)) )控制總線的主
32、模塊要提供系統(tǒng)的地址及控制信號(hào)??刂瓶偩€的主模塊要提供系統(tǒng)的地址及控制信號(hào)。DMADMA控制器與處理器配合可實(shí)現(xiàn)系統(tǒng)的控制器與處理器配合可實(shí)現(xiàn)系統(tǒng)的DMADMA功能。功能。 特點(diǎn):速度快,適合批量數(shù)據(jù)傳送。特點(diǎn):速度快,適合批量數(shù)據(jù)傳送。49HRQ DREQDMACHLDA DACK總線總線請(qǐng)求請(qǐng)求總線總線響應(yīng)響應(yīng)DMA請(qǐng)求請(qǐng)求DMA響應(yīng)響應(yīng)地址總線地址總線 HOLD HLDAI / O設(shè)備設(shè)備控制總線控制總線數(shù)據(jù)總線數(shù)據(jù)總線CPU2. 2. DMADMA系統(tǒng)組成及工作過(guò)程系統(tǒng)組成及工作過(guò)程 DMADMA系統(tǒng)組成系統(tǒng)組成 DMAC是核心是核心50 DMA DMA工作過(guò)程工作過(guò)程 I/OI/O向
33、向DMACDMAC發(fā)請(qǐng)求發(fā)請(qǐng)求 DMACDMAC向向CPUCPU發(fā)請(qǐng)求發(fā)請(qǐng)求 CPUCPU響應(yīng)響應(yīng)DMACDMAC請(qǐng)求請(qǐng)求 DMAC DMAC向向I/OI/O發(fā)響應(yīng)發(fā)響應(yīng)DMADMA傳送傳送結(jié)束結(jié)束DMADMA數(shù)據(jù)數(shù)據(jù)傳送傳送DMACDMAC發(fā)出發(fā)出控制信號(hào)控制信號(hào)DMACDMAC發(fā)出發(fā)出內(nèi)存地址內(nèi)存地址執(zhí)行完當(dāng)前總線周期后執(zhí)行完當(dāng)前一條指令后DMA方式中斷方式513、 DMA控制器控制器-8237A 8237A8237A主從兩面性:主從兩面性:作為作為DMACDMAC,8237A8237A是可控制總線的主模塊。是可控制總線的主模塊。作為作為I/OI/O芯片,芯片,8237A8237A可被處理
34、器讀寫。可被處理器讀寫。運(yùn)行時(shí)注意運(yùn)行時(shí)注意8237A8237A主主- -從地址的變化。從地址的變化。521 1)8237A8237A組成說(shuō)明:組成說(shuō)明: 8237A8237A有四個(gè)獨(dú)立通道:通道有四個(gè)獨(dú)立通道:通道0 0通道通道3。每個(gè)通道可獨(dú)。每個(gè)通道可獨(dú)立響應(yīng)外部立響應(yīng)外部DMA請(qǐng)求,完成請(qǐng)求,完成DMA傳送。傳送。模式模式REGREG, 1 1個(gè)個(gè)8 8位位1 1個(gè)個(gè)DMADMA請(qǐng)求觸發(fā)器請(qǐng)求觸發(fā)器1 1個(gè)個(gè)DMADMA屏蔽觸發(fā)器屏蔽觸發(fā)器字節(jié)數(shù)寄存字節(jié)數(shù)寄存器器2個(gè)個(gè)16位位基字節(jié)數(shù)寄存器:基字節(jié)數(shù)寄存器:-DMA-DMA傳送的總字節(jié)數(shù)。傳送的總字節(jié)數(shù)。當(dāng)前字節(jié)數(shù)寄存器:當(dāng)前字節(jié)數(shù)寄
35、存器: -DMA-DMA傳送時(shí)內(nèi)容變化傳送時(shí)內(nèi)容變化, ,可讀??勺x。地址寄存器地址寄存器2個(gè)個(gè)16位位基地址寄存器基地址寄存器-放放DMADMA傳送傳送RAMRAM地址初值地址初值當(dāng)前地址寄存器:當(dāng)前地址寄存器: -DMA-DMA傳送時(shí)內(nèi)容變化傳送時(shí)內(nèi)容變化, ,可讀。可讀。每每個(gè)個(gè)通通道道53控制寄存器控制寄存器, 8 8位位四個(gè)通道公用四個(gè)通道公用狀態(tài)寄存器狀態(tài)寄存器, 8 8位位屏蔽寄存器屏蔽寄存器,8 8位位。請(qǐng)求請(qǐng)求標(biāo)志標(biāo)志寄存器寄存器, 8 8位位暫存器暫存器, 8 8位位 優(yōu)先級(jí)編碼電路優(yōu)先級(jí)編碼電路-優(yōu)先級(jí)裁決優(yōu)先級(jí)裁決定時(shí)和控制邏輯定時(shí)和控制邏輯 作從模塊作從模塊-接收接收
36、CPU的信號(hào)和的信號(hào)和命令字,產(chǎn)生控制,讀命令字,產(chǎn)生控制,讀/寫內(nèi)部寄寫內(nèi)部寄存器存器 作主模塊作主模塊-控制總線,產(chǎn)生控控制總線,產(chǎn)生控制命令完成制命令完成DMA傳送傳送542 2)8237A8237A引線說(shuō)明:引線說(shuō)明:DB7-DB0DB7-DB0:雙向數(shù)據(jù)總線:雙向數(shù)據(jù)總線。8237A8237A為從模塊時(shí)被處理器編程或讀狀態(tài),為從模塊時(shí)被處理器編程或讀狀態(tài),DB7-DB0DB7-DB0作為數(shù)據(jù)線,傳輸數(shù)據(jù)或命令字。作為數(shù)據(jù)線,傳輸數(shù)據(jù)或命令字。8237A8237A為主模塊時(shí)為主模塊時(shí)DB7-DB0DB7-DB0輸出地址輸出地址A15-A8A15-A8,在在M M M M傳送操作時(shí)經(jīng)傳送
37、操作時(shí)經(jīng)DB7-DB0DB7-DB0,將,將M M數(shù)據(jù)送數(shù)據(jù)送8237A8237A暫存器。暫存器。A3-A4A3-A4:地址線:地址線,從模塊時(shí)為輸入,處理器,從模塊時(shí)為輸入,處理器尋址尋址8237A8237A;主模塊時(shí)輸出低四位地址。;主模塊時(shí)輸出低四位地址。 :片選片選,從模塊時(shí)處理器用來(lái)尋址,從模塊時(shí)處理器用來(lái)尋址8237A8237A。A7-A4A7-A4:地址線:地址線,主模塊時(shí)輸出,主模塊時(shí)輸出A7-A4A7-A4。CS55 , :I/OI/O讀寫控制讀寫控制,雙向。,雙向。8237A8237A在從在從模塊時(shí)為輸入,在主模塊時(shí)為輸出。模塊時(shí)為輸入,在主模塊時(shí)為輸出。AENAEN,AD
38、STBADSTB輸出:輸出:8 8位地址鎖存允許及選通位地址鎖存允許及選通。在主模塊時(shí)允許外部鎖存器鎖存在主模塊時(shí)允許外部鎖存器鎖存8237A8237A的高的高8 8位位地址。地址。 , :輸出,存儲(chǔ)器讀寫輸出,存儲(chǔ)器讀寫控制,控制,主模塊時(shí)送存儲(chǔ)器。主模塊時(shí)送存儲(chǔ)器。READYREADY:輸入,準(zhǔn)備就緒:輸入,準(zhǔn)備就緒,主模塊時(shí)控制總線,主模塊時(shí)控制總線周期的長(zhǎng)度,與慢速設(shè)備同步。周期的長(zhǎng)度,與慢速設(shè)備同步。RESETRESET:輸入,復(fù)位信號(hào):輸入,復(fù)位信號(hào),復(fù)位時(shí)屏幕寄,復(fù)位時(shí)屏幕寄存器置存器置1 1,其它寄存器置,其它寄存器置0 0。IORIOWMEMRMEMW56 :雙向。輸出時(shí),表
39、明內(nèi)部通道傳:雙向。輸出時(shí),表明內(nèi)部通道傳送結(jié)束;輸入時(shí),表明外部強(qiáng)迫送結(jié)束;輸入時(shí),表明外部強(qiáng)迫DMADMA傳送傳送仃止。仃止。DREQ0-DREQ3DREQ0-DREQ3:I/OI/O設(shè)備設(shè)備DMADMA請(qǐng)求輸入請(qǐng)求輸入信號(hào)。信號(hào)。DACK0-DACK3DACK0-DACK3:輸出:輸出DMADMA請(qǐng)求的請(qǐng)求的響應(yīng)響應(yīng)。HRQHRQ:8237A8237A向處理器發(fā)出的向處理器發(fā)出的總線請(qǐng)求總線請(qǐng)求信信號(hào)。號(hào)。HLDAHLDA:處理器發(fā)給:處理器發(fā)給8237A8237A的的總線總線請(qǐng)求請(qǐng)求響應(yīng)響應(yīng)信號(hào)。信號(hào)。EOP573)8237A的工作模式和傳送類型的工作模式和傳送類型 工作模式,工作模式
40、,4種種單字節(jié)傳送單字節(jié)傳送塊傳送塊傳送隨機(jī)請(qǐng)求傳送隨機(jī)請(qǐng)求傳送級(jí)聯(lián)傳送級(jí)聯(lián)傳送 傳送類型傳送類型校驗(yàn)傳送校驗(yàn)傳送:虛擬傳送,測(cè)試器件:虛擬傳送,測(cè)試器件讀傳送讀傳送:MEMI/O設(shè)備設(shè)備MEMRIOW寫傳送寫傳送:MEMI/O設(shè)備設(shè)備IORMEMW管理管理內(nèi)存到內(nèi)存的傳送內(nèi)存到內(nèi)存的傳送584)8237A內(nèi)部寄存器的功能和格式內(nèi)部寄存器的功能和格式基地址基地址REG:16位存放DMA傳送時(shí)存儲(chǔ)器地址初值初始化時(shí)寫入,先低后高。當(dāng)前地址當(dāng)前地址REG: 16位每次傳送后可讀1 地址寄存器地址寄存器1 字節(jié)數(shù)寄存器字節(jié)數(shù)寄存器基本字節(jié)基本字節(jié)REG:16位存放DMA傳送時(shí)傳送的字節(jié)數(shù)初值初始化時(shí)
41、寫入,先低后高。當(dāng)前字節(jié)當(dāng)前字節(jié)REG:16位每次傳送后 -1可讀59 命令寄存器命令寄存器 D7D6D5 D4D3D2D1D0DACK有效電平有效電平低電平有效低電平有效 0 高電平有效高電平有效1擴(kuò)展寫控制擴(kuò)展寫控制不擴(kuò)展寫不擴(kuò)展寫 0擴(kuò)展寫擴(kuò)展寫1D3=1X01 Enable 8237A8237A 工作工作 Disable 8237A時(shí)序類型時(shí)序類型01 X普通時(shí)序普通時(shí)序壓縮時(shí)序壓縮時(shí)序D0=11 0Channel 0 地址保持不變地址保持不變 XDisableEnable D0=0禁止禁止MEM. 1MEM. 傳輸傳輸允許允許 0DREQ有效電平有效電平 0 高電平有效高電平有效低電
42、平有效低電平有效 1優(yōu)先級(jí)類型優(yōu)先級(jí)類型01固定優(yōu)先級(jí)固定優(yōu)先級(jí)循環(huán)優(yōu)先級(jí)循環(huán)優(yōu)先級(jí)60 模式寄存器模式寄存器 D7D6D5 D4D3D2D1D0模式選擇模式選擇隨機(jī)請(qǐng)求傳輸模式隨機(jī)請(qǐng)求傳輸模式 0 0單字節(jié)傳輸模式單字節(jié)傳輸模式0101數(shù)據(jù)塊傳輸模式數(shù)據(jù)塊傳輸模式11級(jí)聯(lián)傳輸模式級(jí)聯(lián)傳輸模式地址增量選擇地址增量選擇地址加地址加1 0地址減地址減1 1 0 通道選擇通道選擇 0 選選 0# Channel 0 1 11 01選選 1# Channel選選 2# Channel選選 3# Channel傳輸類型選擇傳輸類型選擇 0 0 校驗(yàn)傳輸校驗(yàn)傳輸001111 X X寫傳輸寫傳輸 讀傳輸讀傳
43、輸非非 法法D7 D6=11自動(dòng)預(yù)置功能選擇自動(dòng)預(yù)置功能選擇禁止禁止 0 允許允許 1 61 請(qǐng)求寄存器請(qǐng)求寄存器 D7D6D3D2D1D0D5D4不用不用0清除清除DMA請(qǐng)求位請(qǐng)求位建立建立DMA請(qǐng)求位請(qǐng)求位100Channel 0001111Channel 1Channel 2Channel 362 屏蔽寄存器屏蔽寄存器 D7D6D3D2D1D0D5D4不用不用0清除清除 MASK 位位建立建立 MASK 位位100Channel 0001111Channel 1Channel 2Channel 3 通道選擇通道選擇63 多通道屏蔽寄存器多通道屏蔽寄存器 D7D6D3D2D1D0D5D4不
44、用不用0011清清 Channel 0 Mask 位位設(shè)設(shè) Channel 0 Mask 位位清清 Channel 1 Mask 位位設(shè)設(shè) Channel 1 Mask 位位0清清 Channel 3 M 位位設(shè)設(shè) Channel 3 M 位位10清清 Channel 2 M 位位1設(shè)設(shè) Channel 2 M 位位64 狀態(tài)寄存器狀態(tài)寄存器 D7D6D3D2D1D0D5D4 通道通道 3 有有DMA請(qǐng)求請(qǐng)求 1通道通道 2有有DMA請(qǐng)求請(qǐng)求 1通道通道 1 有有DMA請(qǐng)求請(qǐng)求 1通道通道 0 有有DMA請(qǐng)求請(qǐng)求 11 通道通道 1計(jì)數(shù)結(jié)束計(jì)數(shù)結(jié)束1 通道通道 0計(jì)數(shù)結(jié)束計(jì)數(shù)結(jié)束1 通道通道
45、2計(jì)數(shù)結(jié)束計(jì)數(shù)結(jié)束1 通道通道 3計(jì)數(shù)結(jié)束計(jì)數(shù)結(jié)束65 暫存器暫存器 8位,四個(gè)通道公用。位,四個(gè)通道公用。 進(jìn)行存儲(chǔ)器到存儲(chǔ)器的傳送時(shí),暫存中間數(shù)據(jù)進(jìn)行存儲(chǔ)器到存儲(chǔ)器的傳送時(shí),暫存中間數(shù)據(jù) 可讀可讀 先先/后觸發(fā)器后觸發(fā)器 控制基地址寄存器和基本字節(jié)數(shù)寄存器的寫入順序控制基地址寄存器和基本字節(jié)數(shù)寄存器的寫入順序 16位基地址和字節(jié)數(shù)分兩次寫入,每次位基地址和字節(jié)數(shù)分兩次寫入,每次8位位 寫入基地址和基本字節(jié)數(shù)之前,先對(duì)清寫入基地址和基本字節(jié)數(shù)之前,先對(duì)清0,就能保證,就能保證先低先低8位后高位后高8位的寫入順序。位的寫入順序。665)8237的編程的編程 3 3個(gè)軟件命令與端口號(hào)有關(guān),與個(gè)軟
46、件命令與端口號(hào)有關(guān),與DBDB線上的線上的內(nèi)容無(wú)關(guān)。內(nèi)容無(wú)關(guān)。寫寫C C號(hào)地址:號(hào)地址:清除字節(jié)指針清除字節(jié)指針F/FF/F,使將裝入,使將裝入順序?yàn)橄软樞驗(yàn)橄萀SBLSB后后MSBMSB。寫寫D D號(hào)地址:號(hào)地址:總清除命令總清除命令,屏蔽,屏蔽REG.REG.為為1 1,其它其它REG.REG.為為0 0 ,軟件復(fù)位。,軟件復(fù)位。寫寫E E號(hào)地址,號(hào)地址,清除屏蔽標(biāo)志清除屏蔽標(biāo)志。67 編程過(guò)程編程過(guò)程HLDAHLDA無(wú)效時(shí)無(wú)效時(shí)8237A8237A接受接受P P編程,不管編程,不管HRQHRQ是否有是否有效。效。編程前禁止編程前禁止8237A8237A:發(fā)關(guān)閉:發(fā)關(guān)閉8237A8237A
47、命令,向命令,向8 8號(hào)號(hào)端口(硬件設(shè)置)寫端口(硬件設(shè)置)寫04H04H,或?qū)νǖ肋M(jìn)行屏蔽。,或?qū)νǖ肋M(jìn)行屏蔽。用軟命令發(fā)出總清(用軟命令發(fā)出總清(Master Clear)Master Clear)操作:向操作:向0DH0DH端口執(zhí)行一次寫操作。端口執(zhí)行一次寫操作。向有關(guān)通道送地址值,計(jì)數(shù)值,模式字。向有關(guān)通道送地址值,計(jì)數(shù)值,模式字。送硬件設(shè)置命令字,打開送硬件設(shè)置命令字,打開8237A8237A。去除屏蔽準(zhǔn)備接收去除屏蔽準(zhǔn)備接收DMADMA請(qǐng)求。請(qǐng)求。68第六章第六章 常用可編程外圍接口芯片常用可編程外圍接口芯片8254-定時(shí)器定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器8255A-并行接口并行接口8251A
48、-串行接口串行接口一、一、82541、主要功能、主要功能 :(1) 每片每片3個(gè)個(gè)16位計(jì)數(shù)通道,各自獨(dú)立位計(jì)數(shù)通道,各自獨(dú)立(2) 每個(gè)計(jì)數(shù)通道均可作定時(shí)器或計(jì)數(shù)器,二進(jìn)制或十每個(gè)計(jì)數(shù)通道均可作定時(shí)器或計(jì)數(shù)器,二進(jìn)制或十 進(jìn)制計(jì)數(shù)方式進(jìn)制計(jì)數(shù)方式(3) 每個(gè)通道有每個(gè)通道有6種工作方式,可編程實(shí)現(xiàn)種工作方式,可編程實(shí)現(xiàn)692、結(jié)構(gòu)、結(jié)構(gòu)GATE0CLK0OUT0計(jì)數(shù)器0#GATE1CLK1OUT1計(jì)數(shù)器1#GATE2CLK2OUT2計(jì)數(shù)器2#內(nèi)部數(shù)據(jù)總線讀/寫控制邏輯控制字寄存器A0A1RDWRCSDO-D7DO-D7數(shù)據(jù)總線緩沖器70RDIOR-讀控制,輸入;連接讀控制,輸入;連接WRIO
49、W-寫控制,輸入;連接寫控制,輸入;連接CS-片選,輸入;來(lái)自地址譯碼片選,輸入;來(lái)自地址譯碼A1 A0:片內(nèi)端口地址:片內(nèi)端口地址00-0#計(jì)數(shù)器計(jì)數(shù)器01-1#計(jì)數(shù)器計(jì)數(shù)器10-2#計(jì)數(shù)器計(jì)數(shù)器11-控制字寄存器控制字寄存器(1)數(shù)據(jù)總線緩沖器)數(shù)據(jù)總線緩沖器隔離片外數(shù)據(jù)總線與片內(nèi)數(shù)據(jù)總線。隔離片外數(shù)據(jù)總線與片內(nèi)數(shù)據(jù)總線。CPU對(duì)對(duì)8253進(jìn)行讀寫操作的數(shù)據(jù)通道。進(jìn)行讀寫操作的數(shù)據(jù)通道。(2)讀寫控制電路)讀寫控制電路接受接受CPU的控制命令后,控制芯片內(nèi)部的操作。的控制命令后,控制芯片內(nèi)部的操作。71(3)控制寄存器)控制寄存器 8位,只能寫入,不能讀出位,只能寫入,不能讀出。 每個(gè)計(jì)數(shù)
50、通道每個(gè)計(jì)數(shù)通道1個(gè),共有個(gè),共有3個(gè);共用個(gè);共用1 個(gè)端口地址個(gè)端口地址,由,由 控制字中的控制字中的D7 D6(SC1 SC0)位決定:)位決定:D7D6(SC1SC0)00:通道:通道0#01:通道:通道1#10:通道:通道2#11-讀出讀出72(4)3個(gè)相互獨(dú)立的計(jì)數(shù)器個(gè)相互獨(dú)立的計(jì)數(shù)器 (0# ,1# ,2#)每個(gè)計(jì)數(shù)通道每個(gè)計(jì)數(shù)通道內(nèi)部的結(jié)構(gòu)內(nèi)部的結(jié)構(gòu) 內(nèi)部數(shù)據(jù)總線減 計(jì) 數(shù) 單 元 CE計(jì)數(shù)初值寄存器(高8位)計(jì)數(shù)初值寄存器(低8位)輸出鎖存寄存器(高8位)輸出鎖存寄存器(低8位)控制字寄存器控制邏輯733、8254引腳信號(hào)引腳信號(hào)D7D0:數(shù)據(jù)線,雙向三態(tài);與:數(shù)據(jù)線,雙向三
51、態(tài);與CPU交換信息交換信息地址:地址: ,片選;,片選;A1A0:片內(nèi)地址:片內(nèi)地址CS控制:控制: ,讀,讀 ; ,寫;,寫;RDWR0#通道CLK0:計(jì)數(shù)脈沖輸入:計(jì)數(shù)脈沖輸入GATE0:門控信號(hào),輸入:門控信號(hào),輸入OUT0:計(jì)數(shù)狀態(tài)輸出:計(jì)數(shù)狀態(tài)輸出1#通道CLK1GATE1OUT12#通道CLK2GATE2OUT2744、8254的工作方式及控制的工作方式及控制 8253的的3個(gè)個(gè)計(jì)數(shù)通道各自獨(dú)立計(jì)數(shù)通道各自獨(dú)立,均有,均有6種工作種工作方式方式。 GATE為低電平或負(fù)跳變禁止計(jì)數(shù):為低電平或負(fù)跳變禁止計(jì)數(shù):方式方式0、2、3、4 軟啟動(dòng):方式軟啟動(dòng):方式0、4 硬啟動(dòng):方式硬啟動(dòng)
52、:方式1、5 軟軟/硬啟動(dòng):方式硬啟動(dòng):方式2、3,自動(dòng)循環(huán)。,自動(dòng)循環(huán)。75計(jì)數(shù)啟動(dòng)方式計(jì)數(shù)啟動(dòng)方式軟啟動(dòng)軟啟動(dòng):(:(GATE=1時(shí))時(shí)) 寫入計(jì)數(shù)初值寫入計(jì)數(shù)初值 啟動(dòng)計(jì)數(shù)啟動(dòng)計(jì)數(shù)WR硬啟動(dòng)硬啟動(dòng):(:(GATE=0) 寫入計(jì)數(shù)初值不計(jì)數(shù),寫入計(jì)數(shù)初值不計(jì)數(shù), GATE 啟動(dòng)計(jì)數(shù)啟動(dòng)計(jì)數(shù)計(jì)數(shù)結(jié)束方式計(jì)數(shù)結(jié)束方式一次性計(jì)數(shù)一次性計(jì)數(shù)自動(dòng)重裝初值,循環(huán)計(jì)數(shù)自動(dòng)重裝初值,循環(huán)計(jì)數(shù)761)方式)方式0-事件計(jì)數(shù)方式(計(jì)數(shù)結(jié)束中斷)事件計(jì)數(shù)方式(計(jì)數(shù)結(jié)束中斷) 寫入方式命令字后,寫入方式命令字后,OUT引腳變低電平;引腳變低電平; WROUT 若若GATE=1(允許計(jì)數(shù)),當(dāng)計(jì)數(shù)初值寫入指定的初值
53、(允許計(jì)數(shù)),當(dāng)計(jì)數(shù)初值寫入指定的初值寄存器寄存器CR后(后( ),在下一個(gè)計(jì)數(shù)脈沖),在下一個(gè)計(jì)數(shù)脈沖CLK的下降沿,的下降沿,計(jì)數(shù)初值寄存器計(jì)數(shù)初值寄存器CR將計(jì)數(shù)初值送至減計(jì)數(shù)單元將計(jì)數(shù)初值送至減計(jì)數(shù)單元CE;再下;再下一個(gè)計(jì)數(shù)脈沖開始減計(jì)數(shù)(一個(gè)計(jì)數(shù)脈沖開始減計(jì)數(shù)(CLK的下降沿計(jì)數(shù)器減的下降沿計(jì)數(shù)器減1);計(jì));計(jì)數(shù)器計(jì)數(shù)到數(shù)器計(jì)數(shù)到0時(shí),輸出端時(shí),輸出端OUT變?yōu)楦唠娖剑?jì)數(shù)過(guò)程結(jié)束。變?yōu)楦唠娖?,?jì)數(shù)過(guò)程結(jié)束。 WR4 3 2 1 0CWn=4CLKOUTGATE=1WR77 若在減計(jì)數(shù)過(guò)程中,若在減計(jì)數(shù)過(guò)程中,GATE變?yōu)樽優(yōu)?,則計(jì)數(shù)過(guò)程停止;直,則計(jì)數(shù)過(guò)程停止;直到到GATE
54、再次由再次由0變?yōu)樽優(yōu)?后,計(jì)數(shù)器接著繼續(xù)減后,計(jì)數(shù)器接著繼續(xù)減1計(jì)數(shù)。計(jì)數(shù)。 n=44 3 2 2 2 2 2 1 0CWCLKOUTGATEWR 若在減計(jì)數(shù)過(guò)程中,寫入新的計(jì)數(shù)初值,并保持若在減計(jì)數(shù)過(guò)程中,寫入新的計(jì)數(shù)初值,并保持GATE=1,則在寫入第一個(gè)字節(jié)時(shí)停止現(xiàn)行計(jì)數(shù);寫入第二個(gè)字節(jié)后則在寫入第一個(gè)字節(jié)時(shí)停止現(xiàn)行計(jì)數(shù);寫入第二個(gè)字節(jié)后( )第一個(gè))第一個(gè)CLK的下降沿,的下降沿,CR將計(jì)數(shù)初值送至減計(jì)將計(jì)數(shù)初值送至減計(jì)數(shù)單元數(shù)單元CE,下一個(gè),下一個(gè)CLK的下降沿計(jì)數(shù)器開始減的下降沿計(jì)數(shù)器開始減1計(jì)數(shù)。計(jì)數(shù)。WRn=34 3 2 1 3 2 1 0CWn=4CLKOUTGATE=1
55、WR782)方式)方式1-硬件啟動(dòng)單脈沖方式硬件啟動(dòng)單脈沖方式 硬件(硬件(GATE )觸發(fā);)觸發(fā);觸發(fā)一次,計(jì)數(shù)一輪觸發(fā)一次,計(jì)數(shù)一輪。 寫入控制字后(寫入控制字后( )OUT變高電平。變高電平。 不論不論GATE是否高電平,寫入初值不啟動(dòng)計(jì)數(shù)。是否高電平,寫入初值不啟動(dòng)計(jì)數(shù)。GATE 觸發(fā)計(jì)數(shù)。觸發(fā)計(jì)數(shù)。GATE 后,第一個(gè)后,第一個(gè)CLK 將計(jì)數(shù)初值從初值寄存器送至計(jì)數(shù)單元將計(jì)數(shù)初值從初值寄存器送至計(jì)數(shù)單元CE,同時(shí),同時(shí)OUT變低電平;下一個(gè)變低電平;下一個(gè)CLK 計(jì)數(shù)器減計(jì)數(shù)器減1計(jì)數(shù)。計(jì)數(shù)。 計(jì)數(shù)至計(jì)數(shù)至0,OUT低變高。低變高。 計(jì)數(shù)過(guò)程中,若計(jì)數(shù)過(guò)程中,若GATE由高變低(即
56、由高變低(即1變變0),不影),不影響計(jì)數(shù)過(guò)程;響計(jì)數(shù)過(guò)程; 若出現(xiàn)若出現(xiàn)GATE ,則重裝初值重計(jì)數(shù)(不是延續(xù),則重裝初值重計(jì)數(shù)(不是延續(xù)原來(lái)的計(jì)數(shù)過(guò)程)。原來(lái)的計(jì)數(shù)過(guò)程)。 WR79 計(jì)數(shù)過(guò)程中,若寫入新初值,不影響計(jì)數(shù)。只有等計(jì)數(shù)過(guò)程中,若寫入新初值,不影響計(jì)數(shù)。只有等到下一個(gè)到下一個(gè)GATE上升沿上升沿,才將新初值裝入計(jì)數(shù)單元,才將新初值裝入計(jì)數(shù)單元并按新初值啟動(dòng)計(jì)數(shù)。并按新初值啟動(dòng)計(jì)數(shù)。 4 3 2 1 0CWn=4n=5CLKOUTGATEWR803)方式)方式2-脈沖發(fā)生器(分頻方式)脈沖發(fā)生器(分頻方式) 送一次初值,重復(fù)計(jì)數(shù)。送一次初值,重復(fù)計(jì)數(shù)。 寫入控制字后(寫入控制字后
57、( )OUT變高電平。變高電平。 軟啟動(dòng)。先有軟啟動(dòng)。先有GATE=1,后寫入計(jì)數(shù)初值。由寫入計(jì)數(shù)初值,后寫入計(jì)數(shù)初值。由寫入計(jì)數(shù)初值啟動(dòng)計(jì)數(shù)。啟動(dòng)計(jì)數(shù)。 正常計(jì)數(shù)過(guò)程中,當(dāng)正常計(jì)數(shù)過(guò)程中,當(dāng)計(jì)數(shù)值減至計(jì)數(shù)值減至1時(shí),時(shí),OUT變低電平變低電平;當(dāng);當(dāng)計(jì)計(jì)數(shù)值減至數(shù)值減至0時(shí)時(shí),OUT又又由低電平由低電平變成高電平變成高電平。且初值自動(dòng)從。且初值自動(dòng)從初值寄存器初值寄存器CR送至減計(jì)數(shù)單元,開始新一輪計(jì)數(shù)。送至減計(jì)數(shù)單元,開始新一輪計(jì)數(shù)。 若初值為若初值為N,則每輸入,則每輸入N個(gè)計(jì)數(shù)脈沖(個(gè)計(jì)數(shù)脈沖(CLK信號(hào)),信號(hào)),OUT端端輸出輸出1個(gè)負(fù)脈沖。即:若個(gè)負(fù)脈沖。即:若CLK頻率為頻率為
58、f,則,則OUT輸出信號(hào)(負(fù)輸出信號(hào)(負(fù)脈沖)的頻率為脈沖)的頻率為f/N-分頻。分頻。 WR81 計(jì)數(shù)過(guò)程中,若計(jì)數(shù)過(guò)程中,若GATE變低電平,計(jì)數(shù)停;當(dāng)變低電平,計(jì)數(shù)停;當(dāng)GATE變高后,重裝初值重計(jì)數(shù)。變高后,重裝初值重計(jì)數(shù)。 計(jì)數(shù)過(guò)程中,若計(jì)數(shù)過(guò)程中,若GATE=1保持不變,重新寫入初保持不變,重新寫入初值,則新初值對(duì)本輪計(jì)數(shù)無(wú)影響;只有當(dāng)計(jì)數(shù)值,則新初值對(duì)本輪計(jì)數(shù)無(wú)影響;只有當(dāng)計(jì)數(shù)值減至值減至0時(shí),下一輪計(jì)數(shù)過(guò)程按新初值進(jìn)行。時(shí),下一輪計(jì)數(shù)過(guò)程按新初值進(jìn)行。 4 3 2 1 0 4 3 2 1 0 n=3CWn=4CLKOUTGATE=1WR824)方式)方式3-方波發(fā)生器方波發(fā)生器
59、 與方式與方式2類似,初值一次寫入,重復(fù)計(jì)數(shù)。類似,初值一次寫入,重復(fù)計(jì)數(shù)。 OUT輸出方波。輸出方波。 計(jì)數(shù)初值為偶數(shù),輸出高、低電平對(duì)稱的方波;計(jì)數(shù)初值為偶數(shù),輸出高、低電平對(duì)稱的方波; 計(jì)數(shù)初值為奇數(shù),輸出高、低電平近似對(duì)稱的計(jì)數(shù)初值為奇數(shù),輸出高、低電平近似對(duì)稱的方波,其高電平時(shí)間比低電平時(shí)間多方波,其高電平時(shí)間比低電平時(shí)間多1個(gè)計(jì)數(shù)個(gè)計(jì)數(shù)脈沖周期。脈沖周期。 n=5CW5 5 55 2 0 2 0 2 0n=4CW4 4 4 44 3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0 3 2CLKOUTGATE=1OUTWRWR835)方式)方式4-軟件啟動(dòng)軟件啟動(dòng)單脈沖發(fā)
60、生器單脈沖發(fā)生器 軟件啟動(dòng),一次性計(jì)數(shù)。軟件啟動(dòng),一次性計(jì)數(shù)。 寫入控制字后(寫入控制字后( ),輸出),輸出OUT變高電平;變高電平; 若門控若門控GATE=1,則寫入初值后(,則寫入初值后( )啟動(dòng))啟動(dòng)計(jì)數(shù)。計(jì)數(shù)。 計(jì)數(shù)減至計(jì)數(shù)減至0時(shí),時(shí),OUT變低電平并維持變低電平并維持1個(gè)計(jì)數(shù)脈個(gè)計(jì)數(shù)脈沖間隔后又變高電平,計(jì)數(shù)過(guò)程停止。沖間隔后又變高電平,計(jì)數(shù)過(guò)程停止。 計(jì)數(shù)過(guò)程中,若計(jì)數(shù)過(guò)程中,若GATE變?yōu)樽優(yōu)?,計(jì)數(shù)停;,計(jì)數(shù)停;GATE再次變?yōu)樵俅巫優(yōu)?(GATE )時(shí),重裝初值重計(jì)數(shù)。)時(shí),重裝初值重計(jì)數(shù)。 計(jì)數(shù)過(guò)程中,若寫入新初值,不影響本輪計(jì)數(shù)計(jì)數(shù)過(guò)程中,若寫入新初值,不影響本輪計(jì)數(shù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年CPSM考試知識(shí)框架試題及答案
- 2024年SCMP考生的備考經(jīng)驗(yàn)試題及答案
- 雞雜店創(chuàng)業(yè)計(jì)劃書
- SCMP考試注意事項(xiàng)解讀試題及答案
- 2024年綠色物流實(shí)踐案例試題及答案
- 骨折病護(hù)理查房
- 2024年CPSM真題試題及答案
- 運(yùn)輸成本計(jì)算方法及試題及答案
- CPMM考試的詞匯積累與試題及答案
- 2024年CPSM備考的個(gè)性化方案試題及答案
- GB/T 23144-2023紙和紙板彎曲挺度的測(cè)定兩點(diǎn)法、三點(diǎn)法和四點(diǎn)法的通用原理
- 人教版三年級(jí)數(shù)學(xué)下冊(cè)單元復(fù)習(xí)講義 第八單元 數(shù)學(xué)廣角-搭配(二)(學(xué)生版)
- 《法蘭克福學(xué)派》課件
- Chapter6WhenIwaslittle(課件)朗文英語(yǔ)世界三年級(jí)下冊(cè)
- 蘭州大學(xué)學(xué)生駕駛摩托車及其他機(jī)動(dòng)車輛家長(zhǎng)知情同意書
- 產(chǎn)后恢復(fù)操指導(dǎo)的操作流程及考核評(píng)分標(biāo)準(zhǔn)
- 2023年CSCO免疫檢查點(diǎn)抑制劑臨床應(yīng)用指南解讀
- 山東義能煤礦有限公司礦山地質(zhì)環(huán)境保護(hù)與土地復(fù)墾方案
- 裝修合同清單與裝修合同示本
- 綜合布線系統(tǒng)方案設(shè)計(jì)
- 防止架橋機(jī)傾覆措施
評(píng)論
0/150
提交評(píng)論