微機(jī)原理-第7章 常用數(shù)字接口電路_第1頁
微機(jī)原理-第7章 常用數(shù)字接口電路_第2頁
微機(jī)原理-第7章 常用數(shù)字接口電路_第3頁
微機(jī)原理-第7章 常用數(shù)字接口電路_第4頁
微機(jī)原理-第7章 常用數(shù)字接口電路_第5頁
已閱讀5頁,還剩76頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第7章

常用數(shù)字接口電路1主要內(nèi)容掌握二種可編程接口芯片的應(yīng)用了解串行通信的一般概念

2§7.1接口電路概述CPU與外設(shè)之間信息交換的通道作用:信息緩沖、信息變換、電平轉(zhuǎn)換、聯(lián)絡(luò)控制分類:8086系統(tǒng)中最常用的數(shù)字接口電路芯片有:8253、8255、8250功能傳送方式傳送的信息類型輸入接口并行接口數(shù)字量的輸入/輸出接口輸出接口串行接口模擬量的輸入/輸出接口3§7.2可編程定時/計(jì)數(shù)器8253引線功能及計(jì)數(shù)啟動方法6種工作方式及其輸出波形8253的使用:芯片與系統(tǒng)的連接、芯片的初始化編程4定時/計(jì)數(shù)器的用途可以實(shí)現(xiàn)定時與計(jì)數(shù)兩個功能,用于系統(tǒng)時鐘DRAM刷新定時定時采樣實(shí)時控制脈沖的計(jì)數(shù)5如何實(shí)現(xiàn)定時?軟件方法用一段程序?qū)崿F(xiàn)延時利用程序循環(huán)延遲指定的時間缺點(diǎn):CPU占用率?延時精度?兼容?硬件方法定時/計(jì)數(shù)器電路利用脈沖計(jì)數(shù)在設(shè)定的時間輸出定時信號8253是一種硬件定時/計(jì)數(shù)器芯片6§7.2.1外部引線及內(nèi)部結(jié)構(gòu)3個16位的定時/計(jì)數(shù)器(通道)24引腳雙列直插式最高計(jì)數(shù)頻率2MHzTTL電平兼容單電源+5V供電7外部引線片選信號OUT0GATE0GATE1OUT1GATE1OUT1A1A0#WR#RD#CS通道2通道1通道0CLK0CLK1CLK1A1#IOWA0#IOR8連接系統(tǒng)端的外部引線D7~D0#CS#RD#WRA1,A0

用于選擇四個編址部件之一A1A0選擇00計(jì)數(shù)通道001計(jì)數(shù)通道110計(jì)數(shù)通道211控制寄存器9全部引線結(jié)構(gòu)10計(jì)數(shù)器通道的外部引線每通道均相同,(n=0~2)CLKn

時鐘脈沖輸入,計(jì)數(shù)器的計(jì)時基準(zhǔn)。GATEn

