第8章-MCS-51的系統(tǒng)擴展和接口技術(shù)-課件_第1頁
第8章-MCS-51的系統(tǒng)擴展和接口技術(shù)-課件_第2頁
第8章-MCS-51的系統(tǒng)擴展和接口技術(shù)-課件_第3頁
第8章-MCS-51的系統(tǒng)擴展和接口技術(shù)-課件_第4頁
第8章-MCS-51的系統(tǒng)擴展和接口技術(shù)-課件_第5頁
已閱讀5頁,還剩102頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機原理及應(yīng)用技術(shù)第8章 MCS-51的系統(tǒng)擴展與接口技術(shù)7/19/2022計算機系 第7章 MCS-51的系統(tǒng)擴展與接口技術(shù)掌握I/O接口的擴展、8255A的初始化及擴展I/O掌握程序存儲器、數(shù)據(jù)存儲器的擴展了解鍵盤的掃描、去抖、識別,了解顯示接口了解A/D、D/A轉(zhuǎn)換器的工作原理及典型的A/D、D/A芯片應(yīng)用實例學(xué)習(xí)重點和難點 I/O接口的擴展存儲器的擴展A/D、D/A轉(zhuǎn)換器的工作原理及應(yīng)用教學(xué)目的 7/19/2022計算機系 第7章 MCS-51的系統(tǒng)擴展與接口技術(shù)7.1 并行I/O口的擴展7.2 存儲器的擴展7.3 最小系統(tǒng)與三總線的概念7.4 鍵盤接口7.5 顯示接口7.6 A/D

2、接口7.7 D/A轉(zhuǎn)換接口7.8 習(xí)題7/19/2022計算機系 7.1 并行I/O口的擴展單片機應(yīng)用系統(tǒng)需要為外圍設(shè)備及被控對象提供數(shù)據(jù)交換接口。MCS-51擴展I/O口時,擴展結(jié)構(gòu)可分為3種類型。MCS-51是將外部I/O口和外部 RAM統(tǒng)一編址的,每個I/O口相當于一個外部RAM單元,訪問外部接口就象訪問外部RAM一樣,用MOVX指令。7/19/2022計算機系 8.1.1 并行I/O口的簡單擴展簡單I/O接口擴展所用芯片為74系列的TTL電路,CMOS電路也可作為MCS-51的擴展I/O接口。這些芯片結(jié)構(gòu)簡單,配置靈活方便,比較容易擴展,使系統(tǒng)降低了成本、縮小了體積,因此在單片機應(yīng)用系

3、統(tǒng)中經(jīng)常被采用。常用芯片有74LS244(八緩沖器/線驅(qū)動器/線接收器)、74LS245(八雙向總線收發(fā)器)、74LS273(八D觸發(fā)器)、74LS373(八D鎖存器)、74LS377(帶使能的八D觸發(fā)器)等。74LS244是八緩沖器/線驅(qū)動器/線接收器,內(nèi)部有兩組4位三態(tài)緩沖器,具有數(shù)據(jù)緩沖隔離和驅(qū)動作用,其輸入阻抗較高,輸出阻抗低,常用于單向三態(tài)緩沖輸出。 7.1 并行I/O口的擴展7/19/2022計算機系 74LS244各引腳定義如下:1A11A4:第1組4條輸入線1Y11Y4:第1組4條輸出線2A12A4:第2組4條輸入線2Y12Y4:第2組4條輸出線1G:第1組三態(tài)門使能端, 低電

4、平有效2G:第2組三態(tài)門使能端, 低電平有效VCC:工作電源,接+5V電壓GND:接地 7.1 并行I/O口的擴展7/19/2022計算機系 74LS273各引腳定義如下:D0D7:輸入線。Q0Q7:輸出線。CLR:清除控制端, 低電平有效。CLK:時鐘輸入端, 上升沿有效。VCC:工作電源, 接+5V電壓。GND:接地。7.1 并行I/O口的擴展7/19/2022計算機系 74LS273的工作方式 74LS244的工作方式 7.1 并行I/O口的擴展7/19/2022計算機系 【例】 用74LS244作為擴展輸入,74LS273作為擴展輸出。解:P0口作為雙向數(shù)據(jù)總線,用74LS244擴展8

5、位輸入,輸入八只控制開關(guān)的控制信號;用74LS273擴展8位輸出,輸出信號控制八只發(fā)光二極管。編寫控制程序,可使八只發(fā)光二極管分別受各自對應(yīng)的控制開關(guān)的控制。 只要P2.7為0,就選中74LS244或74LS273,其他位均為無關(guān)位,所以74LS244和74LS273的地址均為7FFFH。 7.1 并行I/O口的擴展7/19/2022計算機系 簡單I/O口擴展電路 7/19/2022計算機系 參考程序:7.1 并行I/O口的擴展 ORG 0000H AJMP MAIN ORG 0050HMAIN: MOV DPTR,#8000 ;置輸入口地址 MOVX A,DPTR ;讀輸入口數(shù)據(jù) MOV D

6、PTR,#9000H ;置輸出口地址 MOVX DPTR,A ;寫輸出口數(shù)據(jù) SJMP MAIN END7/19/2022計算機系 8.1.2 用8255A芯片擴展I/O口8255A是一個可編程并行接口芯片,它主要作為外圍設(shè)備與微型計算機總線之間的I/O接口。8255A可以通過軟件來設(shè)置芯片的工作方式,因此用8255A連接外部設(shè)備時,通常不需要再附加外部電路,給使用帶來很大的方便。 8255A有三個8位可編程并行I/O端口,從編程上可分成2組,每組12個,有3種工作模式。7.1 并行I/O口的擴展7/19/2022計算機系 8255A的引腳與封裝 7/19/2022計算機系 8255A各引腳定

7、義如下:D7D0:雙向數(shù)據(jù)線,用于傳送數(shù)據(jù)和控制字。PA7PA0、PB7PB0、PC7PC0:輸入/輸出信號線,用于傳送數(shù)據(jù)。CS:片選信號,低電平有效。只有該引腳為低電平時,8255A才與CPU建立通信。RD:芯片讀出信號,低電平有效。當引腳為低電平時,CPU可以從8255A中讀取輸入數(shù)據(jù)。WR:芯片寫入信號,低電平有效。當引腳為低電平時,CPU可以往8255A中寫入數(shù)據(jù)或控制字。7.1 并行I/O口的擴展7/19/2022計算機系 8255A各引腳定義如下:A0 、A1:端口選擇信號,這兩個引腳的輸入和RD、WR兩個引腳的輸入,一起控制8255A內(nèi)部三個數(shù)據(jù)端口及一個控制端口的選擇。它們一

