第7章可編程接口芯片的知識_第1頁
第7章可編程接口芯片的知識_第2頁
第7章可編程接口芯片的知識_第3頁
第7章可編程接口芯片的知識_第4頁
第7章可編程接口芯片的知識_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第7章可編程接口芯片微機原理與接口技術1主要內(nèi)容可編程接口概述可編程并行輸入/輸出接口芯片8255A可編程定時/計數(shù)器接口芯片82532可編程接口概述可編程接口:用戶可以通過指令設置接口的工作模式,提高計算機硬件系統(tǒng)的靈活性。典型電路:簡單的具有輸入和輸出功能的可編程接口電路目前常用的可編程芯片:8255A 并行I/O接口8253 計數(shù)器/定時器8251 串行I/O8259A 中斷控制器

3什么是并行通信?

把一個字符的各位用幾條線同時進行傳輸。特點:傳輸速度快、信息率高但成本高(使用電纜多)。應用范圍:傳輸距離較短(幾米至幾十米)、數(shù)據(jù)傳輸率較高的場合。

7.1可編程并行接口芯片8255A并行并行接口CPU接口外設…...…...4數(shù)據(jù)輸出

控制寄存器輸入緩沖寄存器輸出緩沖寄存器DBAB7.1可編程并行接口芯片8255A并行接口——實現(xiàn)并行通信的接口?并行接口與CPU、外部設備如何連接?并行接口如何實現(xiàn)并行通信(輸入/輸出)輸出設備地址譯碼CPU片選A0A1并行接口狀態(tài)寄存器讀出信號寫入信號復位準備好中斷請求數(shù)據(jù)輸入回答數(shù)據(jù)輸入準備好數(shù)據(jù)輸入輸入設備數(shù)據(jù)輸出回答數(shù)據(jù)輸出準備好57.1可編程并行接口芯片8255A

?8255A是一個什么芯片

?8255A芯片的內(nèi)部結構是怎樣的

?8255A芯片如何工作Intel8255A是一個通用的可編程的并行接口芯片,它有三個并行I/O口,又可通過編程設置多種工作方式。價格低廉,使用方便,在中小系統(tǒng)中有著廣泛的應用。

6

7.1可編程并行接口芯片8255A7.1.18255A芯片內(nèi)部結構及其功能內(nèi)部結構:(1)端口(2)A、B組控制部件(3)數(shù)據(jù)總線緩沖器(4)讀/寫控制部件77.1可編程并行接口芯片8255A7.1.28255A的管腳分配引腳(40)8

7.1可編程并行接口芯片8255A7.1.38255A芯片的工作方式及編程

8255A有三種工作方式,用戶可以通過編程來設置。方式0――簡單輸入/輸出 A,B,C三個端口均可。方式1――選通輸入/輸出 A,B,兩個端口均可。方式2――雙向輸入/輸出 只有A端口才有。

8255A的編程:在使用8255前,用戶可用軟件來定義端口的工作方式,選擇所需要的功能。

控制字9(1)8255的工作方式字(寫入A1A0=11)7.1可編程并行接口芯片8255A控制字D0D1D2D3D4D5D6D7PC3~PC01:輸入0:輸出B口1:輸入0:輸出B組工作方式0:方式01:方式1PC7~PC41:輸入0:輸出A口1:輸入0:輸出A組工作方式00:方式001:方式11×:方式2D7=1特征位B組A組[例]某系統(tǒng)要求使用8255A的A口方式0輸入,B口方式0輸出,C口高4位方式0輸出,C口低4位方式0輸入。方式控制字=?

10010001B=91H10(2)C口的置位/復位字(寫入A1A0=11)

7.1可編程并行接口芯片8255A控制字D0D1D2D3D4D5D6D71:置位0:復位C口選擇000:PC0001:PC1010:PC2011:PC3100:PC4101:PC5110:PC6111:PC7任選(可1可0)D7=0(特征位)[例]把C口的第六位PC5置為1。

MOVAL,00001011B ;PC5置位OUT63H,AL117.1可編程并行接口芯片8255A

7.1.48255A工作方式的功能及應用舉例

