版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1
可編程接口芯片及其應(yīng)用
28.1可編程接口芯片概述片選概念讀/寫概念可編程接口的概念“聯(lián)絡(luò)”的概念38.1可編程接口芯片概述 接口電路中多數(shù)具有如下電路單元:(1)輸入/輸出數(shù)據(jù)鎖存器和緩沖器 用以解決CPU與外設(shè)之間速度不匹配的矛盾, 以及起隔離和緩沖的作用;(2)控制命令和狀態(tài)寄存器 以存放CPU對(duì)外設(shè)的控制命令, 以及外設(shè)的狀態(tài)信息;4(3)地址譯碼器 用來(lái)選擇接口電路中的不同端口(寄存器);(4)讀寫控制邏輯;(5)中斷控制邏輯。 從早期的邏輯電路板到大規(guī)模集成電路芯片為主的接口芯片。5
8.1.1片選概念 必須要有一個(gè)地址信號(hào)選中接口芯片后,才能使該接口芯片進(jìn)入電路工作狀態(tài),實(shí)現(xiàn)數(shù)據(jù)的輸入/輸出。 選通端CE(ChipEnable),又稱片選端CS(ChipSelect)。 CE端是控制接口芯片進(jìn)入電路工作狀態(tài)的引腳端。68.1.2讀/寫概念:用IN,OUT指令讀/寫。8.1.3可編程接口的概念 接口芯片大部分是多通道、多功能的。 多通道是指一個(gè)接口芯片一面與CPU連接,另一面可接幾個(gè)外設(shè); 多功能是指一個(gè)接口芯片能實(shí)現(xiàn)多種接口功能,實(shí)現(xiàn)不同的電路工作狀態(tài)。7
在接口芯片中,各硬件單元不是固定接死的,可由用戶在使用中選擇,即通過計(jì)算機(jī)的指令來(lái)選擇不同的通道和不同的電路功能,稱為“編程控制”。接口電路的組態(tài)(即電路工作狀態(tài))可由計(jì)算機(jī)指令來(lái)控制的接口芯片稱為“可編程序接口芯片”。 用來(lái)存放控制電路組態(tài)的控制字節(jié)的寄存器,稱為“控制寄存器”。8
8.1.4“聯(lián)絡(luò)”的概念
接口芯片常常需要和外設(shè)間有一定的“聯(lián)絡(luò)”信號(hào),以保證信息的正常傳送。 通常采用兩個(gè)“聯(lián)絡(luò)”(Handhake)信號(hào):(選通信號(hào),strobe)和RDY(就緒信號(hào),Ready)。98.2可編程并行接口芯片8255A8255A的結(jié)構(gòu)和引腳功能8255A的工作方式8255A的初始化8255A的應(yīng)用舉例16位系統(tǒng)中的并行接口10
8.2可編程并行接口芯片8255A
Intel8255A是一種通用的可編程序并行I/O接口芯片,又稱“可編程外設(shè)接口芯片”PPI(ProgrammablePeripheralInterface)。
8.2.18255A的結(jié)構(gòu)和引腳功能 一、8255A的內(nèi)部結(jié)構(gòu) 有三個(gè)8位端口PA、PB和PC,都可由程序設(shè)定為各種不同的工作方式。 通常PA口與PB口用作輸入/輸出的數(shù)據(jù)端口,PC口通常用作控制或狀態(tài)信息的端口,PC口可以分成兩個(gè)4位的端口。11二、8255A的引腳功能8255A采用40條引腳的雙列直插式(DIP,Dualin-1inepackage)封裝,其引腳信號(hào)教材:有2條地址線A1.A04個(gè)端口地址A1A000PA口地址01PB口地址10PC口地址11控制口地址1213
8.2.28255A的工作方式 一、方式0—基本輸入輸出 8255A在方式0工作時(shí):
CPU可以采用無(wú)條件讀寫方式與8255A交換數(shù)據(jù)。 若把C口的兩個(gè)部分用作控制和狀態(tài)口,與外設(shè)的控制和狀態(tài)端相連,CPU也可通過對(duì)C口的讀寫,實(shí)現(xiàn)A口與B口的查詢方式工作。 輸出的數(shù)據(jù)被鎖存,而輸入數(shù)據(jù)是不鎖存的。14 二、方式1—選通輸入輸出(應(yīng)答式輸入輸出)
C口可分成兩部分,分別作為A口和B口的聯(lián)絡(luò)信號(hào)。在8255A中規(guī)定的聯(lián)絡(luò)信號(hào)是三位。 方式1可工作于查詢方式和中斷方式。 1.方式1的輸入(1):輸入的選通信號(hào),(2)IBF:輸入緩沖器滿信號(hào),(3)INTR:中斷請(qǐng)求信號(hào),(4)INTE:中斷允許信號(hào),A端口用PC4位的置位/復(fù)位控制,B端口用PC2位的置位/復(fù)位控制。15162.方式1的輸出(1):輸出緩沖器滿信號(hào),(2):響應(yīng)信號(hào),(3)INTR:中斷請(qǐng)求信號(hào),(4)INTE:中斷允許信號(hào),INTEA用PC6,INTEB用PC2設(shè)置三、方式2—雙向選通輸入輸出 工作時(shí)可以采用中斷方式,也可以采用查詢方式與CPU聯(lián)系。 方式2只限于A組使用。1718
19
8.2.38255A的初始化 首先要由CPU對(duì)8255A寫入控制命令字,有2種控制命令字:一個(gè)是方式選擇控制字,另一個(gè)是C口按位置位/復(fù)位控制字。 一、方式選擇控制字(D7=1)
二、C口按位置位/復(fù)位控制字(D7=0)
控制字的格式如圖:202122
8.2.48255A的應(yīng)用舉例 一、鍵盤接口 兩類鍵盤:編碼鍵盤和非編碼鍵盤。 編碼鍵盤能自動(dòng)提供對(duì)應(yīng)于被按鍵的編碼信息,如ASCII碼,并能同時(shí)產(chǎn)生一個(gè)選通脈沖通知微處理器。 非編碼鍵盤由一組開關(guān)組成,提供行和列的鍵盤矩陣。其全部工作,包括按鍵的識(shí)別、按鍵代碼的產(chǎn)生、防止串鍵和消去抖動(dòng)等問題,都靠程序來(lái)實(shí)現(xiàn)。23 鍵盤輸入信息的過程:(1)檢測(cè)是否有鍵按下;(2)查出按下的是哪一個(gè)鍵;(3)將該鍵所代表的信息翻譯成計(jì)算機(jī)能識(shí)別的內(nèi)部代碼。如ASCII碼或其他預(yù)先約定的編碼。2425使用行掃描方式尋找按下鍵的編號(hào)(鍵號(hào))的程序如下: …PORTA EQU 0FFF8HPORTB EQU 0FFFAHPORTC EQU 0FFFCHPORTCN EQU 0FFFEH MOV DX,PORTCN MOV AL,10000011B OUT DX,ALWAITK: MOV DX,PORTA MOV AL,0 OUT DX,AL
26
MOV DX,PORTB IN AL,DX CMP AL,0FFH JZ WAITK MOV BL,0 MOV BH,11111110B MOV CX,8FNDROW: MOV AL,BH MOV DX,PORTA OUT DX,AL ROL BH,1 MOV DX,PORTB IN AL,DX
27
CMP AL,0FFH JNZ FNDCOL ADD BL,8 LOOPFNDROW JMP DONE FNDCOL: ROR AL,1 JNC RIGHT INC BL JMP FNDCOLRIGHT: … …DONE: … 28 二、七段LED顯示器接口 發(fā)光二極管是一種當(dāng)電極間電壓(陽(yáng)極電壓接高電位)超過額定電壓時(shí)發(fā)生擊穿,并因此產(chǎn)生可見光的器件。 這種數(shù)碼顯示管通常由多個(gè)發(fā)光二極管來(lái)組成的7段或8段筆劃顯示器。 當(dāng)段組合發(fā)亮?xí)r,便可顯示某一數(shù)碼或字符。 8個(gè)7段LED顯示器上顯示8位16進(jìn)制數(shù),每個(gè)顯示器顯示其中一位數(shù)。293031 … SSEGCODE DB0C0H DB0F9H DB0A4H DB0B0H DB99H DB92H DB82H DB0F8H DB80H DB98H DB88H DB83H DB0C6H
32
DB0AlH DB86H DB8EHFOURBYTE EQUTHISBYTEDBLWORD DD12345678H … MOVAL,10000000B MOVDX,0FFFEH OUTDX,AL … CLDAGAIN: MOVCX,4 MOVSI,OFFSETFOURBYTE33
MOVAH,11111110BLOOPDISP:LODSB MOVDI,AX AND AL,0FH MOVBX,OFFSETSSEGCODE XLATSSEGCODE MOVDX,0FFFAH OUTDX,AL MOVAL,AH MOVDX,OFFF8H OUTDX,AL PUSHCX MOVCX,NDELAY
34
IDLE: NOPNOP LOOPIDLE … MOVAL,0FFH OUTDX,AL MOVAX,DI MOVCL,4 SHRAL,CL MOVBX,OFFSETSSEGCODE XLATSSEGCODE MOVDX,0FFFAH OUTDX,AL ROLAH,1
35
MOVAL,AH MOVDX,0FFF8H OUTDX,AL MOVCX,NDELAY IDLE2: NOP NOP LOOPIDIE2 ROLAH,1 MOVAL,0FFH OUTDX,AL POPCX LOOPLOOPDISP JMPAGAIN …
36 三、打印機(jī)接口 1.并行接口標(biāo)準(zhǔn)(Centronice)
該標(biāo)準(zhǔn)規(guī)定了一個(gè)36芯的連接口。
:數(shù)據(jù)選通接口;
DATA:數(shù)據(jù)信號(hào);
:響應(yīng)信號(hào);
BUSY:忙信號(hào)。37 2.打印機(jī)的工作過程及接口電路 打印機(jī)接口電路也稱打印機(jī)適配器,可以用鎖存器、三態(tài)緩沖器等器件實(shí)現(xiàn),也可用通用的可編程并行接口芯片實(shí)現(xiàn)。3839(1)8255A的初始化程序段(設(shè)8255A的I/O端口地址為2C0H-2C3H): … MOV DX,02C3H MOV AL,1010l00lB OUT DX,AL MOV AL,0000l101B OUT DX,AL MOV DX,02ClH MOV AL,00001100B OUT DX,AL …40(2)打印機(jī)中斷服務(wù)程序PRINTPROC NEAR PUSHAX PUSHDX MOVDX,02C0H MOVAL,[BX] OUT DX,AL MOVDX,02C1H IN AL,DX41 OR AL,01H OUT DX,AL AND AL,0FEH OUT DX,AL INC BX POP DX POP AX IRETPRINT ENDP42 四、LED/開關(guān)接口 8086CPU通過8255A同開關(guān)與7段LED顯示器的接口:43控制程序如下:
ORG 2000H MOVAL,82H MOVDX,0FFFEH OUT DX,AL RDPORTB:MOVDL,0FAH IN AL,DX ANDAL,0FH MOVBX,OFFSETSSEGCODE XLAT MOVDL,0F8H OUT DX,AL MOVAX,56CH
44
DELAY: DEC AX JNZ DELAY JMP RDPORTB HLT ORG 2500HSSEGCODE DB0C0H,0F9H,0A4H,0B0H,99H,92H, DB82H,0F8H,80H,98H,88H,83H,0C6H, DB0A1H,86H,8EH45控制程序(2)
ORG 2000H MOV AL,80H MOV DX,0FFFEH OUT DX,AL MOV BX,20 DISPLOP: LEA DI,SSEGCODE MOV CX,16 LOP: MOV AL,[DI] MOV DL,0F8H OUT DX,AL INC DI CALL DELAY5S
46
LOOPLOP DEC BX JNZ DISPLOP HLT ORG 2500HSSEGCODE:DB0C0H,0F9H,0A4H,0B0H,99H,92H, DB82H,0F8H80H,98H,88H,83H,0C6H, DB0A1H,86H,8EH478.2.516位系統(tǒng)中的并行接口488.3可編程定時(shí)器/計(jì)數(shù)器8253-5可編程定時(shí)器/計(jì)數(shù)器的基本工作原理8253-5的結(jié)構(gòu)和功能8253-5的工作方式498.3可編程定時(shí)器/計(jì)數(shù)器8253-5(PIT)
在微機(jī)應(yīng)用系統(tǒng)中,一種是要求一些外部實(shí)時(shí)時(shí)鐘,以實(shí)現(xiàn)延時(shí)控制或定時(shí);另一種是要求能對(duì)外部事件計(jì)數(shù)的計(jì)數(shù)器。 8253-5PIT(ProgrammableIntervalTimer)就是一種可編程定時(shí)器/計(jì)數(shù)器芯片,又稱為“可編程間隔定時(shí)器”。50
8.3.1可編程定時(shí)器/計(jì)數(shù)器的基本工作原理 16位計(jì)數(shù)初值寄存器CR用來(lái)存放計(jì)數(shù)初值,可通過程序來(lái)設(shè)定。 計(jì)數(shù)執(zhí)行單元CE是一個(gè)16位減法計(jì)數(shù)器,它的初值便是計(jì)數(shù)初值寄存器的內(nèi)容,它只對(duì)CLK脈沖計(jì)數(shù),一旦計(jì)數(shù)器被啟動(dòng)后,每出現(xiàn)一個(gè)CLK脈沖,計(jì)數(shù)執(zhí)行單元中的計(jì)數(shù)值減1,當(dāng)減為零時(shí),通過OUT輸出指示信號(hào),表明計(jì)數(shù)執(zhí)行單元已為零。51
當(dāng)CLK是一個(gè)周期性時(shí)鐘信號(hào)時(shí),計(jì)數(shù)器為定時(shí)器功能;當(dāng)CLK是一個(gè)非周期性事件計(jì)數(shù)信號(hào)時(shí),此時(shí)呈計(jì)數(shù)器功能。 計(jì)數(shù)輸出鎖存器OL通常跟隨計(jì)數(shù)執(zhí)行單元的內(nèi)容而變化,當(dāng)接收到CPU發(fā)來(lái)的鎖存命令時(shí),就鎖存當(dāng)前的計(jì)數(shù)值而不跟隨計(jì)數(shù)執(zhí)行單元變化,直到CPU從中讀取鎖存值后,才恢復(fù)到跟隨計(jì)數(shù)執(zhí)行單元變化的狀態(tài)。
GATE是控制輸入端,它有多種控制作用,如允許/禁止計(jì)數(shù)、啟動(dòng)/停止計(jì)數(shù)。5253
8.3.28253-5的結(jié)構(gòu)和功能
8253-5具有三個(gè)獨(dú)立的16位計(jì)數(shù)器,它可用程序設(shè)置成多種工作方式,按十進(jìn)制或二進(jìn)制計(jì)數(shù),最高計(jì)數(shù)速率可達(dá)2.6MHz。
三條信號(hào)線: ① 計(jì)數(shù)輸入CLK—用于輸入定時(shí)基準(zhǔn)脈沖或計(jì)數(shù)脈沖; ② 輸出信號(hào)OUT—以相應(yīng)的電平指示計(jì)數(shù)的完成,或輸出脈沖波形; ③ 選通輸入(門控輸入)GATE—用于啟動(dòng)或禁止計(jì)數(shù)器的操作,以使計(jì)數(shù)器和計(jì)測(cè)對(duì)象同步;
54三個(gè)寄存器:①控制寄存器—初始化時(shí),將控制字寄存器中的內(nèi)容寫入該寄存器;②計(jì)數(shù)初值寄存器—初始化時(shí)寫入該計(jì)數(shù)器的初始值;③減法計(jì)數(shù)寄存器—計(jì)數(shù)初值由計(jì)數(shù)初值寄存器送入減法計(jì)數(shù)寄存器,當(dāng)計(jì)數(shù)輸入端輸入一個(gè)計(jì)數(shù)脈沖時(shí),減法計(jì)數(shù)寄存器內(nèi)容減1,當(dāng)減到零時(shí),輸出端輸出相應(yīng)信號(hào)表示計(jì)數(shù)結(jié)束。工作方式寄存器(又稱控制字寄存器)是只寫寄存器,它接受寫入的控制字。三個(gè)控制寄存器控制對(duì)應(yīng)計(jì)數(shù)器的工作。8253-5的三個(gè)計(jì)數(shù)器是獨(dú)立的16位減法計(jì)數(shù)器。558253-5的結(jié)構(gòu)框圖和引腳排列56
8.3.38253-5的工作方式
在任何一種方式下,都必須先向8253寫入控制字,控制字還起復(fù)位作用,它使OUT端變?yōu)楣ぷ鞣绞街幸?guī)定的狀態(tài)和對(duì)計(jì)數(shù)初值寄存器CR清零;然后再寫入計(jì)數(shù)初值到CR中,其最大值為0000H。
一、方式0—計(jì)數(shù)結(jié)束中斷方式(InterruptonTetminalCount)
方式0是典型的事件計(jì)數(shù)用法,CLK端作為事件計(jì)數(shù)輸入信號(hào),當(dāng)計(jì)數(shù)執(zhí)行單元CE為零時(shí),OUT端變?yōu)楦唠娖剑勺鳛橹袛嗾?qǐng)求信號(hào)。 方式0的時(shí)序波形見圖。5758 方式0的特點(diǎn)和應(yīng)用(1)計(jì)數(shù)過程由軟件啟動(dòng)。(2)GATE的作用是開放計(jì)數(shù)或禁止計(jì)數(shù)。(3)OUT端由低變高表示計(jì)數(shù)過程結(jié)束。
59二、方式1—硬件可重觸發(fā)單穩(wěn)態(tài)方式(HardwareRetriggerableOne-Shot)
計(jì)數(shù)器相當(dāng)于一個(gè)可編程的單穩(wěn)態(tài)電路,觸發(fā)輸入為GATE信號(hào),由GATE的上升沿觸發(fā)計(jì)數(shù)器工作。 方式1的時(shí)序波形見圖。60方式1的時(shí)序波形圖。61方式1的特點(diǎn)和應(yīng)用(1)計(jì)數(shù)器的啟動(dòng)只能由門控脈沖的上升沿產(chǎn)生,即只能用硬件啟動(dòng)。(2)OUT輸出為一個(gè)單穩(wěn)態(tài)負(fù)脈沖,其脈寬為計(jì)數(shù)初值個(gè)CLK時(shí)鐘脈沖的周期之和。(3)在形成單穩(wěn)態(tài)脈沖過程中,可以重觸發(fā)。(4)在微機(jī)實(shí)時(shí)控制系統(tǒng)中常用作監(jiān)視時(shí)鐘(WatchdogTimer)。62三、方式2—速率發(fā)生器(RateGenenator)
方式2能產(chǎn)生周期性的定時(shí)信號(hào), 稱為速率發(fā)生器, 又稱為N分頻方式和周期性定時(shí)器方式。 方式2的時(shí)序波形見圖。63方式2的時(shí)序波形圖。64方式2的特點(diǎn)和應(yīng)用(1)CR內(nèi)容能自動(dòng)地、重復(fù)地裝入到CE中,OUT端上就能連續(xù)地輸出周期性分頻信號(hào)。(2)既可軟件啟動(dòng),又可硬件啟動(dòng)。(3)改變計(jì)數(shù)初值,即可獲得不同速率的OUT輸出信號(hào)。(4)負(fù)脈沖寬度均為一個(gè)CLK脈沖的周期。(5)主要應(yīng)用是作為分頻器和時(shí)基信號(hào)。65四、方式3—方波方式(SquareWareMode)
方式3的操作方式除OUT輸出方波之外,和方式2相似。方波的重復(fù)周期是計(jì)數(shù)初值個(gè)CLK脈沖周期之和。 方式3的時(shí)序波形見圖。66方式3的時(shí)序波形圖。67方式3的特點(diǎn)和應(yīng)用(1)方式3的計(jì)數(shù)過程是CE內(nèi)容減2。(2)軟件啟動(dòng)和硬件啟動(dòng)兩種。(3)改變計(jì)數(shù)初值,OUT端將輸出不同頻率。(4)主要應(yīng)用作為方波發(fā)生器和波特率發(fā)生器。68 五、方式4—軟件觸發(fā)選通方式(SofewaveTriggeredstrode)
當(dāng)寫入方式控制字CW后,OUT端輸出高電平。在寫入計(jì)數(shù)初值后的一個(gè)CLK脈沖開始減1計(jì)數(shù),直到CE為零時(shí),使OUT輸出變?yōu)榈碗娖?,?dāng)持續(xù)一個(gè)CLK脈沖周期后又恢復(fù)到高電平。在OUT端產(chǎn)生一個(gè)CLK脈沖周期寬度的選通負(fù)脈沖輸出。 方式4的時(shí)序波形見圖。69方式4的時(shí)序波形圖。70
六、方式5—硬件觸發(fā)選通方式(HardwareTriggeredStrobe)
方式5和方式1有些相似。CE到零時(shí)OUT端產(chǎn)生寬度為1個(gè)CLK脈沖周期的負(fù)脈沖選通輸出信號(hào)。
方式5的時(shí)序波形見圖。71方式5的時(shí)序波形圖。72
8.3.48253-5的初始化 一、寫入方式控制字 三個(gè)通道用的控制字端口地址是相同的,三個(gè)控制字寫入后卻存入通道對(duì)應(yīng)的寄存器中。 二、寫入計(jì)數(shù)初始值 三、讀計(jì)數(shù)值 在動(dòng)態(tài)讀計(jì)數(shù)值時(shí)可以有兩種方法:(1)以普通對(duì)計(jì)數(shù)器端口讀的方法取得當(dāng)前計(jì)數(shù)值。(2)鎖存計(jì)數(shù)器的當(dāng)前計(jì)數(shù)值。73工作方式控制字SC1,SC0—計(jì)數(shù)器選擇D7D6D5D4D3D2D1D0SC1SC0RL1RL0M2M1M0BCDSC1SC0計(jì)數(shù)器00CNT001CNT110CNT211不用74RL1,RL0—CPU讀/寫操作RL1RL0操作方式00計(jì)數(shù)器鎖存操作(供CPU讀)01只讀/寫計(jì)數(shù)器低8位10只讀/寫計(jì)數(shù)器高8位11先讀/寫底8位,再讀/寫高8位75M2M1M0—工作方式選擇BCD—計(jì)數(shù)方式選擇M2M1M0工作方式000方式0001方式1X10方式2X11方式3100方式4101方式5016位二進(jìn)制計(jì)數(shù)14位十進(jìn)制(BCD)碼計(jì)數(shù)76選通信號(hào)GATE的功能低電平或進(jìn)入低電平上升邊沿高電平方式0禁止計(jì)數(shù)——允許計(jì)數(shù)方式1——1.初始化和計(jì)數(shù)2.下一個(gè)時(shí)鐘后輸出變?yōu)榈碗娖健绞?1.禁止計(jì)數(shù)2.使輸出立即變?yōu)楦唠娖?.初始化和計(jì)數(shù)2.計(jì)數(shù)器重新裝入允許計(jì)數(shù)方式31.禁止計(jì)數(shù)2.使輸出立即變?yōu)楦唠娖?.初始化和計(jì)數(shù)2.計(jì)數(shù)器重新裝入允許計(jì)數(shù)方式4禁止計(jì)數(shù)——允許計(jì)數(shù)方式5——初始化和計(jì)數(shù)——77
8.3.58253-5的應(yīng)用舉例 一、用8253-5監(jiān)視一個(gè)生產(chǎn)流水線78主程序?yàn)椋? MOVAL,15H OUT43H,AL MOVAL,50H OUT40H,AL STI LOP:HLT JMPLOP中斷服務(wù)程序?yàn)椋? MOVAL,01H OUT80H,AL79
MOVAL,77H OUT43H,AL MOVAL,50H OUT41H,AL MOVAL,12H OUT41H,AL CALLDL5S MOVAL,00H OUT80H,AL IRET80二、8253在IBM-PC機(jī)中的應(yīng)用81工作原理分析⑴計(jì)數(shù)器0用來(lái)產(chǎn)生實(shí)時(shí)日時(shí)鐘信號(hào),工作于方式3,計(jì)數(shù)初值為0,采用二進(jìn)制計(jì)數(shù)方式,輸出端OUT0作為中斷請(qǐng)求信號(hào)IRQ0。⑵計(jì)數(shù)器1用來(lái)產(chǎn)生動(dòng)態(tài)存儲(chǔ)器刷新操作的定時(shí)控制信號(hào)。它工作于方式2,計(jì)數(shù)初值為18,OUT1端輸出一個(gè)負(fù)脈沖序列,其脈沖周期約為18÷1.1931816MHz=15.08(μs)。⑶計(jì)數(shù)器2用于為系統(tǒng)中的揚(yáng)聲器發(fā)聲時(shí)提供一個(gè)約為900Hz的方波信號(hào)。它也工作于方式3,計(jì)數(shù)初值為0533H(1331),GATE2接入一個(gè)來(lái)自系統(tǒng)板上8255A的PB0,作為揚(yáng)聲器發(fā)聲時(shí)間的控制信號(hào)。822.8253的初始化程序段⑴對(duì)計(jì)數(shù)器0的初始化程序:
MOV AL,00110110B OUT 43H,AL MOV AL,0 OUT 40H,AL OUT 40H,AL⑵對(duì)計(jì)數(shù)器1的初始化程序:
MOV AL,01010100B OUT 43H,AL MOV AL,18 OUT 41H,AL83⑶對(duì)計(jì)數(shù)器2的初始化程序:
MOV AL,10110110B OUT 43H,AL MOV AX,0533H OUT 42H,AL MOV AL,AH OUT 42H,AL IN AL,61H MOV AH,AL OR AL,03H OUT 61H,AL84 三、8253在實(shí)時(shí)控制系統(tǒng)中的應(yīng)用 將8253的兩個(gè)計(jì)數(shù)器串聯(lián)起來(lái),使其中的一個(gè)計(jì)數(shù)器作為定時(shí)器,當(dāng)分頻器使用,將其OUT輸出信號(hào)作為另一個(gè)計(jì)數(shù)器的CLK脈沖信號(hào);而另一計(jì)數(shù)器只起計(jì)數(shù)作用,其OUT輸出端作為中斷請(qǐng)求信號(hào)。
8586MOVDX,233H MOVAL,00010100BOUTDX,ALMOVAL,230H MOVAL,00HOUTDX,ALMOVDX,233H MOVAL,01110110BOUTDX,ALMOVDX,231H
87MOVAL,BYTEPTRTIMEOUTDX,ALMOVAL,BYTEPTRTIME+1OUTDX,ALMOVDI,28H MOVAX,OFFSETRTIMECLDSTOSWMOVAX,SEG RTIME STOSW …88四、三個(gè)計(jì)數(shù)通道組合應(yīng)用8990
MOVAL,00110101B OUT83H,AL MOVAL,00H OUT80H,AL MOVAL,10H OUT80H,AL MOVAL,01110011B OUT83H,AL MOVAL,00H OUT81H,AL91MOVAL,05HOUT81H,ALMOVAL,10110111B OUT83H,ALMOVAL,00H OUT82H,ALMOVAL,20HOUT82H,AL928.4串口接口芯片串行通信概述串行接口原理可編程通信接口8251A938.4串口接口芯片
8.4.1串行通信概述 為了降低通信線路的價(jià)格和簡(jiǎn)化通信設(shè)備,可以利用現(xiàn)有的通信線路。 一、并行通信和串行通信 1.并行傳送 2.串行傳送 3.并行傳送與串行傳送的比較 (1)從距離上看:近距離和遠(yuǎn)距離; (2)從速度上看: (3)從設(shè)備、費(fèi)用上看:9495二、同步通信與異步通信 兩種基本的通信方式: 異步通信ASYNC(AsynchronousDataCommunication)
同步通信SYNC(SynchronousDataCommunication)1.異步通信 兩項(xiàng)約定:96(1)字符格式 ①1位起始位,低電平; ②5-8個(gè)數(shù)據(jù)位,(如標(biāo)準(zhǔn)ASCII碼。則為7位); ③1個(gè)奇偶校驗(yàn)位(作為檢錯(cuò)用); ④1,1.5或2個(gè)終止位(停止位),高電平。 起始位后面緊跟的是要傳送字符的最低位,每個(gè)字符的結(jié)束是1、1.5或2個(gè)高電平的終止位,起始位至終止位構(gòu)成一幀。相連兩個(gè)字符之間的間隔可以是任意長(zhǎng)度的,兩個(gè)相鄰字符之間叫空閑位,為高電平。(2)波特率(BaudRate)
波特率是指單位時(shí)間內(nèi)傳送二進(jìn)制數(shù)據(jù)的位數(shù),以位/秒為單位。每個(gè)數(shù)據(jù)位的傳送時(shí)間Td即為波特率的倒數(shù)。97
982.同步通信 在數(shù)據(jù)塊開始處要用同步字符來(lái)指明, 同步傳送速度高于異步傳送速度, 要求有時(shí)鐘來(lái)實(shí)現(xiàn)發(fā)送端及接收端之間的同步, 硬件電路比較復(fù)雜。99三、串行通信的傳送方向 單工、半雙工、全雙工三種:1.單工(Simplex)
僅能進(jìn)行一個(gè)方向的傳送。2.半雙工(Half-Duplex)
能交替地進(jìn)行雙向數(shù)據(jù)傳送,但兩設(shè)備之間只用一根傳輸線,兩個(gè)方向的數(shù)據(jù)傳送不能同時(shí)進(jìn)行。3.全雙工(Full-Duplex) A、B之間有兩條傳輸線,能在兩個(gè)方向上同時(shí)進(jìn)行數(shù)據(jù)傳送。100101 四、信號(hào)的調(diào)制與解調(diào) 計(jì)算機(jī)通信傳送的是數(shù)字信號(hào),數(shù)字信號(hào)直接進(jìn)行通信,經(jīng)過傳輸線后必然會(huì)產(chǎn)生畸變。 在發(fā)送端必需采用調(diào)制器把數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào),在接收端又必需用解調(diào)器檢出發(fā)送來(lái)的模擬信號(hào),恢復(fù)為原來(lái)的數(shù)字信號(hào)。
102Modem即調(diào)制-解調(diào)器Modulator-Demoduiator
計(jì)算機(jī)遠(yuǎn)程通信中的一種輔助設(shè)備。`103PSK調(diào)制法原理圖104 五、異步通信規(guī)程 微型計(jì)算機(jī)中主要使用三種通信控制規(guī)程: 異步控制規(guī)程(ASYNC),
同步控制規(guī)程(BISYNC)
高級(jí)數(shù)據(jù)鏈路控制規(guī)程(HDLC)。
對(duì)每一種通信控制規(guī)程,都有相應(yīng)的大規(guī)模集成電路的接口芯片去實(shí)現(xiàn)。105
8.4.2串行接口原理 以異步收發(fā)器UART(UniversalAsynchronousReceiver/Transmitter)為例。106107 一、組成 由三部分組成: “接收器”—用來(lái)把串行碼轉(zhuǎn)換為并行碼; “發(fā)送器”—用來(lái)把并行碼轉(zhuǎn)換為串行碼; “控制器”—用來(lái)接收CPU的控制信號(hào),執(zhí)行CPU所要求的操作,并輸出狀態(tài)信息和控制信息。 二、功能
UART的功能是接收異步串行輸入碼并將其轉(zhuǎn)換為CPU所需要的并行碼,并將CPU內(nèi)部的并行碼轉(zhuǎn)換為串行碼輸出。108
UART是用外部時(shí)鐘來(lái)和接收的數(shù)據(jù)進(jìn)行同步的。外部時(shí)鐘的周期Tc和每個(gè)數(shù)據(jù)位的周期Td有以下關(guān)系:
Tc=Td/K K=16或64(K為波特率因子) 外部時(shí)鐘和接收數(shù)據(jù)的同步如圖所示:109110
為了檢測(cè)長(zhǎng)距離傳送中可能發(fā)生的錯(cuò)誤,通常增加一個(gè)奇偶校驗(yàn)位。 發(fā)送時(shí),自動(dòng)在奇偶校驗(yàn)位上添上“1”或“0”; 接收時(shí),UART檢查字符的每一位以及奇偶校驗(yàn)位的“1”的個(gè)數(shù),以確定是否發(fā)生傳送錯(cuò)誤。111112UART中還設(shè)立了各種出錯(cuò)標(biāo)志:1.奇偶錯(cuò)誤(Parityerror):在接收時(shí)。UART檢查接受到的每一個(gè)字符的“1”的個(gè)數(shù),若不符合要求,則置這個(gè)標(biāo)志,發(fā)出奇偶校驗(yàn)出錯(cuò)信息。2.幀錯(cuò)誤(Frameerror):若接受的字格式不符合規(guī)定(例如缺少停止位等),則置位幀出錯(cuò)標(biāo)志,發(fā)出幀錯(cuò)誤信息。
3.溢出(丟失)錯(cuò)誤(Overrunerror)1138.4.3可編程通信接口8251A(USART) Intel8251AUSART是通用同步/異步接收發(fā)送器。
USART即UniversalSynchronous/AsynchronousReceiver/Transmitter。一、8251A的基本性能(1)可用于同步和異步傳送。(2)波特率:DC-19.2K(異步);DC-64K(同步)。(3)完全雙工、雙緩沖器發(fā)送器接收器。(4)誤差檢測(cè)。1148251A的結(jié)構(gòu)圖與引腳圖115
二、8251A的結(jié)構(gòu)與引腳功能 包括8251A同CPU的接口部分—數(shù)據(jù)總線緩沖器和讀寫控制邏輯;發(fā)送器和接收器及其控制電路。 產(chǎn)生RS-232C有關(guān)信號(hào)的MODEM控制電路。 1.同CPU的連接信號(hào) (1)RESET (2)CLK (3), (4)C/ (5) (6)D0~D7116 2.MODEM控制信號(hào) 與MODEM相連的控制信號(hào):(1)(DataTerminalReady)—數(shù)據(jù)終端準(zhǔn)備好(輸出,低電平有效)(2)(DataSetReady)—數(shù)據(jù)裝置準(zhǔn)備好(輸入,低電平有效)(3)(RequestToSend)—請(qǐng)求發(fā)送(輸出,低電平有效)(4)(ClearToSend)—清除發(fā)送信號(hào)(輸入,低電平有效) 1173.發(fā)送器有關(guān)信號(hào)(1)TXD:發(fā)送數(shù)據(jù)(2)TXRDY:發(fā)送器準(zhǔn)備好信號(hào)(3)TXE:發(fā)送緩沖器空標(biāo)志(4):輸入控制發(fā)送器數(shù)據(jù)速率的時(shí)鐘4.接收器有關(guān)信號(hào)(1)RXD:接收數(shù)據(jù)(2)RXRDY:接收器準(zhǔn)備好標(biāo)志(3):接收時(shí)鐘(4)SYNDET/BRKDET:同步和間斷檢測(cè)118 三、初始化 8251A的各種工作方式及工作進(jìn)程都是用初始化及實(shí)時(shí)控制實(shí)現(xiàn)的。編程包括兩部分: 一個(gè)是方式指令,另一個(gè)是命令指令。 方式指令用來(lái)定義8251A的一般工作特性,它必須緊接在復(fù)位后由CPU寫入。 命令指令用來(lái)指定芯片的實(shí)際操作,只有在已經(jīng)寫入了方式指令后,才能由CPU寫入同步字符和命令指令。1191.方式指令字1202.命令指令字121
3.狀態(tài)字
CPU向8251A發(fā)送各種操作命令,許多時(shí)候是依據(jù)8251A當(dāng)前的運(yùn)行狀態(tài)決定的。
122
8251A的初始化和操作流程如右圖所示。 8251A在設(shè)置方式指令字后,或在同步方式中又設(shè)置了同步字符后,任何時(shí)候都可以寫入命令指令,命令指令是芯片進(jìn)行操作,或改變操作時(shí)必須寫入的內(nèi)容。而每次寫入命令指令后,8251A都要檢查IR位是否有內(nèi)部復(fù)位,如有復(fù)位,8251A應(yīng)重新設(shè)置方式指令。1238251A應(yīng)用舉例1248.5模擬接口概述數(shù)/模轉(zhuǎn)換器DAC0832及其接口模/數(shù)轉(zhuǎn)換器ADC0809及其接口1258.5模擬接口
8.5.1概述 連續(xù)變化的物理量。所謂連續(xù),包括兩方面的含義:一方面從時(shí)間上來(lái)說(shuō),它是隨時(shí)間連續(xù)變化的;另一方面從數(shù)值上來(lái)說(shuō),它的數(shù)值也是連續(xù)變化的。這種連續(xù)變化的物理量通常稱為模擬量。 一、控制系統(tǒng)中的模擬接口 傳感器是把非電量的模擬量(如溫度、壓力、流量等)轉(zhuǎn)換成電壓或電流信號(hào)。126
量程放大器把微弱的傳感器信號(hào)(通常為毫伏或微伏級(jí))放大到A/D轉(zhuǎn)換器所需的量程范圍。 低通濾波器用來(lái)降低噪聲,濾去不必要的干擾,以增加信噪比。 多路開關(guān)可以使多個(gè)模擬信號(hào)共用一個(gè)A/D轉(zhuǎn)換器。 采樣-保持電路(Sample/holdcircuit)把轉(zhuǎn)換的信號(hào)采樣后還保持一段時(shí)間,以便給A/D轉(zhuǎn)換器轉(zhuǎn)換。
A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器則通過相應(yīng)的A/D轉(zhuǎn)換和D/A轉(zhuǎn)換把模擬量轉(zhuǎn)換成數(shù)字量和數(shù)字量轉(zhuǎn)換成模擬量。127微型機(jī)與控制系統(tǒng)的接口
128 二、采樣-保持電路 (1)采樣跟蹤狀態(tài):在此期間應(yīng)盡可能快地接受輸入信號(hào),使輸出和輸入信號(hào)相一致。 (2)保持狀態(tài):把采樣結(jié)束瞬間的輸入信號(hào)保持下來(lái),使輸出和保持的信號(hào)一致。當(dāng)輸入信號(hào)變化速率較快時(shí),都應(yīng)采用采樣-保持電路,如果輸入信號(hào)變化緩慢,則可不用保持電路。129130 三、量化和編碼 1.量化 采樣后的信號(hào)經(jīng)量化后才能輸入到計(jì)算機(jī),采樣信號(hào)經(jīng)量化后成為數(shù)字信號(hào)的過程稱為量化過程。
A/D轉(zhuǎn)換就是量化的 過程,它把采樣后模擬 信號(hào)轉(zhuǎn)變成數(shù)字量。131
2.編碼 在量化過程中,對(duì)雙極性(有正、負(fù))信號(hào)通常有三種表示方法: (1)符號(hào)-數(shù)值碼,類似于原碼表示法。 (2)偏移二進(jìn)制碼,與移碼表示法相同。 (3)補(bǔ)碼表示法,與計(jì)算機(jī)的補(bǔ)碼表示方法相同。132
四、模/數(shù)轉(zhuǎn)換器的性能指標(biāo) 1.分辨率 分辨率是指ADC對(duì)輸入電壓微小變化響應(yīng)能力的度量。 2.絕對(duì)精度 絕對(duì)精度是指在輸出端產(chǎn)生給定的數(shù)字代碼,實(shí)際需要的模擬輸入值與理論上要求的模擬輸入值之差。133
3.相對(duì)精度 相對(duì)精度(又稱線性度)是指滿刻度值校準(zhǔn)后,任意數(shù)字輸出所對(duì)應(yīng)的實(shí)際模擬輸入值(中間值)與理論值(中間值)之差。 4.轉(zhuǎn)換時(shí)間 轉(zhuǎn)換時(shí)間是指ADC完成一次轉(zhuǎn)換所需的時(shí)間,即從啟動(dòng)信號(hào)開始到轉(zhuǎn)換結(jié)束并得到穩(wěn)定的數(shù)字輸出量所需的時(shí)間。通常為微秒級(jí)。 5.量程 量程是指所能轉(zhuǎn)換的輸入電壓范圍。134
五、數(shù)/模轉(zhuǎn)換器的性能指標(biāo) 1.分辨率 分辨率是最低有效位(LSB)
所對(duì)應(yīng)的模擬量的大小。 2.精度 精度反映D/A轉(zhuǎn)換的精確度。 3.建立時(shí)間 建立時(shí)間定義為:在數(shù)字輸入端輸入滿量程代碼的變化后,DAC的模擬輸出穩(wěn)定到最終值±1/2LSB時(shí)所需的時(shí)間。135
8.5.2數(shù)/模轉(zhuǎn)換器DAC0832及其接口 一、芯片簡(jiǎn)介
DAC0832采用了二次緩沖輸入數(shù)據(jù)方式(輸入寄存器及DAC寄存器)??梢栽谳敵龅耐瑫r(shí)采集下一個(gè)數(shù)字量,以提高轉(zhuǎn)換速度。能夠用于需要同時(shí)輸出多個(gè)參數(shù)的模擬量系統(tǒng)。136DAC0832內(nèi)部結(jié)構(gòu)框圖137二、數(shù)/模轉(zhuǎn)換器芯片的輸出電路1.電流輸出轉(zhuǎn)換為電壓輸出1382.單極性與雙極性輸出電路139
3.數(shù)/模轉(zhuǎn)換器與微處理器的接口
D/A轉(zhuǎn)換器只有數(shù)據(jù)輸入線,選片和寫入控制線與微處理器有關(guān)。因此微處理器的接口比較簡(jiǎn)單,直接把數(shù)據(jù)輸出給D/A轉(zhuǎn)換器。若D/A轉(zhuǎn)換器芯片內(nèi)帶有鎖存寄存器,微處理器就把D/A芯片當(dāng)作一個(gè)并行輸出端口; 若D/A轉(zhuǎn)換器芯片內(nèi)無(wú)鎖存寄存器,微處理器就把D/A芯片當(dāng)作一個(gè)并行輸出的外設(shè),二者之間還需增加并行輸出的接口。數(shù)/模轉(zhuǎn)換器接口是通過D/A轉(zhuǎn)換器來(lái)實(shí)現(xiàn)模擬輸出,有時(shí)我們簡(jiǎn)稱為“模出”。14
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 活動(dòng)項(xiàng)目管理培訓(xùn)
- 津南崗位培訓(xùn)介紹
- 2024-2025學(xué)年山東省部分學(xué)校高二下學(xué)期5月聯(lián)考?xì)v史試題(A卷)(解析版)
- 2026年城市垃圾處理與資源化利用試題庫(kù)
- 2026年電子商務(wù)師專業(yè)能力測(cè)試題目
- 2026年外語(yǔ)學(xué)習(xí)試題英語(yǔ)口語(yǔ)高級(jí)測(cè)試題庫(kù)及答案
- 2026年職場(chǎng)溝通技巧與禮儀認(rèn)證題庫(kù)
- 2026年農(nóng)業(yè)科技試題現(xiàn)代農(nóng)業(yè)技術(shù)與種植管理試題
- 2026年證券投資顧問資格認(rèn)證考試題庫(kù)
- 2026年計(jì)算機(jī)系統(tǒng)維護(hù)系統(tǒng)管理與故障排除題集
- 專業(yè)律師服務(wù)合同書樣本
- 反詐宣傳講座課件
- GB/T 6003.2-2024試驗(yàn)篩技術(shù)要求和檢驗(yàn)第2部分:金屬穿孔板試驗(yàn)篩
- DB32T 4398-2022《建筑物掏土糾偏技術(shù)標(biāo)準(zhǔn)》
- (精確版)消防工程施工進(jìn)度表
- 保險(xiǎn)公司資產(chǎn)負(fù)債表、利潤(rùn)表、現(xiàn)金流量表和所有者權(quán)益變動(dòng)表格式
- 電磁流量說(shuō)明書
- XX少兒棋院加盟協(xié)議
- 五年級(jí)數(shù)學(xué)應(yīng)用題專題訓(xùn)練50題
- 2021年四川省資陽(yáng)市中考數(shù)學(xué)試卷
- 高處作業(yè)安全培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論