8、般和地址總線的兩個最低位(A0、A1)相連。選擇如下: A1A0為00時選中端口A;為01時選中端口B;為10時選中端口C;為11時選中命令字口。RESET:復(fù)位,當該輸入信號為高電平時,控制寄存器被清除,所有的端口(A、B、C)都被設(shè)為輸入狀態(tài)。復(fù)位引腳上的高電平,使各個端口都置為輸入模式(也就是24個引腳都被置為高阻態(tài))。 7.1 并行I/O口的擴展7/19/2022計算機系 8255A的內(nèi)部結(jié)構(gòu) 7/19/2022計算機系 8.1 并行I/O口的擴展8255A在三種基本的方式下工作:方式 0:基本輸入/輸出。方式 1:選通的輸入/輸出。方式 2:雙向傳輸。 7/19/2022計算機系 【

9、例】 用8255控制打印機,打印機與8051采用查詢方式交換數(shù)據(jù)。解:下圖是8255A作為打印機接口與8051相連的電路圖。其工作方式為0,片選信號為P0.7,端口A作數(shù)據(jù)輸出通道,端口B不用,PC7與打印機的狀態(tài)信號BUSY相連,PC0與打印機的選通信號STB。打印機與8051采用查詢方式交換數(shù)據(jù)。當BUSY為0,在STB負跳變時,數(shù)據(jù)被輸入。 按照接口電路可知(無關(guān)的位全設(shè)為1),端口A地址為7CH,端口B地址為7DH,端口C地址為7EH,控制端口地址為7FH。方式選擇字(無關(guān)的位全設(shè)為0)為88H。要打印的數(shù)據(jù)開始地址為30H;要打印的數(shù)據(jù)個數(shù)設(shè)為50。 7.1 并行I/O口的擴展7/1

10、9/2022計算機系 8051通過8255A與打印機電路圖 參考程序7/19/2022計算機系 8155并行接口芯片8155是一種多功能可編程外圍擴展接口芯片,它也有三個可編程I/O端口(端口A、B、C)。與8255A的區(qū)別在于PC口是6位,同時還有一個可編程14位定時器/計數(shù)器和256字節(jié)的RAM,能方便地進行I/O擴展和RAM擴展。 7.1 并行I/O口的擴展7/19/2022計算機系 8.1 并行I/O口的擴展8155的引腳與封裝 8155內(nèi)部結(jié)構(gòu) 7/19/2022計算機系 8155內(nèi)部的I/O口、RAM、定時器和命令/狀態(tài)寄存器的地址分配 A7A6A5A4A3A2A1A0選中寄存器0

11、00命令/狀態(tài)寄存器001PA口010PB口011PC口100定時器高8位101定時器低8位7.1 并行I/O口的擴展7/19/2022計算機系 8155的工作方式1. 8155作片外RAM(256B)在片選信號CE有效的情況下,IO/M信號為高電平,8155作片外RAM使用。地址的高8位由片選信號確定,地址的低8位為00HFFH。 8.1 并行I/O口的擴展7/19/2022計算機系 2. 8155作I/O口 8155有兩種工作方式:基本I/O和選通I/O。當8155的PA口、PB口、PC口工作在基本I/O方式下,可用于無條件I/O操作?;据斎霑r執(zhí)行“MOVX A,DPTR”類指令,基本輸

12、出時執(zhí)行“MOVX DPTR,A”類指令。當8155的PA口工作在選通I/O方式下時,PC口低三位作PA口聯(lián)絡(luò)線,其余位作I/O線,PB口定義為基本I/O;PA口和PB口也可同時定義為選通I/O,此時PC作PA口、PB口聯(lián)絡(luò)線。在8155操作前,須由CPU向命令寄存器送命令字,設(shè)定其工作方式,命令字只能寫入不能讀出。8155內(nèi)部還有一個狀態(tài)寄存器,可以鎖存8155 I/O口和定時器的當前狀態(tài),供CPU查詢,狀態(tài)寄存器和命令寄存器共用一個地址,只能讀出不能寫入。因此可以認為8155的00H口是命令/狀態(tài)口,CPU往00H寫入的是命令字,而從中讀出的是狀態(tài)字。 8.1 并行I/O口的擴展7/19/

13、2022計算機系 7.2 存儲器的擴展單片機外部擴展常用程序存儲器芯片為EPROM,其掉電后信息不會丟失,且只有在紫外線的照射下,存儲器的單元信息才可擦除。用作擴展的EPROM主要是27系列,如2716、2732、2764、27128、27256等,其中高位數(shù)字27表示該芯片是EPROM,低位數(shù)字表明存儲容量,如2716表示16K個存儲位,亦即字節(jié)容量為2K的EPROM。常用的還有EEPROM ,即28系列,如2816/2817、2864等,型號含義同上。 8.2.1 程序存儲器的擴展7/19/2022計算機系 常用EPROM芯片管腳和封裝如下圖所示。EPROM除2716外均為28線雙列直插式

14、封裝,各引腳定義如下。A0Ai:地址輸入線,i=1215。D0Di:三態(tài)數(shù)據(jù)總線,讀或編程校驗時為數(shù)據(jù)輸出線,編程時為數(shù)據(jù)輸入線。其余時間呈高阻狀態(tài)。PGM:編程脈沖輸入線。OE:讀出選通線,低電平有效。CE:片選線,低電平有效。VPP:編程電源線,其值因芯片及制作廠商而異。VCC:電源線,接+5V電源。GND:接地。7.2 存儲器的擴展7/19/2022計算機系 EPROM的操作方式主要有以下幾種。編程方式:把程序代碼(目標文件)固化到EPROM中。編程校驗方式:讀出EPROM中的內(nèi)容,校驗編程操作的正確性。讀出方式:CPU從EPROM中讀出代碼。維持方式:數(shù)據(jù)端呈高阻態(tài)。編程禁止方式:用于

15、多片EPROM并行編程。 7.2 存儲器的擴展7/19/2022計算機系 2764和27128的操作方式 27256的操作方式 7/19/2022計算機系 注: X 代表任意狀態(tài)。 * 代表VPP的大小與型號和編程方式有關(guān)。 * * 代表VCC的大小與型號和編程方式有關(guān)。 27512 的操作方式 7.2 存儲器的擴展7/19/2022計算機系 【例】 8051擴展一片2764 EPROM(8KB)。解:1. 單片機的接口信號:ALE、PSEN、EA 2. 與單片機的連接方法 (1)地址線 P2口的P2.0P2.4與EPROM的高5位地址線及片選CE連接;P0口經(jīng)地址鎖存器輸出的地址線與EPRO