門控信號輸入,控制計(jì)數(shù)器的啟停。OUTn計(jì)數(shù)器輸出信號,不同工作方式下產(chǎn)生不同波形。118253的內(nèi)部結(jié)構(gòu)編址部件0編址部件1編址部件2編址部件312編程結(jié)構(gòu)—程序員的觀點(diǎn)計(jì)數(shù)器(3個),包括:16位初值寄存器、16位計(jì)數(shù)寄存器(減法計(jì)數(shù)器)控制寄存器存放控制命令字(只寫)占用4個地址3個計(jì)數(shù)器、1個控制寄存器13定時/計(jì)數(shù)的工作過程設(shè)置8253的工作方式設(shè)置計(jì)數(shù)初值到初值寄存器第一個CLK信號使初值寄存器的內(nèi)容置入計(jì)數(shù)寄存器以后每來一個CLK信號,計(jì)數(shù)寄存器減1減到0時,OUT端輸出一特殊波形的信號注:以上計(jì)數(shù)過程中還受到GATE信號的控制14計(jì)數(shù)啟動方式軟件啟動——程序指令啟動啟動過程:GATE端保持為高電平;寫入計(jì)數(shù)初值后的第2個CLK脈沖的下降沿開始計(jì)數(shù)硬件啟動——外部電路信號啟動啟動過程:GATE端有一個上升沿;對應(yīng)CLK脈沖的下降沿開始計(jì)數(shù)15§7.2.18253的工作方式方式0——計(jì)數(shù)結(jié)束中斷方式1——可重復(fù)觸發(fā)的單穩(wěn)態(tài)觸發(fā)器方式2——頻率發(fā)生器方式3——方波發(fā)生器方式4——軟件觸發(fā)選通方式5——硬件觸發(fā)選通16方式0計(jì)數(shù)結(jié)束中斷特點(diǎn):軟件啟動,不自動重復(fù)計(jì)數(shù)裝入初值后OUT端變低電平計(jì)數(shù)結(jié)束OUT輸出高電平。17方式0的工作波形計(jì)數(shù)初值=4方式0中GATE的作用18方式1單穩(wěn)態(tài)觸發(fā)器特點(diǎn):硬件啟動,不自動重復(fù)計(jì)數(shù)。裝入初值后OUT端變高電平,計(jì)數(shù)開始OUT端變?yōu)榈碗娖剑?jì)數(shù)結(jié)束后又變高。19方式1工作波形正常情況提前觸發(fā)20方式2頻率發(fā)生器特點(diǎn):軟、硬件啟動,自動重復(fù)計(jì)數(shù)。裝入初值后OUT端變高電平,計(jì)數(shù)到最后一個CLK時OUT輸出負(fù)脈沖,并連續(xù)重復(fù)此過程。21方式2工作波形22方式3方波發(fā)生器特點(diǎn):軟、硬件啟動,自動重復(fù)計(jì)數(shù)。裝入初值后OUT端變高電平,然后OUT連續(xù)輸出對稱方波:

前N/2或(N+1)/2個CLK,OUT為高,后N/2或(N-1)/2個CLK,OUT為低。23方式3工作波形24方式4軟件觸發(fā)選通特點(diǎn):軟件啟動,不自動重復(fù)計(jì)數(shù)。裝入初值后輸出端變高電平,計(jì)數(shù)結(jié)束輸出一個CLK寬度的負(fù)脈沖25方式4工作波形26方式5硬件觸發(fā)選通特點(diǎn):硬件啟動,不自動重復(fù)計(jì)數(shù)。OUT端波形與方式4相同27方式5工作波形28各種工作方式特點(diǎn)方式0(計(jì)數(shù)結(jié)束中斷)計(jì)數(shù)過程中,GATE端應(yīng)保持高電平。每寫入一次初值計(jì)數(shù)一個周期,然后停止計(jì)數(shù)。OUT端輸出是一個約(N+1)TCLK寬度的負(fù)脈沖。計(jì)數(shù)過程中可隨時修改初值重新開始計(jì)數(shù)。方式1(單穩(wěn)態(tài)觸發(fā)器)門控信號GATE端的跳變觸發(fā)計(jì)數(shù),可重復(fù)觸發(fā)。若下一次GATE上升沿提前到達(dá),則OUT端負(fù)脈沖拉寬為兩次計(jì)數(shù)過程之和。計(jì)數(shù)過程中寫入新初值不影響本次計(jì)數(shù)。29各種工作方式特點(diǎn)方式2(頻率發(fā)生器)GATE為計(jì)數(shù)的控制信號:GATE變低計(jì)數(shù)停止,再變高時的下一個CLK下降沿,從初值開始重新數(shù)。每個計(jì)數(shù)周期結(jié)束時(減到1時),OUT端輸出一個TCLK寬度的負(fù)脈沖。計(jì)數(shù)過程自動重復(fù)進(jìn)行。計(jì)數(shù)過程中修改初值不影響本輪計(jì)數(shù)過程。方式3(方波發(fā)生器)OUT輸出方波,前半周期為高,后半周期為低。計(jì)數(shù)過程中修改初值不影響本半輪計(jì)數(shù)過程。其余的與方式2類似。30各種工作方式特點(diǎn)方式4(軟件觸發(fā)選通)計(jì)數(shù)過程中,GATE端應(yīng)保持高電平。每寫入一次初值,計(jì)數(shù)一個周期,然后停止計(jì)數(shù)。每個計(jì)數(shù)周期結(jié)束時(減到0時),OUT端輸出一個TCLK寬度的負(fù)脈沖。計(jì)數(shù)過程中修改初值不影響本輪計(jì)數(shù)過程。方式5(硬件觸發(fā)選通)寫入初值時,GATE端應(yīng)保持低電平。GATE每出現(xiàn)一次正脈沖,計(jì)數(shù)一個周期,然后停止計(jì)數(shù)。每個計(jì)數(shù)周期結(jié)束時(減到0時),OUT端輸出一個TCLK寬度的負(fù)脈沖。計(jì)數(shù)過程中修改初值不影響本輪計(jì)數(shù)過程。318253工作方式一覽表工作方式啟動計(jì)數(shù)中止計(jì)數(shù)自動重復(fù)更新初值輸出波形0軟GATE=0立即有效延時時間可變的上跳沿1硬/下一輪有效寬度為N×TCLK的單一負(fù)脈沖2軟/硬GATE=0√下一輪有效周期為N×TCLK寬度為TCLK的連續(xù)負(fù)脈沖3軟/硬GATE=0√下半輪有效周期為N×TCLK的連續(xù)方波4軟GATE=0下一輪有效寬度為TCLK的單一負(fù)脈沖5硬/下一輪有效寬度為TCLK的單一負(fù)脈沖32§7.2.28253的控制字用于確定各計(jì)數(shù)器的工作方式。8253必須先初始化才能正常工作。每個計(jì)數(shù)器都必須初始化一次。CPU通過OUT指令把控制字寫入控制寄存器。33控制字格式34§7.2.48253的應(yīng)用與系統(tǒng)的連接設(shè)置工作方式置計(jì)數(shù)初值358253占用4個接口地址:

計(jì)數(shù)器0

計(jì)數(shù)器1

計(jì)數(shù)器2

控制寄存器與系統(tǒng)的連接示意圖CLKGATEOUTD0~D7#WR#RDA1A0#CSDB#IOW#IORA1A0譯碼器高位地址A15-A28253共三組(決定8253的基地址)36初始化程序流程寫控制字寫計(jì)數(shù)值低8位寫計(jì)數(shù)值高8位非必須寫入順序:可按計(jì)數(shù)器分別寫入控制字和初值。也可先寫所有計(jì)數(shù)器控制字,再寫入它們的初值37[8253使用舉例]采用8253作定時/計(jì)數(shù)器,其接口地址為0120H~0123H。輸入8253的時鐘頻率為2MHz。計(jì)數(shù)器0:每10ms輸出1個CLK脈沖寬的負(fù)脈沖計(jì)數(shù)器1:產(chǎn)生10KHz的連續(xù)方波信號計(jì)數(shù)器2:啟動計(jì)數(shù)5ms后OUT輸出高電平。畫線路連接圖,并編寫初始化程序。38計(jì)算初值確定計(jì)數(shù)初值:CNT0:10ms/0.5us=20000CNT1:2MHz/10KHz=200CNT2:5ms/0.5us=10000確定控制字:

CNT0:方式2,16位計(jì)數(shù)值00110100CNT1:方式3,低8位計(jì)數(shù)值01010110CNT2:方式0,16位計(jì)數(shù)值1011000039線路連接CLK0GATE0OUT1D0~D7#WR#RDA1A0#CSDB#IOW#IORA1A0譯碼器8253CLK2GATE1GATE2+5VCLK12MHzOUT0OUT240初始化程序CNT0:MOVDX,0123HMOVAL,34HOUTDX,ALMOVDX,0120HMOVAX,20000OUTDX,ALMOVAL,AHOUTDX,ALCNT1:……CNT2:……41*如何讀出當(dāng)前計(jì)數(shù)值第1種方法——在計(jì)數(shù)過程中讀計(jì)數(shù)值先鎖存當(dāng)前計(jì)數(shù)值,再用兩條輸入指令將16位計(jì)數(shù)值讀出。第2種方法——停止計(jì)數(shù)器再讀用GATE信號使計(jì)數(shù)器停止,再規(guī)定RL1和RL0的讀寫格式,然后讀出。42*擴(kuò)展定時/計(jì)數(shù)范圍當(dāng)定時長度不夠時,可把2個或3個計(jì)數(shù)通道串聯(lián)起來使用,甚至可把多個8253串聯(lián)起來使用。如:CLK頻率為1MHz,要求在OUT1端產(chǎn)生頻率1Hz的脈沖。這時可將計(jì)數(shù)器0、1串聯(lián),工作方式都均為方式3,計(jì)數(shù)初值均為1000。連接方法見下頁。43擴(kuò)展定時/計(jì)數(shù)范圍8253OUT1GATE1CLK1OUT0GATE0CLK0+5V+5V1MHz1KHz1Hz44小結(jié)包含3個16位計(jì)數(shù)器通道4個編址部件:CNT0/1/2和控制寄存器每個計(jì)數(shù)器通道工作前必須初始化:控制字和計(jì)數(shù)初值6種工作方式每種工作方式:啟動方式、輸出波形、是否可重復(fù)計(jì)數(shù)等各不相同45§7.3可編程并行接口8255特點(diǎn):含3個獨(dú)立的8位并行輸入/輸出端口,各端口均具有數(shù)據(jù)的控制和鎖存能力可通過編程設(shè)置各端口的工作方式和數(shù)據(jù)傳送方向(入/出/雙向)。46§7.3.18255的引線及結(jié)構(gòu)47連接系統(tǒng)端的引線D0~D7#CS#RD#WRA0,A1

RESET復(fù)位信號,接系統(tǒng)總線的RESETA1A0選擇00端口A01端口B10端口C11控制寄存器48連接外設(shè)端的引線分別對應(yīng)A、B、C三個8位輸入/輸出端口PA0~PA7PB0~PB7PC0~PC7

三個端口可通過編程分別指定為輸入或輸出口。其中,C口即可用作獨(dú)立的輸入/輸出口,也可用作A、B口的控制信號輸出或狀態(tài)信號輸入。49結(jié)構(gòu)A組端口A、端口C的高4位B組端口B、端口C的低4位50結(jié)構(gòu)518255與系統(tǒng)的連接示意圖D0~D7#WR#RDA1A0#CSDB#IOW#IORA1A0譯碼器8255A口B口C口D0~D7外設(shè)A15~A2系統(tǒng)總線52§7.3.28255工作方式基本輸入/輸出方式(方式0)選通工作方式(方式1)雙向傳送方式(方式2)(僅A口)