工作方式0為一種簡單的輸入/輸出方式,沒有規(guī)定固定的應答聯(lián)絡信號。

可供使用的端口:兩個8位口(A口和B口)及兩個4位口(C口高4位部分和低4位部分)。四個口可以是輸入和輸出的任何組合。

適用范圍:(1)無條件數(shù)據(jù)傳送;(2)把C口的某一位作為狀態(tài)位,實現(xiàn)查詢方式的數(shù)據(jù)傳送。12

[例1]8255A的A口和B口工作在方式0,A口為輸入端口,接有四個開關。B口為輸出端,接有一個七段發(fā)光二極管,連接電路如圖所示。試編一程序要求七段發(fā)光二班管顯示開關所撥通的數(shù)字。137.1可編程并行接口芯片8255A

7.1.48255A工作方式的功能及應用舉例工作方式1:是一種選通I/O方式

A口和B口仍作為兩個獨立的8位I/O數(shù)據(jù)通道,

C口要有6位(分成兩個3位)分別作為A口和B口的應答聯(lián)絡線,其余2位仍可工作在方式0,可通過編程設置為輸入或輸出。

14

7.1可編程并行接口芯片8255A7.1.48255A工作方式的功能及應用舉例工作方式1:是一種選通I/O方式

輸入組態(tài)

·:選通輸入。用來將外設輸入的數(shù)據(jù)送入8255A的輸入緩沖器。·IBF:輸入緩沖器滿。作為的回答信號?!NTR:中斷請求信號。INTR置位的條件:IBF(=1)+后沿置INTE為高?!NTE:中斷允許。對A口來講,是由PC4置位來實現(xiàn),對B口來講,則是由PC2置位來實現(xiàn)。事先將其置位。15

7.1可編程并行接口芯片8255A7.1.48255A工作方式的功能及應用舉例工作方式1:是一種選通I/O方式

輸出組態(tài)

·:輸出緩沖器滿。用來通知外設可以從8255A取數(shù)?!ぃ旱捻憫盘?,表示外設已將數(shù)據(jù)從8255A的輸出緩沖器中取走?!NTR:中斷請求信號。INTR置位的條件是:

(=1)+INTE(=1)?!NTE:中斷允許。對A口來講,由PC6的置位來實現(xiàn),對B口仍是由PC2的置位來實現(xiàn)。167.1可編程并行接口芯片8255A

7.1.48255A工作方式的功能及應用舉例

工作方式2

雙向選通I/O方式,即工作方式0與工作方式1的組合。

可供使用的端口:

只有A口才有此方式。這時,C口有5根

線用作A口的應答聯(lián)絡信號,其余3根

線可用作方式0,也可用作B口方式1的應答聯(lián)絡線。

適用范圍:

如果一個并行外部設備既可以作為輸入設備,又可以作為輸出設備,并且輸入輸出動作不會同時進行。

177.1可編程并行接口芯片8255A

7.1.48255A工作方式的功能及應用舉例

工作方式2

外設回答信號。由外設發(fā)出。當其有效時,表示外設已接收數(shù)據(jù)。A口的輸出緩沖器“滿”信號,當其有效時表示A口的輸出緩沖器已暫存一個有效數(shù)據(jù)。A口的中斷請求信號。當其有效時,8255A的A口向CPU申請中斷,要求CPU訪問A口。中斷允許信號中斷允許信號A口的輸入緩沖器“滿”信號,當其有效時表示A口的輸入緩沖器已暫存一個有效數(shù)據(jù)。A口的選通信號,當其有效時,外設把數(shù)據(jù)打入A口的輸入緩沖器。187.2可編程定時/計數(shù)器接口芯片8253學習重點

8253的引腳和六種工作方式