16、M的低8位地址線相連,同時P0口又與EPROM的數(shù)據(jù)線相連;單片機ALE連接鎖存器的鎖存控制端; (2)數(shù)據(jù)線:P0 (3)控制線:PSEN接EPROM的輸出允許OE;8051的內(nèi)、外存儲器選擇端EA接地。擴展單片EPROM,其片選CE直接接地即可。7.2 存儲器的擴展7/19/2022計算機系 單片機與外部ROM的連接 7.2 存儲器的擴展7/19/2022計算機系 7.2.2 數(shù)據(jù)存儲器的擴展數(shù)據(jù)存儲器用于存儲現(xiàn)場采集的原始數(shù)據(jù)、運算結(jié)果等。外部數(shù)據(jù)存儲器應(yīng)能隨機讀/寫,通常由半導(dǎo)體靜態(tài)隨機讀/寫存儲器RAM組成。EEPROM芯片有時也會用作外部數(shù)據(jù)存儲器。靜態(tài)RAM主要有讀出、寫入、維持

17、三種工作方式。常用的靜態(tài)RAM(SRAM)電路有61系列的6116以及62系列的6264、62128、62256等。 8.2 存儲器的擴展7/19/2022計算機系 各引腳定義如下:A0Ai:地址輸入線,i=10(6116), 12(6264), 13(62128),14(62256)。D0Di:雙向三態(tài)數(shù)據(jù)線(6116為I/O0I/O7)。CE:片選信號輸入端,低電平有效。6264的26腳(CS1)為高電平,且CE為低電平時才選中該片。OE:讀選通信號輸入端,低電平有效。WE:寫允許信號輸入端,低電平有效。VCC:工作電源,接+5V電壓。GND:接地。 7.2 存儲器的擴展7/19/2022

18、計算機系 6116的引腳與封裝 7/19/2022計算機系 62系列SRAM引腳與封裝 OEOEOEWEWEWE7/19/2022計算機系 注: X代表任意狀態(tài)。 *代表對于CMOS靜態(tài)RAM電路,CE為高電平時,電路處于降耗狀態(tài)。此時VCC可降至3V左右,內(nèi)部所存數(shù)據(jù)也不會丟失。 6116/6264/62128/62258的操作方式 7.2 存儲器的擴展7/19/2022計算機系 【例】 8051擴展三片6116靜態(tài)RAM(6KB)。解:擴展靜態(tài)RAM與擴展ROM相似,只是控制信號有所不同,如下圖所示為8051用線選法擴展2KB靜態(tài)RAM6116的連線圖。 單片機的RD接EPROM的輸出允許

19、OE;WR接EPROM的寫允許WE。 P2口的P2.3、P2.4未用,所以它們的狀態(tài)與2764的尋址無關(guān);假設(shè)無關(guān)位P2.3和P2.4為0,則1號片的地址為C000HC7FFH,2號片的地址為 A000HA7FFH,3號片的地址為6000H67FFH。7.2 存儲器的擴展7/19/2022計算機系 8051擴展6KB RAM 7/19/2022計算機系 【例】 8051同時擴展一片62256 RAM和一片27256 ROM。解:用線選法同時擴展一片62256 RAM和一片27256 ROM,邏輯電路圖如下圖所示。 32KB EPROM的地址為 0000H7FFFH, 32KB RAM的地址也為

20、 0000H7FFFH; 雖然片選信號同為P2.7,兩者的地址相同,但不會發(fā)生地址沖突;因為外部RAM的讀寫控制信號為RD和WR,它們由MOVX指令產(chǎn)生,而外部ROM的讀控制信號在CPU向外部ROM取指令時才產(chǎn)生,也就是說外部RAM的讀寫控制信號與外部ROM的讀控制信號不會同時產(chǎn)生。7.2 存儲器的擴展7/19/2022計算機系 8051擴展ROM與RAM的邏輯電路圖 7/19/2022計算機系 8.3.1 最小系統(tǒng)1. 單片機最小系統(tǒng)的結(jié)構(gòu)單片機最小系統(tǒng)也稱為單片機的基本系統(tǒng),這種系統(tǒng)所選擇的單片機內(nèi)部資源已能滿足系統(tǒng)的硬件需求,不需外接存儲器或I/O接口。如圖8.10所示2. 8051/8

21、751最小應(yīng)用系統(tǒng)如圖8.11所示3. 8031最小應(yīng)用系統(tǒng)如圖8.12所示7.3 最小系統(tǒng)與三總線的概念7/19/2022計算機系 7.3 最小系統(tǒng)與三總線的概念總線是單片機應(yīng)用系統(tǒng)中,各部件之間傳輸信息的通路,為CPU和其他部件之間提供數(shù)據(jù)、地址以及控制信息。按總線所在位置可分:內(nèi)部總線和外部總線,前者是指CPU系統(tǒng)內(nèi)部各部件之間的通路,后者指CPU系統(tǒng)和其外圍單元之間的通路,通常所說總線是指外部總線。按通路上傳輸?shù)男畔⒖煞郑簲?shù)據(jù)總線(DB,Data Bus)、地址總線(AB,Address Bus)和控制總線(CB,Control Bus)。 8.3.2 單片機的三組總線7/19/202

22、2計算機系 1. 地址總線地址總線AB用于傳送單片機送出的地址信號,以便進行存儲單元和I/O端口的選擇。地址總線的位數(shù)決定了單片機可擴展存儲容量的大小。如8051單片機地址總線為16位,其最大可擴展存儲容量為216=64K字節(jié)。地址總線是單向的,因地址信息總是由CPU發(fā)出的。7.3 最小系統(tǒng)與三總線的概念7/19/2022計算機系 2. 數(shù)據(jù)總線數(shù)據(jù)總線(DB)用于單片機與存儲器之間或單片機與I/O端口之間傳輸數(shù)據(jù)。數(shù)據(jù)總線的位數(shù)與單片機處理數(shù)據(jù)的字長一致,如8051單片機是8位字長,數(shù)據(jù)總線的位數(shù)也是8位。從結(jié)構(gòu)上來說數(shù)據(jù)總線是雙向的,即數(shù)據(jù)既可以從單片機送到I/O端口,也可以從I/O端口送

23、到單片機。3. 控制總線控制總線用來傳輸控制信號,其中包括CPU送往外圍單元的控制信號,如讀信號、寫信號和中斷響應(yīng)信號等;還包括外圍單元發(fā)給送給CPU的信號,如時鐘信號、中斷請求信號以及準備就緒信號等。7.3 最小系統(tǒng)與三總線的概念7/19/2022計算機系 單片機的三總線結(jié)構(gòu) 7.3 最小系統(tǒng)與三總線的概念7/19/2022計算機系 并行擴展總線組成 80C51系列總線型單片機中,由P0口做地址/數(shù)據(jù)復(fù)用口;P2口做地址線的高八位;P3口的RD、WR加上控制線EA、ALE、PSEN等組成控制總線。(1) 地址總線A0A15地址總線的高8位是由P2口提供的,低8位是由P0口提供的。在訪問外部存

