版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
9.2可編程計(jì)數(shù)器/定時(shí)控制器8253計(jì)數(shù)器/定時(shí)器8253特點(diǎn)
三個(gè)通道,可單獨(dú)使用片內(nèi)尋址
A1A0=00、01、10、11對(duì)應(yīng):通道0、1、2和控制口地址工作方式:6種一、微機(jī)定時(shí)方法
1.軟件定時(shí)——延遲子程序
2.硬件定時(shí)——用計(jì)數(shù)器/定時(shí)器8253
二、可編程計(jì)數(shù)器/定時(shí)器的工作原理
功能:一是為計(jì)數(shù);一是為定時(shí)。
8253的用處:
1)在多任務(wù)的分時(shí)系統(tǒng)中用來(lái)作為中斷信號(hào)實(shí)現(xiàn)程序的切換;
2)可以往I/O設(shè)備輸出精確的定時(shí)信號(hào);
3)作為一個(gè)可編程的波特率發(fā)生器;
4)實(shí)現(xiàn)時(shí)間延時(shí)。計(jì)數(shù)器/定時(shí)器的工作特點(diǎn)
1)門(mén)脈沖控制時(shí)鐘輸入;
2)用門(mén)脈沖來(lái)重新啟動(dòng)計(jì)數(shù);
3)用門(mén)脈沖停止計(jì)數(shù);
4)單一計(jì)數(shù);
5)循環(huán)計(jì)數(shù).
計(jì)數(shù)初始值=時(shí)鐘頻率*T
8_2_18253芯片內(nèi)部結(jié)構(gòu)1.數(shù)據(jù)總線緩沖器往計(jì)數(shù)器設(shè)置計(jì)數(shù)初值;
從計(jì)數(shù)器讀取計(jì)數(shù)值;
往控制寄存器設(shè)置控制字。2.讀/寫(xiě)邏輯電路A1A0:端口選擇00:通道0(0號(hào)計(jì)數(shù)器)01:通道1(1號(hào)計(jì)數(shù)器)10:通道2(2號(hào)計(jì)數(shù)器)11:控制字寄存器3.通道0、通道1、通道2
計(jì)數(shù)器0:CLK0——計(jì)數(shù)器0的時(shí)鐘輸入。
GATE0——計(jì)數(shù)器0的門(mén)脈沖控制輸入。
OUT0——計(jì)數(shù)器0的輸出。
計(jì)數(shù)器1計(jì)數(shù)器2定時(shí)系數(shù)(計(jì)數(shù)初值)n=定時(shí)時(shí)間t時(shí)鐘頻率fc=定時(shí)時(shí)間t/時(shí)鐘脈沖周期Tc
編程結(jié)構(gòu)
(2)8253的工作原理
4.控制寄存器
8253控制寄存器的格式SC1SC0RW1RW0M2M1M0BCD1--計(jì)數(shù)值為BCD碼格式0--計(jì)數(shù)值為二進(jìn)制格式M2M1M0模式選擇000模式0001模式1/10模式2/11模式3100模式4101模式500----對(duì)計(jì)數(shù)器進(jìn)行鎖存01----只讀/寫(xiě)低8位字節(jié)10----只讀/寫(xiě)高8位字節(jié)11----只讀/寫(xiě)低8位字節(jié),再讀/寫(xiě)高8位字節(jié).00----選計(jì)數(shù)器001----選計(jì)數(shù)器110----選計(jì)數(shù)器211----無(wú)意義
8-2-2.8253的工作模式
(1)方式0——計(jì)數(shù)結(jié)束產(chǎn)生中斷
一次定時(shí)或計(jì)數(shù),重寫(xiě)初值,啟動(dòng)新一輪的計(jì)數(shù)
(2)方式1——可編程的單脈沖(單穩(wěn))觸發(fā)器
GATE邊沿觸發(fā),啟動(dòng)新一輪計(jì)數(shù)
(3)方式2——分頻器(速度波發(fā)生器)
具有計(jì)數(shù)初值重裝能力(4)方式3——方波發(fā)生器
具有計(jì)數(shù)初值重裝能力(5)方式4——軟件觸發(fā)的選通信號(hào)發(fā)生器一次定時(shí),重寫(xiě)初值,啟動(dòng)新一輪的計(jì)數(shù)
(6)方式5——硬件觸發(fā)的選通信號(hào)發(fā)生器
GATE邊沿觸發(fā)新一輪計(jì)數(shù)圖8-22方式0——計(jì)數(shù)結(jié)束產(chǎn)生中斷圖8-22單脈沖觸發(fā)器高圖8-23分頻器圖8-23方波發(fā)生器圖8-23軟件觸發(fā)的選通信號(hào)發(fā)生器圖8-23硬件觸發(fā)的選通信號(hào)發(fā)生器8253初始化方法:控制字計(jì)數(shù)初值:
已知:CLK的頻率fc與定時(shí)的時(shí)間t.計(jì)數(shù)初值:n=fc
t
例1:fc=1MHZ,最大計(jì)數(shù)初值:65536一個(gè)定時(shí)器最大定時(shí)時(shí)間:N/fc=65536/106=0.065536s8-2-38253應(yīng)用舉例例2:設(shè)定時(shí)器0、定時(shí)器1工作于方式2,外部提供一個(gè)時(shí)鐘,頻率f=2MHZ。要求定時(shí)器1每5ms產(chǎn)生一個(gè)脈沖,定時(shí)器0每5s產(chǎn)生一個(gè)脈沖。1).一個(gè)定時(shí)器的最大定時(shí)時(shí)間:
65536/(2*106)=0.032768s=32.768ms2).將定時(shí)器1的CLK1接2MHZ時(shí)鐘,計(jì)數(shù)初值:3).將定時(shí)器1的OUT1端接到定時(shí)器0的CLK0端,定時(shí)器0的計(jì)數(shù)初值:例3:計(jì)數(shù)器2輸出600HZ方波,送揚(yáng)聲器。工作于模式3.發(fā)聲子程序:SSPPROCNEAR;8253初始化:MOVAL,10110110B;計(jì)數(shù)器2,模式3,初值16位,二進(jìn)制OUT43H,ALMOVAX,1983;計(jì)數(shù)初值=1.19MHZ600HZ=1983OUT42H,AL;送計(jì)數(shù)初值低位字節(jié)MOVAL,AHOUT42H,AL次;送計(jì)數(shù)初值高位字節(jié)8255控制程序:INAL,61H;讀8255的PB口原輸出值MOVAH,AL;保留到AHORAL,03H;使PB0\PB1均為1OUT61H,AL;打開(kāi)GATE2門(mén),輸出方波到揚(yáng)聲器SUBCX,CX;CX為循環(huán)次數(shù),最大為216L:LOOPL;延時(shí)DECBL;BL為子程序入口條件JNZL;BL=6,發(fā)長(zhǎng)聲(3S),BL=1發(fā)短聲(0.5S)MOVAL,AH;取回8255的PB口原輸出值OUT61H,AL;恢復(fù)8255PB口,停止發(fā)聲RETSSPENDP
例4:
定時(shí)/計(jì)數(shù)器8253與8086/8088CPU相連構(gòu)成完整的定時(shí)、計(jì)數(shù)或脈沖發(fā)生器系統(tǒng)。要求能完成的功能是:
1)利用通道0完成對(duì)外部事件計(jì)數(shù)功能,計(jì)滿100次向CPU發(fā)中斷請(qǐng)求。
2)利用通道1產(chǎn)生頻率為1KHz的方波。
3)利用通道2作標(biāo)準(zhǔn)時(shí)鐘,定時(shí)1秒,輸出接IR2。
(1)8253的數(shù)據(jù)線(D7~D0)與CPU的高8位數(shù)據(jù)線(D15-D8)相連,所以8253的端口地址必須是奇地址(A0=1)。(2)通道0定義為工作方式0,完成計(jì)數(shù).通道0的計(jì)數(shù)初值應(yīng)為:n0=100
控制字:00010000=10H(3)將通道1定義為工作方式3,控制字=01110110=76H,從CLK1輸入2.5MHz的時(shí)鐘脈沖,OUT1輸出頻率為1KHz的方波,而輸出方波的周期1ms。通道1的計(jì)數(shù)初值:
n1=f1*t1=2.5106110-3
=2500=09C4H。(4)通道2應(yīng)定義為方式0,
控制字=10110001=0B1H,每秒鐘利用OUT2向CPU發(fā)出一次中斷請(qǐng)求,由于輸入時(shí)鐘頻率為1KHz,計(jì)數(shù)初值應(yīng)為:
n2=f2*t2=1000*1=1000。
8253的控制端口地址:66H
通道0的端口地址:60H
通道1的端口地址:62H
通道2的端口地址:64H
8253-0EQU60H8253-1EQU62H8253-2EQU64H8253-CEQU66H
STT: MOV DX,8253-C;8253控制口地址
MOV AL,10H OUT DX,AL ;通道0工作在方式0
MOV DX,8253-0;8253通道0地址 MOV AL,64H
OUT DX,AL ;給通道0送計(jì)數(shù)值
MOV DX,8253-C MOV AL,76H
OUT DX,AL ;通道1工作在方式3 MOV DX,8253-1;8253通道1地址 MOV AX,09C4H
OUT DX,AL;給通道1送計(jì)數(shù)初值低8位 MOV AL,AH
OUT DX,A ;給通道1送計(jì)數(shù)值高位 MOV DX,8253-C
MOVAL,0B1H OUT DX,AL ;通道2工作在方式0 MOV DX,8253-2;通道2地址MOV AX,1000H;1000的BCD數(shù)1000HOUT DX,AL;給通道2送計(jì)數(shù)初值的低8位MOV AL,AHOUT DX,AL;給通道2送計(jì)數(shù)值的高8位MOV DX,8259A偶MOV AL,13HOUT DX,AL;設(shè)ICW1,邊緣觸發(fā),需ICW4MOV DX,8259A奇MOV AL,50H ;設(shè)ICW2,
0通道中斷類型碼為50HOUT DX,AL ;通道2的中斷類型碼為52HMOV AL,03 OUT DX,AL;設(shè)ICW4,非自動(dòng)EOI方式MOV AL,0FAH;OCW1,屏蔽IR0,IR1以外的輸入OUT DX,ALSTIFF: HLT JMP FF IR2時(shí)鐘程序:S1DB?;秒S2DB?;分S3DB?;時(shí)…..IR2_TIMER:INCS1CMPS1,60JNCEXIT;不滿60秒,退出MOVS1,00HINCS2;分單元加一CMPS2,60;不滿60分,退出JNCEXITMOVS2,00H;時(shí)單元加一INCS3JMPS3,24JNCEXITMOVS3,00HCALLDISPLAY;顯示時(shí)間…...STIEXIT:IRET思考題:l.微機(jī)中實(shí)現(xiàn)定時(shí)控制的主要方法是什么?2.8253每個(gè)計(jì)數(shù)通道與外設(shè)接口有哪些信號(hào)線,每個(gè)信號(hào)的用途是什么?3.8253每個(gè)通道有___種工作方式可供選擇。若設(shè)定某通道為方式0后,其輸出引腳為電平;當(dāng)____后通道開(kāi)始計(jì)數(shù),信號(hào)端每來(lái)一個(gè)脈沖就減1;當(dāng)__則輸出引腳輸出_電平,表示計(jì)數(shù)結(jié)束。8253的CLKO接1.5MHZ的時(shí)鐘,欲使OUT。產(chǎn)生頻率為300kHZ的方波信號(hào),則8253的計(jì)數(shù)值應(yīng)為_(kāi)___,應(yīng)選用的工作方式是_____.4.試按如下要求分別編寫(xiě)8253的初始化程序,已知8253的計(jì)數(shù)器0~2和控制字IO地址依次為04H~07H。(l)使計(jì)數(shù)器11作在方式0,僅用8位二進(jìn)制計(jì)數(shù),計(jì)數(shù)初值為128。(2)使計(jì)數(shù)器O工作在方式1,按BCD碼計(jì)數(shù),計(jì)數(shù)值為3000。(3)使計(jì)數(shù)器2工在方式2,計(jì)數(shù)值為02F0H。5.設(shè)8253計(jì)數(shù)器0—2和控制字的I/O地址依次為F8H~FBH,說(shuō)明如下程序的作用。moval;33houtofbh,almoval,80houtofsh,almoval,50houtof8h,al習(xí)題1分析:
用通道0作定時(shí)器,初始編程使通道0按方式3工作,每秒產(chǎn)生18.2次輸出信號(hào),該信號(hào)送到8259A中斷控制器的IRQ0輸入端。每55ms產(chǎn)生一次中斷請(qǐng)求,8086對(duì)其計(jì)數(shù),用來(lái)計(jì)算時(shí)間。通道1用作動(dòng)態(tài)RAM刷新定時(shí),每隔5.12us產(chǎn)生一次輸出信號(hào),請(qǐng)求動(dòng)態(tài)刷新。OUT1輸出產(chǎn)生DMA請(qǐng)求信號(hào)送8237,由8237對(duì)動(dòng)態(tài)RAM刷新。(8253地址為40H~43H)通道0:地址為40H,控制字為36H,工作方式3,計(jì)數(shù)初值為0通道1:地址為41H,控制字為54H,工作方式2,計(jì)數(shù)初值為12H TIMEMODECTRL EQU 43H TIMEADD EQU 40H CTRL1 DB 36H CTRL2 DB 54H TIME1 DW 0 TIME2 DW 12H MOV BP,TIMEMODECTRL
MOV AL,CTRL1
;送通道0控制字 MOV BYTEPTR[BP],AL
MOV AL,CTRL2
;送通道1控制字 MOV BYTEPTR[BP],AL MOV BP,TIMEADD ;通道0端口地址送BP
MOV AX,TIME1 MOV BYTEPTR[BP],AL MOV BYTEPTR[BP],AH ;送通道0時(shí)常數(shù) INC BP ;通道1端口地址送BP
MOV AX,TIME2 MOV BYTEPTR[BP],AL MOV BYTEPTR[BP],AH ;送通道1時(shí)常數(shù) INC BP第3節(jié)DMA控制器8237A主要內(nèi)容:DMA控制器的一般結(jié)構(gòu)和概要DMA控制器8237A的原理8237A的編程和使用基本問(wèn)題:說(shuō)明在DMA方式時(shí)內(nèi)存往外設(shè)傳輸數(shù)據(jù)的過(guò)程。DMA控制器初始化工作包括哪些內(nèi)容?DMA控制器在什么時(shí)候作為主模塊?什么時(shí)候作為從模塊?為什么CPU對(duì)DMA控制器提出的總線響應(yīng)要比中斷請(qǐng)求響應(yīng)快?DMA控制器
DMA控制器可以象CPU那樣得到總線控制權(quán),用DMA方式實(shí)現(xiàn)外部設(shè)備和存儲(chǔ)器之間的數(shù)據(jù)高速傳輸。
一個(gè)DMA控制器通??梢赃B接一個(gè)或幾個(gè)輸入/輸出接口,每個(gè)接口通過(guò)一組連線和DMA控制器相連。
將DMA控制器中和某個(gè)接口有聯(lián)系的部分為一個(gè)通道。而一個(gè)DMA控制器一般由幾個(gè)通道組成。DMA方式,外設(shè)向內(nèi)存?zhèn)鬏敂?shù)據(jù)的過(guò)程:當(dāng)一個(gè)接口中有數(shù)據(jù)要輸入時(shí),就往DMA控制器發(fā)個(gè)DMA請(qǐng)求;DMA控制器接到請(qǐng)求后,便往控制總線上發(fā)一個(gè)總線請(qǐng)求;如果CPU允許讓出總線,則發(fā)一個(gè)總線允許信號(hào);DMA控制器接到此信號(hào)后,就將地址寄存器的內(nèi)容送到地址總線上,同時(shí)往接口發(fā)一個(gè)DMA回答信號(hào),并發(fā)一個(gè)1/O讀信號(hào)和一個(gè)內(nèi)存寫(xiě)信號(hào);接口接到DMA回答信號(hào)以后,將數(shù)據(jù)送到數(shù)據(jù)總線上,并撤除DMA請(qǐng)求信號(hào);內(nèi)存在接收到數(shù)據(jù)以后,一般往DMA控制器回送一個(gè)準(zhǔn)備好信號(hào),于是,DMA控制器的地址寄存器內(nèi)容加1或減1,計(jì)數(shù)器的值減1,而且撤除總線請(qǐng)求信號(hào),這樣,就完成了對(duì)一個(gè)數(shù)據(jù)的DMA輸入傳輸。DMA傳輸結(jié)束時(shí),往接口發(fā)一個(gè)結(jié)束信號(hào),
向CPU交回總線控制權(quán)。其狀態(tài)寄存器的傳輸結(jié)束標(biāo)志置“1”。查詢時(shí),CPU在主程序中通過(guò)查詢狀態(tài)寄存器的傳輸結(jié)束標(biāo)志,決定是否進(jìn)行后續(xù)處理。中斷方式時(shí),結(jié)束信號(hào)可作為送到外設(shè)的中斷請(qǐng)求信號(hào)(也可以送到總線控制邏輯)。后續(xù)程序必須檢查出錯(cuò)標(biāo)志,確定是否重新傳輸、打印出錯(cuò)信息。注意:DMA控制器不能提供中斷類型號(hào)。圖6-8DMA控制器內(nèi)部編程結(jié)構(gòu)和外部連接8.3.18257芯片內(nèi)部結(jié)構(gòu)數(shù)據(jù)總線緩沖器讀寫(xiě)邏輯電路工作方式寄存器狀態(tài)寄存器優(yōu)先選擇邏輯4個(gè)DMA通道5.8257工作方式寄存器和狀態(tài)寄存器DMA控制器內(nèi)部包含一個(gè)控制器寄存器和一個(gè)狀態(tài)寄存器,一個(gè)地址寄存器和計(jì)數(shù)器。多通道時(shí),控制寄存器和狀態(tài)寄存器為本多個(gè)通道所公用,而地址寄存器和計(jì)數(shù)器為本每個(gè)通道所獨(dú)有。
DMA的初始化:
(1)將數(shù)據(jù)傳輸緩沖區(qū)的起始(結(jié)束)地址送到地址寄存器中。
(2)將傳輸?shù)淖止?jié)數(shù)(字?jǐn)?shù))送到計(jì)數(shù)器中。
三、8257A的編程和使用第8章小節(jié)一.中斷控制器1.中斷的概念中斷:外部中斷(硬件中斷):NMI.INTR內(nèi)部中斷(軟件中斷):INTn.INTO.單步中斷過(guò)程:中斷請(qǐng)求.中斷響應(yīng).中斷處理.中斷返回
2.8086中斷系統(tǒng)1)中斷類型:
硬件中斷(外部中斷)
內(nèi)部中斷:與硬件無(wú)關(guān),不執(zhí)行中斷響應(yīng)周期,除單步中斷外,內(nèi)部中斷不可屏蔽,優(yōu)先級(jí)高于外部中斷2)中斷向量表:00000~003FFH3.中斷響應(yīng)過(guò)程1).可屏蔽中斷響應(yīng)過(guò)程響應(yīng)條件:TF=1.無(wú)總線請(qǐng)求.當(dāng)前指令結(jié)束①CPU發(fā)中斷請(qǐng)求信號(hào)后,CPU回答信號(hào)INTA②8059給出中斷類型碼,CPU由中斷類型碼找到中斷向量的地址指針③CPU保護(hù)斷點(diǎn):將CS.IP.標(biāo)志寄存器內(nèi)容入棧④清IF.TF⑤查中斷向量表,取中斷服務(wù)程序首地址⑥執(zhí)行中斷處理程序⑦中斷返回2)非屏蔽中斷響應(yīng)過(guò)程由NMI引入,CPU優(yōu)先響應(yīng),類型碼為2.3).內(nèi)部中斷響應(yīng)由指令或硬件給出,無(wú)外部邏輯輸入無(wú)中斷響應(yīng)周期與IF無(wú)關(guān)除單步中斷外,內(nèi)部中斷優(yōu)先級(jí)高于外部中斷4.8259中斷控制器
可編
溫馨提示
- 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年北師大版必修2生物下冊(cè)階段測(cè)試試卷
- 醫(yī)院急救車輛停放管理
- 汽車維修行業(yè)設(shè)施維護(hù)守則
- 影視制作場(chǎng)地租賃合約
- 建筑工程安全生產(chǎn)管理辦法
- 項(xiàng)目管理與咨詢服務(wù)協(xié)議
- 2025年冀教版選擇性必修3物理上冊(cè)階段測(cè)試試卷
- 2025年外研版七年級(jí)科學(xué)下冊(cè)階段測(cè)試試卷
- 機(jī)場(chǎng)洗車場(chǎng)租賃協(xié)議
- MOOC 作物育種學(xué)-四川農(nóng)業(yè)大學(xué) 中國(guó)大學(xué)慕課答案
- 汽車租賃服務(wù)投標(biāo)方案(技術(shù)方案2)
- 2024年中考語(yǔ)文名著閱讀《儒林外史》內(nèi)容簡(jiǎn)介、主要人物形象及相關(guān)練習(xí)
- 流浪乞討人員救助工作總結(jié)
- 研究生實(shí)驗(yàn)方案
- 云南省昆明市盤(pán)龍區(qū)2023-2024學(xué)年高二上學(xué)期期末質(zhì)量檢測(cè)數(shù)學(xué)試題【含答案解析】
- 腎上腺皮質(zhì)功能減退通用課件
- 《安徒生童話》試題及答案
- 《社會(huì)工作概論》課件
- 化工生產(chǎn)操作工培訓(xùn)手冊(cè)
- 銀行催收外包服務(wù)投標(biāo)方案(技術(shù)標(biāo))
評(píng)論
0/150
提交評(píng)論