8253的編程定時控制在微機系統(tǒng)中具有極為重要的作用,計數(shù)是許多過程控制領域常用的功能;它們都是由數(shù)字電路中的計數(shù)電路構成;定時器由數(shù)字電路中的計數(shù)電路構成,通過記錄高精度晶振脈沖信號的個數(shù),輸出準確的時間間隔;計數(shù)電路如果記錄外設提供的具有一定隨機性的脈沖信號時,它主要反映脈沖的個數(shù)(進而獲知外設的某種狀態(tài)),常又稱為計數(shù)器.197.2可編程定時/計數(shù)器接口芯片8253計數(shù)與定時定時或計數(shù)的工作實質(zhì)均體現(xiàn)為對脈沖信號的計數(shù)。如果計數(shù)的對象是標準的內(nèi)部時鐘信號,由于其周期恒定,故計數(shù)值就恒定地對應于一定的時間,這一過程即為定時。如果計數(shù)的對象是與外部過程相對應的脈沖信號(周期可以不相等),則此時即為計數(shù)。20定時功能的實現(xiàn)方法:(1)軟件延時利用微處理器執(zhí)行一個延時程序段實現(xiàn)不用硬件,但占用CPU時間、定時精度不高,隨系統(tǒng)時鐘頻率改變(2)不可編程的硬件定時采用分頻器、單穩(wěn)電路或簡易定時電路控制定時時間定時電路簡單、定時時間可以在一定范圍改變(3)可編程的硬件定時軟件硬件相結合、用可編程定時器芯片構成一個方便靈活的定時電路具有多種工作方式、能夠輸出多種控制信號7.2可編程定時/計數(shù)器接口芯片8253217.2可編程定時/計數(shù)器接口芯片8253功能3個獨立的16位計數(shù)器通道;每個計數(shù)器有6種工作方式,可以由程序設定和改變;按二進制或十進制(BCD碼)計數(shù);每個計數(shù)器的計數(shù)速率可以高達2.6MHz;所有的輸入、輸出電平都與TTL兼容。8254是8253的改進型Intel8253可編程計數(shù)/定時接口芯片227.2可編程定時/計數(shù)器接口芯片82537.2.1

內(nèi)部結構功能:(1)定時(2)計數(shù)(3)輸出脈沖序列減1計數(shù)23計數(shù)器預置寄存器GATECLKOUT減1計數(shù)器輸出鎖存器計數(shù)初值存于預置寄存器;在計數(shù)過程中,減法計數(shù)器的值不斷遞減,而預置寄存器中的預置不變。輸出鎖存器用于寫入鎖存命令時,鎖定當前計數(shù)值(1)CLK時鐘輸入信號在計數(shù)過程中,此引腳上每輸入一個時鐘信號(下降沿),計數(shù)器的計數(shù)值減1(2)GATE門控輸入信號控制計數(shù)器工作,可分成電平控制和上升沿控制兩種類型(3)OUT計數(shù)器輸出信號當一次計數(shù)過程結束(計數(shù)值減為0),OUT引腳上將產(chǎn)生一個輸出信號247.2可編程定時/計數(shù)器接口芯片82538253的管腳(24)與CPU相連雙向數(shù)據(jù)線:D0~D7;控制信號線:、

、、A0、A1與脈沖信號通道相關計數(shù)脈沖輸入引腳:CLKi(i=0,1,2)門控信號輸入引腳:GATEi(i=0,1,2)定時/計數(shù)到信號輸出引腳:OUTi(i=0,1,2)電源與地信號VCC(+5V)、GND257.2可編程定時/計數(shù)器接口芯片8253共有6種工作方式(由方式控制字確定)。各方式下的工作狀態(tài)是不同的,輸出的波形也不同,其中比較靈活的是門控信號的作用。每種工作方式的過程類似:

⑴設定工作方式; ⑵設定計數(shù)初值; 〔⑶硬件啟動;〕 ⑷計數(shù)初值進入減1計數(shù)器; ⑸每輸入一個時鐘,計數(shù)器減1的計數(shù)過程; ⑹計數(shù)過程結束。7.2.28253的工作方式267.2可編程定時/計數(shù)器接口芯片8253方式0:計數(shù)結束中斷(在預定時間點上處理事物)①②⑤④⑥GATEOUTCLK