24、儲器時,由地址鎖存信號ALE的下降沿把P0口的低8位以及P2口的高8位鎖存至地址鎖存器中,從而構(gòu)成系統(tǒng)的16位地址總線。實際應(yīng)用系統(tǒng)中,高位地址線并不固定為8位,需要用幾位就從P2口中引出幾條口線。7.3 最小系統(tǒng)與三總線的概念7/19/2022計算機系 (2) 數(shù)據(jù)總線D0D7數(shù)據(jù)總線是由P0口提供的,因為P0口線既用作地址線,又用作數(shù)據(jù)線(分時使用),因此,需要加一個8位鎖存器。在實際應(yīng)用時,先把低8位地址送鎖存器暫存,然后再由地址鎖存器給系統(tǒng)提供低8位地址,而把P0口線作為數(shù)據(jù)線使用。在讀信號RD與寫信號WR有效時,P0口上出現(xiàn)的為數(shù)據(jù)信息。 7.3 最小系統(tǒng)與三總線的概念7/19/20

25、22計算機系 7.3 最小系統(tǒng)與三總線的概念(3) 控制總線 系統(tǒng)控制總線共12根,既P3口的第二功能再加上RESET、EA、ALE和PSEN。實際應(yīng)用中的常用控制信號如下。使用ALE作為地址鎖存的選通信號,以實現(xiàn)低8位地址的鎖存。以PSEN信號作為擴展程序存儲器的讀選通信號。以EA信號作為內(nèi)、外程序存儲器的選擇信號。以RD和WR作為擴展數(shù)據(jù)存儲器和I/O端口的讀、寫選通信號。執(zhí)行MOVX指令時,這兩個信號分別自動有效。 7/19/2022計算機系 7.4 鍵盤接口鍵盤是單片機應(yīng)用系統(tǒng)中人機交流不可缺少的輸入設(shè)備。鍵盤由一組規(guī)則排列的按鍵組成,一個按鍵實際上是一個開關(guān)元件。鍵盤通常使用機械觸點

26、式按鍵開關(guān),其主要功能是把機械上的通斷轉(zhuǎn)換為電氣上的邏輯關(guān)系(1和0)。常見的種類有:獨立式按鍵和矩陣式鍵盤。 7/19/2022計算機系 1. 獨立式按鍵 結(jié)構(gòu)如下圖所示,其特點是每個按鍵單獨占用一根I/O口線,每個按鍵工作不會影響其他I/O口線的狀態(tài)。多用于所需按鍵不多的場合??刹捎肑NB(或JB)來查詢哪一個按鍵按下,并轉(zhuǎn)向相應(yīng)的功能處理程序。 JNB P1.0, A0 ;如P1.0鍵按下,就跳到A0 JNB P1.1, A1 ;如P1.1鍵按下,就跳到A1 JNB P1.2, A2 ;如P1.2鍵按下,就跳到A2 JNB P1.3, A3 ;如P1.3鍵按下,就跳到A3 JNB P1.

27、4, A4 ;如P1.4鍵按下,就跳到A4 JNB P1.5, A5 ;如P1.5鍵按下,就跳到A5 JNB P1.6, A6 ;如P1.6鍵按下,就跳到A6 JNB P1.7, A7 ;如P1.7鍵按下,就跳到A77.4 鍵盤接口7/19/2022計算機系 2. 矩陣式鍵盤 單片機系統(tǒng)中,若使用按鍵較多時,通常采用矩陣式鍵盤,其結(jié)構(gòu)如下圖所示。由圖可知,一個44的行、列結(jié)構(gòu),可以構(gòu)成一個含有16個按鍵的鍵盤,節(jié)省了很多I/O口。 控制方式:先判斷是否有鍵按下。 如有,再判斷哪一鍵按下,并得到 鍵碼值,然后根據(jù)鍵碼值轉(zhuǎn)向不同 的功能程序。矩陣式結(jié)構(gòu)鍵盤比獨立式按鍵要復(fù) 雜,識別也要復(fù)雜一些。最

28、常用的 識別方法是鍵盤掃描法。 7.4 鍵盤接口7/19/2022計算機系 7.4 鍵盤接口8.4.1 鍵盤消抖原理機械式按鍵在按下或釋放時,由于機械彈性作用的影響,通常伴隨有一定時間的觸點機械抖動,然后其觸點才穩(wěn)定下來。其抖動過程如右圖所示,抖動時間的長短與開關(guān)的機械特性有關(guān),一般為510ms。 按鍵觸點的機械抖動7/19/2022計算機系 在觸點抖動期間檢測按鍵的通與斷狀態(tài),可能導(dǎo)致判斷出錯,即按鍵一次按下或釋放被錯誤地認為是多次操作。系統(tǒng)設(shè)計中如果開關(guān)脈沖是作為外部中斷觸發(fā)信號或要對開關(guān)脈沖進行計數(shù)時,這種情況是不允許出現(xiàn)的。為了克服按鍵觸點機械抖動所致的檢測誤判,必須采取去抖動措施,可

29、從硬件、軟件兩方面予以考慮。在鍵數(shù)較少時,可采用硬件去抖;而當鍵數(shù)較多時,采用軟件去抖。 7.4 鍵盤接口1. 濾波 P142 圖8.137/19/2022計算機系 2. 雙穩(wěn)態(tài)去抖動電路 在硬件上可采用在鍵輸出端加R-S觸發(fā)器(雙穩(wěn)態(tài)觸發(fā)器)或單穩(wěn)態(tài)觸發(fā)器構(gòu)成去抖動電路,如下圖所示是一種由R-S觸發(fā)器構(gòu)成的去抖動電路,當觸發(fā)器翻轉(zhuǎn)時,觸點抖動不會對其產(chǎn)生任何影響。鍵盤輸出經(jīng)雙穩(wěn)態(tài)電路之后變?yōu)橐?guī)范的矩形方波。 7.4 鍵盤接口 1 2 3 A 4 5 6 B S GND +5V Q a b 5.1kW5.1kW7/19/2022計算機系 3. 軟件去抖軟件上采取的措施是在檢測到有按鍵按下時,執(zhí)

30、行一個10ms左右(具體時間應(yīng)視所使用的按鍵進行調(diào)整)的延時程序,再確認該鍵電平是否仍保持閉合狀態(tài)電平,若仍保持閉合狀態(tài)電平,則確認該鍵處于閉合狀態(tài);同理,在檢測到該鍵釋放后,也應(yīng)采用相同的步驟進行確認,從而消除抖動的影響。7.4 鍵盤接口7/19/2022計算機系 8.4.2 鍵盤工作原理 對矩陣鍵盤的工作過程可分兩步:第一步是CPU首先檢測鍵盤上是否有鍵按下;第二步是再識別是哪一個鍵按下。7.4 鍵盤接口+5VX3X2X1X0Y0 Y1 Y2 Y3R0 1 2 34 5 6 7 8 9 10 11 12 13 14 15 10 0 0 00 1 1 11 0 1 1111011117/19