某端口工作于哪一種方式,可通過軟件編程來指定。即向8255寫入方式控制字來決定其工作方式。53工作方式08255相當(dāng)于三個獨(dú)立的8位簡單接口。各端口既可設(shè)置為輸入口,也可設(shè)置為輸出口,但不能同時實(shí)現(xiàn)輸入及輸出。C端口即可以是一個8位的簡單接口,也可以分為兩個獨(dú)立的4位端口。設(shè)置為輸出口時有鎖存能力,設(shè)置為輸入口時無鎖存能力。54方式0的應(yīng)用用于連接簡單外設(shè)適用于:無條件輸入輸出方式。查詢輸入輸出方式:把A、B口作為8位數(shù)據(jù)的輸入或輸出口,C口的高/低4位分別定義為A、B口的控制位和狀態(tài)位。55工作方式1利用一組選通控制信號控制A端口和B端口的數(shù)據(jù)輸入輸出。A、B口作輸入或輸出口,C口的部分位固定用作A、B口的選通控制信號。A口、B口在作為輸入和輸出時的選通信號不同。56C口的信號功能(方式1輸入)STB#選通信號。它將外設(shè)數(shù)據(jù)送入8255的輸入鎖存器。IBF輸入鎖存器滿。通知外設(shè)不能送下一個數(shù)據(jù)。此信號由STB的前沿產(chǎn)生。CPU用IN指令取走數(shù)據(jù)后,此信號被清除。INTR中斷請求。STB#的后沿產(chǎn)生,用于中斷CPU,讓CPU讀走輸入鎖存器中的數(shù)據(jù)。INTE中斷允許位,是否允許發(fā)出INTR請求。INTE=1和IBF為高電平時,允許發(fā)出INTR請求。57方式1輸入信號58方式1輸入工作時序59C口的信號功能(方式1輸出)OBF#通知外設(shè)取走數(shù)據(jù)。ACK#外設(shè)響應(yīng)信號,表示已從數(shù)據(jù)端口取走數(shù)據(jù)。此信號使OBF變高。INTRACK#上升沿產(chǎn)生,通知CPU輸出下一個數(shù)據(jù)(通常接到8259)。INTE中斷允許位,INTE=1和OBF#為高電平時,允許產(chǎn)生INTR信號。60方式1輸出信號61方式1輸出工作時序62注意INTE的狀態(tài)可利用C口的位控方式來設(shè)置:輸入:A口的INTE:寫入PC4B口的INTE:寫入PC2輸出:A口的INTE:寫入PC6B口的INTE:寫入PC2如:方式1輸入允許A口中斷,則應(yīng)按如下方法設(shè)置INTEA。MOVDX,控制寄存器地址MOVAL,0xxx1001B;1=允許中斷,0=禁止中斷OUTDX,AL63方式1的應(yīng)用主要用于中斷控制方式下的輸入輸出。C口除部分位用作選通信號外,其余位可工作在方式0下,作為輸入或輸出線。特別是A、B均為方式1時僅使用C口的6條線,余下二條線可作為單獨(dú)的輸入輸出線,用程序指定其數(shù)據(jù)傳送方向。64工作方式2雙向方式——既是輸入口,又是輸出口。利用C口的5條線提供傳輸聯(lián)絡(luò)信號。類似于A口方式1下輸入和輸出的組合。只有A口可工作在方式2下。INTE1為PC.bit6,INTE2為PC.bit4。65方式2信號66方式2工作時序67方式2的應(yīng)用可用于中斷控制輸入輸出方式。當(dāng)A口工作于方式2時,B口可工作于方式1(此時C口的剩余位都用作B口選通控制線);B口也可工作于方式0(此時C口的剩余位也只能用作方式0下的輸入輸出線)。68方式控制字及位控字可以利用軟件編程確定8255的3個端口工作于何種方式下;8255的C端口可以按位操作。當(dāng)其工作于方式0下且作為輸出口時,對于那些作為輸出的位需要設(shè)置初始狀態(tài)(1/0)。69§7.3.3方式控制字及狀態(tài)字控制字確定3個端口的工作方式位控字確定C口某一位的初始狀態(tài),或用于設(shè)置INTE位(方式1,2)。70控制字71狀態(tài)字72§7.3.3方式8255的應(yīng)用芯片與系統(tǒng)的連接芯片的初始化相應(yīng)的控制程序73[例7-3線路連接圖]74[例7-3時序圖]75[8255使用舉例]利用8255實(shí)現(xiàn)開關(guān)檢測和繼電器控制電路;當(dāng)開關(guān)閉合時,使繼電器通電動作;開關(guān)斷開時,繼電器不動作;系統(tǒng)每隔100ms檢測一次開關(guān)狀態(tài),實(shí)現(xiàn)相應(yīng)的繼電器控制;初始狀態(tài)下繼電器不動作。76#CSA0A1#WR#RDDBPA0PA7???PB0PB7???384H~387H388H~38BH#CSA0A1OUT1CLK12MHzCLK0OUT08259APIC#WR#RDDB82538255中斷請求信號INTR+12V繼電器Q1R1D1+5VKR277計(jì)算初值使8255的A端口和

溫馨提示

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

評論

0/150

提交評論