031244方式0WR①設定工作方式②設定計數(shù)初值④計數(shù)值送入計數(shù)器⑤計數(shù)過程⑥計數(shù)結束特點:GATE=1,才能計數(shù);計數(shù)到0,OUT由低變高,計數(shù)器停止工作。計數(shù)初值一次有效277.2可編程定時/計數(shù)器接口芯片8253方式1:可編程單穩(wěn)脈沖①②⑤④⑥①設定工作方式②設定計數(shù)初值③③硬件啟動④計數(shù)值送入計數(shù)器⑤計數(shù)過程GATEOUTCLK

031244方式1WR⑥計數(shù)結束特點:GATE的上升沿觸發(fā)開始計數(shù),OUT由高變低;計數(shù)到0,OUT由低變高,產(chǎn)生一負脈沖。負脈沖寬度PW=NTCLK287.2可編程定時/計數(shù)器接口芯片8253方式2:頻率發(fā)生器(分頻器)03124GATEOUTCLK

4方式2031240312403124WR特點:GATE=1,才能計數(shù);計數(shù)器“減1”計數(shù)到1時,OUT由高變低,再經(jīng)過1個CLK周期,即計數(shù)到0,OUT又跳變?yōu)楦摺]敵鲋芷谛载撁}沖,寬度為1個CLK周期。計數(shù)器的值減為0時,自動重裝計數(shù)初值,實現(xiàn)循環(huán)計數(shù)。297.2可編程定時/計數(shù)器接口芯片8253方式3:方波發(fā)生器03124GATEOUTCLK

4方式3031240312403124WR特點:與方式2工作過程幾乎完全一樣。區(qū)別:若計數(shù)初值n為偶數(shù),則當計數(shù)值減到n/2時,OUT變?yōu)榈碗娖?,直到計?shù)值減為0,OUT又跳變?yōu)楦?。若計?shù)初值n為奇數(shù),則當計數(shù)值減到(n+1)/2時,OUT變?yōu)榈碗娖?,直到計?shù)值減為0,OUT又跳變?yōu)楦摺?07.2可編程定時/計數(shù)器接口芯片8253方式4:軟件觸發(fā)選通信號GATEOUTCLK031244方式42233310WR1特點:GATE=1,計數(shù)器開始“減1”計數(shù),OUT維持高電平;計數(shù)器減到0時,OUT變低。再經(jīng)過1個CLK周期,OUT又變高。輸出OUT在計數(shù)器溢出時產(chǎn)生1個CLK周期的負脈沖。計數(shù)初值一次有效317.2可編程定時/計數(shù)器接口芯片8253方式5:硬件觸發(fā)選通信號GATEOUTCLK031244方式522333110WR特點:與方式4很相似。區(qū)別:當計數(shù)值寫入通道計數(shù)器后,通道并未觸發(fā),只有GATE的觸發(fā)通道后,才開始計數(shù)。計數(shù)器減到0時,OUT變低,再經(jīng)過1個CLK周期,OUT又變高。OUT輸出一個寬度固定為1個CLK周期的負脈沖。327.2可編程定時/計數(shù)器接口芯片8253各種方式下的波形方式0方式1方式2方式3方式4方式50N0N0N0/N110NN/2N/20/N0N01N01N01計數(shù)結束中斷可編程單穩(wěn)脈沖頻率發(fā)生器方波發(fā)生器軟件觸發(fā)硬件觸發(fā)討論:計數(shù)開始的時刻337.2可編程定時/計數(shù)器接口芯片8253工作方式小結與頻率發(fā)生器有關:方式2、方式3與計數(shù)工作有關:方式0、4(軟啟動);方式1、5(硬啟動)工作方式啟動方式“溢出方式”計數(shù)值使用方式0軟件啟動OUT為正電平一次有效方式1GATE上升沿OUT為正電平自動重裝方式2軟件啟動OUT為負脈沖自動重裝方式3軟件啟動OUT為方波自動重裝方式4軟件啟動OUT為負脈沖一次有效方式5GATE上升沿OUT為負脈沖自動重裝347.2可編程定時/計數(shù)器接口芯片8253(1)8253加電后的工作方式不確定(2)8253必須初始化編程,才能正常工作寫入控制字寫入計數(shù)初值讀取計數(shù)值D7D6D5D4D3D2D1D07.2.3