31、/2022計算機系 1檢測鍵盤上是否有鍵按下處理方法是:將列線送入全掃描字,讀入行線的狀態(tài)來判別。其具體過程如下:將所有列線置成低電平,然后將行線電平狀態(tài)讀入累加器A中。如果有鍵按下,總會有一根行線電平被拉至低電平,從而使行輸入狀態(tài)不全為1。2識別鍵盤中哪一個鍵按下處理方法是:將列線逐列置低電平,檢查行輸入狀態(tài),稱為逐列掃描。其具體過程如下:從Y0開始,依次輸出“0”,置對應(yīng)的列線為低電平,然后讀入行線狀態(tài),如果全為“1”,則按下的鍵不在此列;如果不全為“1”,則按下的鍵必在此列,而且是該列與“0”電平行線相交的交點上的那個鍵。為求取編碼,在逐列掃描時,可用計數(shù)器記錄下當前掃描列的列號,檢測到

32、第幾行有鍵按下,就用該行的首鍵碼加列號得到當前按鍵的編碼。7.4 鍵盤接口7/19/2022計算機系 矩陣鍵盤的連接方法有多種,可直接連接于單片機的I/O口線;可利用擴展的并行I/O口連接;也可利用可編程的鍵盤、顯示接口芯片(如8279)進行連接等等。其中,利用擴展的并行I/O口連接方便靈活,在單片機應(yīng)用系統(tǒng)中比較常用。下圖就是通過8255A芯片擴展的并行I/O口連接48的矩陣鍵盤。PA7PA6PA5PA4PA3PA2PA1PA0PC0PC1PC2PC30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 316 17 18 19 20 21 22 23 24 25 26

33、 27 28 29 30 31 CS74LS373WRRDA1A0P2.7WRRDALEP0.0P0.7D0D7RESET1K20F+5V+5V82555.1K480517/19/2022計算機系 8.4.3 鍵盤輸入程序鍵盤輸入程序設(shè)計有以下幾個方面。(1) 判別鍵盤上有無鍵閉合 其方法為:PA0PA7輸出0,然后讀PC口,若全為1,則鍵盤上沒有閉合鍵,若PC口不全為1,則有鍵處于閉合狀態(tài)。(2) 去除鍵的機械抖動 其方法為:當判別到鍵盤上有鍵閉合后,延時一段時間再判別鍵盤的狀態(tài),若仍有鍵閉合,則認為鍵盤上有一個鍵處于穩(wěn)定的閉合狀態(tài),否則認為鍵抖動。 7.4 鍵盤接口7/19/2022計算機

34、系 (3) 判別閉合鍵的鍵號 其方法為:對鍵盤的行線進行掃描,PA7PA0依次循環(huán)輸出11111110、11111101、0111111,相應(yīng)地讀PC口,若全為“1”,則說明該行上沒有鍵閉合;否則,這一行上有鍵閉合,而且就是行線為0,列線為0的交叉鍵。行首鍵號+列號即得到鍵碼值。 例如,PA7PA0輸出“11111101”時,讀入PC3PC0為“1101”時,即不全為“1”,說明有鍵按下,那一個鍵呢?顯然是PA1與PC1交叉的鍵。將行首鍵號+列號=8+1=9;也就是該鍵的鍵碼值。依此類推可得各鍵的健碼值。 (4) 使CPU對鍵的一次閉合僅作一次處理 采用的方法是等待閉合鍵釋放以后再作處理。 7

35、.4 鍵盤接口7/19/2022計算機系 開始有鍵按下否?調(diào)用6ms延時子程序?調(diào)用12ms延時子程序?有鍵按下否?判閉合鍵,編碼入棧保護閉合鍵釋放否?編碼A返回否否否是是是7.4 鍵盤接口7/19/2022計算機系 編程說明:在單片機應(yīng)用系統(tǒng)中,鍵盤掃描只是系統(tǒng)的部分程序。進行軟件系統(tǒng)編程時,一般作為子程序調(diào)用或中斷服務(wù)程序使用。該子程序入口參數(shù)為無,出口參數(shù)為鍵碼值,存于A。因此,其調(diào)用十分簡單,但一定要注意返回的鍵碼值所對應(yīng)的鍵在鍵盤的哪個位置,即要掌握鍵碼分配表。矩陣式鍵盤盡管比獨立式鍵盤復(fù)雜。但有了上述子程序后,只要學(xué)會調(diào)用,你甚至不需要知道鍵盤掃描程序是如何編寫的,COPY即可,編

36、程也就變得十分簡單了。從這可以看出平時注意查閱資料,收集實用子程序,掌握子程序的調(diào)用,對提高編程效率是多么重要。 7.4 鍵盤接口程序如:P1451487/19/2022計算機系 8.4.5 定時掃描方式CPU每隔10ms對鍵盤進行掃描。8.4.6 中斷掃描方式當鍵盤上有鍵按下時產(chǎn)生中斷請求,CPU響應(yīng)中斷,執(zhí)行中斷服務(wù)程序,判別鍵盤上閉合鍵的鍵號,并作相應(yīng)處理。7.4 鍵盤接口7/19/2022計算機系 7.5 顯示接口1. 顯示器的結(jié)構(gòu)七段LED顯示器(數(shù)碼管)系發(fā)光器件的一種。常用的LED發(fā)光器件有兩類:數(shù)碼管和點陣。數(shù)碼管內(nèi)部由七個條形發(fā)光二極管和一個小圓點發(fā)光二極管組成,根據(jù)各管的亮

37、暗組合成字符。常見數(shù)碼管有10根管腳。管腳排列如下圖所示。其中COM為公共端,根據(jù)內(nèi)部發(fā)光二極管的接線形式可分為共陰極和共陽極兩種。使用時,共陰極數(shù)碼管公共端接地,共陽極數(shù)碼管公共端接電源。每段發(fā)光二極管需510mA的驅(qū)動電流才能正常發(fā)光,一般需加限流電阻控制電流的大小。 7/19/2022計算機系 abcdefgdpcomabcdefgdpcomabcdefgdp10 9 8 7 61 2 3 4 5 g f com a be d com c dp( a )( b )(c )7.5 顯示接口共陰極 共陽極7/19/2022計算機系 LED數(shù)碼管的ag七個發(fā)光二極管。加正電壓的發(fā)光,加零電壓的

38、不能發(fā)光,不同亮暗的組合就能形成不同的字型,這種組合稱為字型碼。共陽極和共陰極的字型碼是不同的,如下表所示。 可采用硬件譯碼輸出字型碼控制顯示內(nèi)容,如采用74LS48、CD4511(共陰極)或74LS46(74LS47)、CD4513(共陽極)。也可用單片機I/O口直接輸出字型碼控制數(shù)碼管的顯示內(nèi)容。用單片機驅(qū)動LED數(shù)碼管顯示有很多方法,按顯示方式分有靜態(tài)顯示和動態(tài)顯示。 7.5 顯示接口7/19/2022計算機系 從ag管腳輸入不同的8位二進制編碼,可顯示不同的數(shù)字或字符。共陰極和共陽極的字段碼互為反碼 。顯示字符共陰極字段碼共陽極字段碼顯示字符共陰極字段碼共陽極字段碼03FHC0HC39

39、HC6H106HF9HD5EHA1H25BHA4HE79H86H34FHB0HF71H8EH466H99HP73H8CH56DH92HU3EHC1H67DH82HT31HCEH707HF8HY6EH91H87FH80HL38HC7H96FH90H8FFH00HA77H88H“滅”00FFHB7CH83H7/19/2022計算機系 2. 顯示器的工作方式和顯示程序設(shè)計(1)靜態(tài)顯示方式靜態(tài)顯示就是顯示驅(qū)動電路具有輸出鎖存功能,單片機將所要顯示的數(shù)據(jù)送出去后,數(shù)碼管始終顯示該數(shù)據(jù)(不變),CPU不再控制LED。到下一次顯示時,再傳送一次新的顯示數(shù)據(jù)。靜態(tài)顯示的接口電路采用一個并行口接一個數(shù)碼管,數(shù)

40、碼管的公共端按共陰極或共陽極分別接地或接VCC。這種接法,每個數(shù)碼管都要單獨占用一個并行I/O口,以便單片機傳送字形碼到數(shù)碼管控制數(shù)碼管的顯示。顯然其缺點就是當顯示位數(shù)多時,占用I/O口過多。為了解決靜態(tài)顯示I/O口占用過多的問題,可采用串行接口擴展LED數(shù)碼管的技術(shù)。靜態(tài)顯示方式的優(yōu)點是顯示的數(shù)據(jù)穩(wěn)定,無閃爍,占用CPU時間少。其缺點是由于數(shù)碼管始終發(fā)光,功耗比較大。 圖8.21 3位靜態(tài)顯示接口 圖8.22 8位靜態(tài)顯示接口7.5 顯示接口7/19/2022計算機系 【例】 用一位數(shù)碼管顯示開關(guān)來回撥動的次數(shù)。 解:電路如下圖所示,8051的P1口經(jīng)74LS373接一個共陰極數(shù)碼管,數(shù)碼管

41、的公共端接地。P1口輸出字型碼送至數(shù)碼管,就能控制數(shù)碼管的顯示內(nèi)容。74LS373為8D鎖存器,在電路中起驅(qū)動作用。兩個與非門組成的RS觸發(fā)器主要起消抖作用,用來消除開關(guān)按下及彈起過程中的抖動所引起的判斷錯誤。開關(guān)信號經(jīng)消抖動電路后接單片機的INT1引腳。每來回撥動一次將產(chǎn)生一個下降沿信號,通過INT1向CPU申請中斷。 軟件設(shè)計時,可用R0作為記錄中斷次數(shù)的指針(每中斷一次R0加1),然后根據(jù)R0用查表程序查出對應(yīng)的字形碼,再由P1口送出,控制數(shù)碼管顯示中斷次數(shù)值。 7.5 顯示接口7/19/2022計算機系 一位數(shù)碼管顯示電路圖 30pF 30pF 12MHz GND EA/VP 31 X

42、1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 RXD 10 U1 8051 10F VCC VCC X1 X2 X1 X2 1 2 3 U1A 4 5 6 U1

43、B 74ALS00 S 1k 1k VCC D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U2 74LS373 GND GND VCC 3007 a b f c g d e DPY dp a 7 b 6 c 4 d 2 e 1 f 9 g 10 3 LED GND 7/19/2022計算機系 (2)動態(tài)顯示方式動態(tài)掃描方法是用其接口電路把所有數(shù)碼管的8個筆劃段ag和dp同名端連在一起,而每一個數(shù)碼管的公共極COM各自獨立地受I/O線控制。CPU

44、向字段輸出口送出字形碼時,所有數(shù)碼管接收到相同的字形碼。但究竟是哪個數(shù)碼管亮,則取決于COM端,COM端與單片機的I/O口相連接,由單片機輸出位碼到I/O控制何時哪一位數(shù)碼管亮。動態(tài)掃描用分時的方法輪流控制各個數(shù)碼管的COM端,使各個數(shù)碼管輪流點亮。在輪流點亮數(shù)碼管的掃描過程中,每位數(shù)碼管的點亮?xí)r間極為短暫。但由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù)。7.5 顯示接口7/19/2022計算機系 優(yōu)點:當顯示位數(shù)較多時,采用動態(tài)顯示方式比較節(jié)省I/O口,硬件電路也較靜態(tài)顯示簡單。缺點:其穩(wěn)定度不如靜態(tài)顯示方式。而且在顯示位數(shù)較多時CPU要輪番掃描,占用CPU較多的

45、時間。 圖8.23 6位動態(tài)顯示器接口7.5 顯示接口7/19/2022計算機系 A/D轉(zhuǎn)換器用于實現(xiàn)模擬量到數(shù)字量的轉(zhuǎn)換,按轉(zhuǎn)換原理可分為四種:計數(shù)式A/D轉(zhuǎn)換器、雙積分式A/D轉(zhuǎn)換器、逐次逼近式A/D轉(zhuǎn)換器和并行式A/D轉(zhuǎn)換器。目前最常用的是雙積分式A/D轉(zhuǎn)換器和逐次逼近式A/D轉(zhuǎn)換器。雙積分式A/D轉(zhuǎn)換器的主要優(yōu)點是轉(zhuǎn)換精度高,抗干擾性能好,價格便宜,但轉(zhuǎn)換速度較慢。因此這種轉(zhuǎn)換器主要用于轉(zhuǎn)換速度要求不高的場合。逐次逼近式A/D轉(zhuǎn)換器是一種轉(zhuǎn)換速度較快、精度較高的轉(zhuǎn)換器。其轉(zhuǎn)換時間大約在幾微秒到幾百微秒之間。 7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 通常使用的逐次逼近式典型A/

46、D轉(zhuǎn)換器芯片有:ADC0801ADC0805型8位MOS型A/D轉(zhuǎn)換器,美國國家半導(dǎo)體公司產(chǎn)品。它是目前最流行的中速廉價型產(chǎn)品。片內(nèi)有三態(tài)數(shù)據(jù)輸出鎖存器,單通道輸入,轉(zhuǎn)換時間約100s左右。ADC0808/0809型8位MOS型A/D轉(zhuǎn)換器??蓪崿F(xiàn)8路模擬信號的分時采集,片內(nèi)有8路模擬選通開關(guān),以及相應(yīng)的通道地址鎖存用譯碼電路,其轉(zhuǎn)換時間為100s左右。ADC0816/0817。這類產(chǎn)品除輸入通道數(shù)增加至16個以外,其他性能與ADC0808 /0809型基本相同。7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 A/D轉(zhuǎn)換器的主要技術(shù)指標有:分辨率。以輸出二進制的位數(shù)表示分辨率,位數(shù)越多,誤差