8253的編程35計數(shù)器讀寫格式工作方式數(shù)制D7D6D5D4D3D2D1D000計數(shù)器001計數(shù)器110計數(shù)器211非法00計數(shù)器鎖存命令01只讀寫低字節(jié)10只讀寫高字節(jié)11先讀寫低字節(jié)后讀寫高字節(jié)000方式0001方式1010方式2011方式3100方式4101方式50二進制1十進制控制字寫入控制字I/O地址(A1A0=11)(1)寫入方式控制字36(a)選擇二進制計數(shù)值范圍:0000H-FFFFH0000H是最大值,代表65536(b)選擇十進制(BCD碼)計數(shù)值范圍:0000-99990000代表最大值10000計數(shù)值寫入計數(shù)器各自的I/O地址(2)寫入計數(shù)值37(1)對8位數(shù)據(jù)線,讀取16位計數(shù)值需分兩次(2)計數(shù)在不斷進行,應該將當前計數(shù)值先行鎖存,然后讀?。合蚩刂谱諭/O地址:給8253寫入鎖存命令從計數(shù)器I/O地址:讀取鎖存的計數(shù)值讀取計數(shù)值,要注意讀寫格式和計數(shù)數(shù)制(3)讀取計數(shù)值38(4)計數(shù)初值的計算7.2.28253/8254的工作方式

計數(shù)初值=定時時間/時鐘脈沖周期=fCLK/fOUT例:8253在方式3下,輸出周期性方波,可作定時單位。設計數(shù)初值為65536,當fCLK=1.1931816M時,輸出方波頻率為18.2HZ.周期為54.954MS.則一天=24X60X60X1000MS/54.954MS=1573040,或1800B0H,且一小時=65543,一分鐘=1092,一秒呢?在BIOS中就是利用上述原理計時的。

397.2.48253在IBMPC系列機上的應用7.2計數(shù)器/定時器8253A0A1———A0—A1—D0~D7D0~D7OUT1OUT2OUT0GATE0GATE1GATE2CLK0CLK1CLK2DQCLK+5V接至DMA控制器接至揚聲器驅(qū)動器PB0PB18259A(IR0)DRQ0

8253+5V1.19318MHzDACK0BRDIORIOWRDWRCST/CCS40(1)定時中斷和定時刷新從閱讀初始化程序段看計數(shù)器0作為定時中斷的作用將計數(shù)器1作為定時刷新看如何編寫初始化程序段7.2.48253在IBMPC系列機上的應用41(a)計數(shù)器0:定時中斷(1)計數(shù)器0:方式3,計數(shù)初值為0(即65536),輸出頻率為1.19318MHz÷65536=18.206Hz的方波(2)門控為常啟狀態(tài),這個方波信號不斷產(chǎn)生(3)OUT0端接8259A的IRQ0,用作中斷請求信號(4)每秒產(chǎn)生18.206次中斷請求,或說每隔55ms(54.925493ms)申請一次中斷(5)DOS系統(tǒng)利用計數(shù)器0的這個特點,通過08號中斷服務程序?qū)崿F(xiàn)了日時鐘計時功能7.2.48253在IBMPC系列機上的應用(1)定時中斷和定時刷新42(b)計數(shù)器0:初始化程序moval,36h

;36H=00110110B;計數(shù)器0為方式3,采用二進制計數(shù);先低后高寫入計數(shù)值out43h,al

;寫入方式控制字moval,0

;計數(shù)值為0out40h,al

;寫入低字節(jié)計數(shù)值out40h,al ;寫入高字節(jié)計數(shù)值7.2.48253在IBMPC系列機上的應用43(c)計數(shù)器1:用于產(chǎn)生動態(tài)RAM的定時刷新信號(1)需要重復不斷提出刷新請求門控總為高,選擇方式2或3(2)2ms內(nèi)刷新128次,即15.6s刷新一次計數(shù)初值為1.19318MHz×15.6s=187.2.48253在IBMPC系列機上的應用44(d)計數(shù)器1:初始化程序moval,54

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論