47、越小,轉(zhuǎn)換精度越高。相對精度。相對精度是指實際的各個轉(zhuǎn)換點偏理想特性的誤差。在理想的情況下,所有的轉(zhuǎn)換點應(yīng)當在一條直線上。轉(zhuǎn)換速度。它是指完成一次轉(zhuǎn)換所需的時間。轉(zhuǎn)換時間是指由啟動轉(zhuǎn)換命令到轉(zhuǎn)換結(jié)束信號開始有效的時間間隔。電源抑制。在輸入電壓不變的前提下,當轉(zhuǎn)換電路的供電電源電壓發(fā)生變化時,對輸出也會產(chǎn)生影響。這種影響可用輸出數(shù)字量的絕對變化量來表示。此外,尚有功率損耗、溫度系數(shù)、輸入模擬電壓范圍以及輸出數(shù)字信號的邏輯電平等指標。 7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 1. ADC0809 ADC0809是典型的8位8通道逐次逼近式A/D轉(zhuǎn)換器,CMOS工藝;片內(nèi)有8路模擬開關(guān),可

48、對8路模擬電壓量實現(xiàn)分時轉(zhuǎn)換。ADC0809的引腳如下圖所示,邏輯結(jié)構(gòu)圖如下圖所示。 ADC0809的引腳如下圖7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 ADC0809邏輯結(jié)構(gòu)圖7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 ADC0809其引腳定義如下:IN7-IN0:8條模擬量輸入通道。 D7-D0 :輸出數(shù)據(jù)端。其中D7是最高位M SB,D0為最高位LSB。START:啟動轉(zhuǎn)換命令輸入端。高電平有效。 EOC:轉(zhuǎn)換結(jié)束指示腳。平時它為高電平,在轉(zhuǎn)換開始后及轉(zhuǎn)換過程中為低電平,轉(zhuǎn)換結(jié)束,它又變回高電平。OE:輸出使能端。此腳為高電平,即打開輸出緩沖器三態(tài)門,讀出數(shù)據(jù)。C、B和A:

49、通道號選擇輸入端。其中A是LSB位,這三個引腳上所加電平的編碼為000111時,分別對應(yīng)于選通通道IN7IN0。ALE:通道號鎖存控制端。當它為高電平時,將C、B和A三個輸入引腳上的通道號選擇碼鎖存,也就是使相應(yīng)通道的模擬開關(guān)處于閉合狀態(tài)。實際使用時,常把ALE和START連在一起,在START端加上高電平啟動信號的同時,將通道號鎖存起來。CLK:外部時鐘輸入。ADC809典型的時鐘頻率為640KHz ,轉(zhuǎn)換時間為100s。時鐘信號一般由單片機ALE經(jīng)分頻得到;VREF(+)、VREF(-):兩個參考電壓輸入端。 7/19/2022計算機系 2. ADC0809接口及應(yīng)用ADC0809與單片機

50、有3種接口方式:查詢方式中斷方式等待延時方式ADC0809與8051單片機的一種接口如下圖所示。電路連接及編程主要涉及兩個問題,一是8路模擬信號通道選擇及啟動A/D轉(zhuǎn)換,二是確認A/D轉(zhuǎn)換完成及轉(zhuǎn)換數(shù)據(jù)的傳送。 7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 ADC0809與8051單片機的連接 P2.07.6 A/D轉(zhuǎn)換接口問:8個通道的地址分別是多少?7/19/2022計算機系 2. ADC0809接口及應(yīng)用(1) 八路模擬通道選擇及啟動A/D轉(zhuǎn)換 A、B、C分別接地址鎖存器提供的低三位地址,只要把三位地址寫入ADC0809中的地址鎖存器,就實現(xiàn)了模擬通道選擇。圖中使用的是線選法,口地址

51、由P2.0確定,同時和相或取反后作為開始轉(zhuǎn)換的選通信號。因此該ADC0809的通道地址確定如下: 若無關(guān)位都取1,則8路通道IN0IN7的地址為FEF8HFFFFH。 7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 2. ADC0809接口及應(yīng)用(1) 八路模擬通道選擇及啟動A/D轉(zhuǎn)換 從上圖中可以看到,把ADC0809的ALE信號與START信號連接在一起了。這樣使得在ALE信號的前沿寫入地址信號,緊接著在其后沿就啟動轉(zhuǎn)換。 啟動圖中的ADC0809進行轉(zhuǎn)換只需要下面的指令(以通道0為例): MOV DPTR,#0FEF8H ; 選中通道0 MOVX DPTR,A ; WR信號有效,啟動轉(zhuǎn)

52、換7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 2. ADC0809接口及應(yīng)用(2) 轉(zhuǎn)換完成的確認和數(shù)據(jù)的傳送 A/D轉(zhuǎn)換后得到的是數(shù)字量的數(shù)據(jù),這些數(shù)據(jù)應(yīng)傳送給單片機進行處理。數(shù)據(jù)傳送的關(guān)鍵問題是如何確認A/D轉(zhuǎn)換完成,因為只有確認數(shù)據(jù)轉(zhuǎn)換完成后,才能進行傳送。為此可采用下述三種方式。 定時傳送方式 對于一種A/D轉(zhuǎn)換器來說,轉(zhuǎn)換時間作為一項技術(shù)指標是已知的和固定的。例如,若ADC0809轉(zhuǎn)換時間為128s,相當于6MHz的MCS-51單片機的64個機器周期??蓳?jù)此設(shè)計一個延時子程序,A/D轉(zhuǎn)換啟動后即調(diào)用這個延時子程序,延遲時間一到,轉(zhuǎn)換肯定已經(jīng)完成了,接著就可進行數(shù)據(jù)傳送。 7.6

53、 A/D轉(zhuǎn)換接口7/19/2022計算機系 2. ADC0809接口及應(yīng)用(2) 轉(zhuǎn)換完成的確認和數(shù)據(jù)的傳送 查詢方式 A/D轉(zhuǎn)換芯片有表明轉(zhuǎn)換完成的狀態(tài)信號,ADC0809的EOC端就是轉(zhuǎn)換結(jié)束指示腳。因此可以用查詢方式,軟件測試EOC的狀態(tài),即可確知轉(zhuǎn)換是否完成,然后進行數(shù)據(jù)傳送。 中斷方式 把表明轉(zhuǎn)換完成的狀態(tài)信號(EOC)作為中斷請求信號,以中斷方式進行數(shù)據(jù)傳送。 在圖中,EOC信號經(jīng)過反相器后送到單片機的INT1,因此可以采用查詢該引腳或中斷的方式進行轉(zhuǎn)換后數(shù)據(jù)的傳送。 7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 2. ADC0809接口及應(yīng)用(2) 轉(zhuǎn)換完成的確認和數(shù)據(jù)的傳送

54、 不管使用上述哪種方式,只要一旦確認轉(zhuǎn)換完成,即可通過指令進行數(shù)據(jù)傳送。首先送出口地址并以RD作選通信號, 當RD信號有效時,OE信號即有效,把轉(zhuǎn)換數(shù)據(jù)送上數(shù)據(jù)總線,供單片機接收,即: MOV DPTR,#0FEF8H ; 選中通道0 MOVX A, DPTR, ; RD信號有效,輸出轉(zhuǎn)換后 的數(shù)據(jù)到A累加器7.6 A/D轉(zhuǎn)換接口7/19/2022計算機系 測控系統(tǒng)是單片機應(yīng)用的重要領(lǐng)域。在測控系統(tǒng)中,除數(shù)字量之外還會遇到另一種物理量,即模擬量。例如:溫度、速度、電壓、電流、壓力等,它們都是連續(xù)變化的物理量。單片機系統(tǒng)中凡是遇到有模擬量的地方,就要進行模擬量向數(shù)字量、數(shù)字量向模擬量的轉(zhuǎn)換,也就

55、要涉及到單片機的數(shù)/模(D/A)和模/數(shù)(A/D)轉(zhuǎn)換的接口技術(shù)。數(shù)/模轉(zhuǎn)換主要用于將單片機的數(shù)字量輸出轉(zhuǎn)化為實際的模擬量控制外接設(shè)備。 7.7 D/A轉(zhuǎn)換接口7/19/2022計算機系 D/A轉(zhuǎn)換器輸入的是數(shù)字量,經(jīng)轉(zhuǎn)換后輸出的是模擬量。數(shù)/模轉(zhuǎn)換器集成電路芯片種類很多。按輸入的二進制數(shù)的位數(shù)分類,有八位、十位、十二位和十六位等。按輸出是電流還是電壓分類,分為電壓輸出器件和電流輸出器件。 7.7 D/A轉(zhuǎn)換接口7/19/2022計算機系 1. D/A轉(zhuǎn)換器的技術(shù)指標 有關(guān)D/A轉(zhuǎn)換器的技術(shù)性能指標很多,例如絕對精度、相對精度、線性度、輸出電壓范圍、溫度系數(shù)、輸入數(shù)字代碼種類(二進制或BCD碼

56、)等。D/A轉(zhuǎn)換器與接口有關(guān)的技術(shù)性能指標:分辯率。數(shù)/模轉(zhuǎn)換的分辯率是指最小輸出電壓(對應(yīng)的輸入二進制數(shù)為1)與最大輸出電壓(對應(yīng)的輸入二進制數(shù)的所有位全為1)之比。例如8位數(shù)的分辨率為1/2560.004,10位數(shù)分辨率為1/1024,約等于0.001。由此可見數(shù)字量位數(shù)越多,分辨率也就越高。分辨率通常用數(shù)字輸入信號的位數(shù)表示,有8位、10位、12位等。7.7 D/A轉(zhuǎn)換接口7/19/2022計算機系 1. D/A轉(zhuǎn)換器的技術(shù)指標建立時間。也稱穩(wěn)定時間,它是指從數(shù)字量輸入到建立穩(wěn)定的輸出電流的時間,是描述D/A轉(zhuǎn)換速率的一個重要參數(shù)。轉(zhuǎn)換精度。由于轉(zhuǎn)換器內(nèi)部的誤差等原因,當送一個確定的數(shù)字

57、量給DAC后,它的實際輸出值與該數(shù)值應(yīng)產(chǎn)生的理想輸出值之間會有一定的誤差,它就是D/A轉(zhuǎn)換器的精度。 7.7 D/A轉(zhuǎn)換接口7/19/2022計算機系 2. D/A轉(zhuǎn)換芯片DAC0832 DAC0832是一個8位D/A轉(zhuǎn)換器。單電源供電,從+5V+15V均可正常工作?;鶞孰妷旱姆秶鸀?10V+10V;電流建立時間為1s;采用CMOS工藝,低功耗20mW。 DAC0832轉(zhuǎn)換器芯片為20引腳,雙列直插式封裝。 其引腳排列如右圖所示。DAC0832引腳圖7.7 D/A轉(zhuǎn)換接口7/19/2022計算機系 DAC0832引腳的功能定義如下:DI7DI0 :8位的數(shù)據(jù)輸入端,DI7為最高位。IOUT1

58、:模擬電流輸出端1,當DAC寄存器中數(shù)據(jù)全為1時,輸出電流最大,當 DAC寄存器中數(shù)據(jù)全為0時,輸出電流為0。IOUT2 :模擬電流輸出端2,IOUT2與IOUT1的和為一個常數(shù), 即IOUT1+IOUT2=常數(shù)。RFB:反饋電阻引出端,DAC0832是電流輸出,為了取得電壓輸出,需在電壓輸出端接運算放大器。DAC0832內(nèi)部已經(jīng)有反饋電阻,所以 RFB端可以直接接到外部運算放大器的輸出端,這樣相當于將一個反饋電阻接在運算放大器的輸出端和輸入端之間。 VREF :參考電壓輸入端,此端可接一個正電壓,也可接一個負電壓,它決定0至255的數(shù)字量轉(zhuǎn)化出來的模擬量電壓值的幅度,VREF范圍為(+10-

59、10)V。VREF端與D/A內(nèi)部T形電阻網(wǎng)絡(luò)相連。VCC:芯片供電電壓,范圍為(+515)V。AGND:模擬量地,即模擬電路接地端。DGND:數(shù)字量地。 7.7 D/A轉(zhuǎn)換接口7/19/2022計算機系 DAC0832內(nèi)部結(jié)構(gòu)框圖如下圖所示。從圖中可見,在DAC0832中有兩個數(shù)據(jù)緩沖器:輸入寄存器和DAC寄存器。其控制端分別受ILE、CS、WR1和WR2、XFER的控制。 DAC0832內(nèi)部結(jié)構(gòu)框圖7.7 D/A轉(zhuǎn)換接口7/19/2022計算機系 DAC0832有三種不同的工作方式:直通方式、單緩沖方式、雙緩沖方式。1. 直通方式的接口與應(yīng)用當ILE接高電平,CS、WR1、WR2和XFER都接數(shù)字地時,DAC處于直通方式,8位數(shù)字量一旦到達DI7DI0輸入端,就立即加到8位D/A轉(zhuǎn)換器,被轉(zhuǎn)換成模擬量。DAC0832直通方式輸出連接圖如下圖所示。運放U3輸出電壓為 UOUT=-(D/256)*VREF,圖中如果向DAC0832傳送的8位數(shù)據(jù)量為40H(01000000B),則輸出電壓UOUT=-(64/256)*5V=-1.25V(反相),其輸出過程可用“MOV P0,#40H”一條指令

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論