第08章 單片機的常用接口技術(shù)-02_第1頁
第08章 單片機的常用接口技術(shù)-02_第2頁
第08章 單片機的常用接口技術(shù)-02_第3頁
第08章 單片機的常用接口技術(shù)-02_第4頁
第08章 單片機的常用接口技術(shù)-02_第5頁
已閱讀5頁,還剩92頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第8章 單片機的常用(chn yn)接口技術(shù) 單片機原理與應(yīng)用系統(tǒng)設(shè)計 電子(dinz)工業(yè)出版社 , 2009.77/18/20221共九十七頁本章(bn zhn)主要內(nèi)容 鍵盤接口(ji ku) 顯示器接口 DAC接口 ADC接口 外部并行三總線接口 大功率器件驅(qū)動接口 7/18/20222共九十七頁8.1 鍵盤(jinpn)接口 獨立式按鍵(n jin) 矩陣鍵盤 7/18/20223共九十七頁 實現(xiàn)鍵信息輸入與執(zhí)行鍵功能。 抖動時間長短與開關(guān)的機械(jxi)特性有關(guān),一般為510ms。為保證CPU對鍵的一次閉合僅作一次鍵輸入處理,必須去除抖動影響。 1鍵盤的分類(fn li)和工作原理

2、2鍵盤接口所要解決的問題 單片機常用的鍵盤有全編碼鍵盤和非編碼鍵盤兩種,本節(jié)著重介紹非編碼鍵盤 7/18/20224共九十七頁8.1.1 獨立式按鍵(n jin) 1. 獨立式按鍵(n jin)結(jié)構(gòu)1)每個按鍵占用一根口線2)電路配置靈活,軟件結(jié)構(gòu)簡單。3)適用于按鍵較少的場合。7/18/20225共九十七頁 獨立式按鍵結(jié)構(gòu)的鍵盤是最簡單的鍵盤電路,每個鍵獨立接入一根輸入線。這種鍵盤的優(yōu)點是結(jié)構(gòu)簡單、使用十分方便,目前這種結(jié)構(gòu)的鍵盤應(yīng)用還相當(dāng)普遍,這種鍵盤的缺點是隨著鍵數(shù)數(shù)量的增加所占用的I/O口線也增加。 獨立式按鍵結(jié)構(gòu)的鍵盤在沒有鍵按下時,數(shù)據(jù)輸入線均為高電平,當(dāng)有鍵按下時,與之對應(yīng)的數(shù)據(jù)

3、線將變成低電平。因此(ync)可用位指令判別是否有鍵按下。7/18/20226共九十七頁鍵盤(jinpn)的抖動問題鍵盤的抖動抖動時間一般為510ms。為了保證CPU對鍵的閉合作一次,而且是僅作一次處理,必須消除抖動。可采用(ciyng)軟、硬件方法消除抖動。*軟件消抖原理1)判斷是否有鍵按下;2)若有鍵按下,調(diào)用延時程序(延時時間大于10ms);3)再次判斷是否有鍵按下,并讀入相應(yīng)的鍵值.7/18/20227共九十七頁程序清單:START: MOV A, #0FFH MOV P1, A ;置輸入方式L1: MOV A,P1 ;讀入鍵狀態(tài) CJNE A, #0FFH, L3 ;有鍵按下,轉(zhuǎn)L3

4、 SJMP L1 ;無鍵按下,轉(zhuǎn)L13L3: LCALL DELAY ;延時10ms MOV A,P1 ;再讀P1口 CJNE A, #0FFH, L2 ;確實有鍵按下,轉(zhuǎn)L2 SJMP L1 ;是鍵抖動,返回(fnhu)L2: JNB ACC.0, TAB0 ;轉(zhuǎn)0號鍵首地址 JNB ACC.1, TAB1 ;轉(zhuǎn)1號鍵首地址 JNB ACC.2, TAB2 ;轉(zhuǎn)2號鍵首地址 JNB ACC.3, TAB3 ;轉(zhuǎn)3號鍵首地址 JNB ACC.4, TAB4 ;轉(zhuǎn)4號鍵首地址 JNB ACC.5, TAB5 ;轉(zhuǎn)5號鍵首地址 JNB ACC.6, TAB6 ;轉(zhuǎn)6號鍵首地址 JNB ACC.7,

5、 TAB7 ;轉(zhuǎn)7號鍵首地址 SJMP L1 ;再次讀入鍵狀態(tài)2. 獨立式按鍵(n jin)的程序7/18/20228共九十七頁TAB0: LJMP OPR0 ;轉(zhuǎn)向(zhunxing)0號鍵功能程序TAB1: LJMP OPR1 TAB7: LJMP OPR7 OPR0: ;0號鍵功能程序 LJMP START ;0號鍵功能程序執(zhí)行完返回 OPR7: LJMP START 7/18/20229共九十七頁8.1.2 矩陣(j zhn)鍵盤 獨立式按鍵(n jin)電路每個按鍵(n jin)開關(guān)占用一根I/O口線,當(dāng)按鍵(n jin)數(shù)較多時,要占用較多的I/O口線。因此在按鍵(n jin)數(shù)大

6、于8時,通常多采用矩陣式(也稱行列式)鍵盤電路。矩陣式按鍵電路 7/18/202210共九十七頁矩陣式鍵盤的工作(gngzu)過程鍵沒有按下時行線和列線是分開的,鍵按下將相應(yīng)的行線列線短接。連接行線的管腳作為輸入口,沒有鍵按下時,被外電路拉高為“1”連接列線的管腳作為輸出口,需要掃描鍵盤時,逐次輸出低電平,若此時有鍵按下,則與其交叉的行線回讀值為“0”,否則為“1”。根據(jù)當(dāng)前(dngqin)的掃描列線和回讀電平為“0”的行線可確定按下的鍵值。7/18/202211共九十七頁鍵掃描(somio)方式 程控掃描方式:CPU從執(zhí)行程序就開始了鍵盤(jinpn)的掃描,等待來是鍵盤(jinpn)的命令

7、。定時掃描方式:在程序初始化時,先對定時/計數(shù)器進行設(shè)置,使其每10ms中斷一次,每次中斷,CPU將去掃描一次鍵盤,若兩次中斷掃描到有鍵按下(這里考慮了消抖動),CPU將對鍵作相應(yīng)的處理。中斷掃描方式:采用中斷掃描方式必需有外部中斷接口,當(dāng)有鍵按下時,產(chǎn)生中斷請請求,CPU響應(yīng)中斷,在中斷服務(wù)程序掃描鍵盤,作相應(yīng)處理。這是多任務(wù)應(yīng)用系統(tǒng)常用的一種方式。7/18/202212共九十七頁 掃描方式鍵盤編程 判斷鍵盤上有無鍵按下:先對行進行掃描,當(dāng)掃描到行線有鍵按下時,再對列線進行掃描,行線、列線均為“0”狀態(tài)的鍵就是當(dāng)前的按鍵。 去除鍵的抖動:當(dāng)掃描到有按鍵時,軟件延時10ms再判該鍵是否仍是按鍵

8、,如是則確認(rèn)該鍵是當(dāng)前的按鍵,若不是,則把它當(dāng)成是誤操作處理。 取鍵值:根據(jù)行號、列號建立一個鍵值數(shù)據(jù)表,采用MOVC A,A+DPTR查表指令。鍵值存于: 閉合鍵的鍵碼值=以(TAB(數(shù)據(jù)表首地址)+行號+列號)為地址單元中的內(nèi)容。7/18/202213共九十七頁 由于P1口為雙向I/O口,可以采用一種稱為“線路反轉(zhuǎn)”的方法識別鍵值,步驟如下。 P1.0P1.3輸出0,由P1.4P1.7輸入并保存數(shù)據(jù)(shj)到A中; P1.4P1.7輸出0,由P1.0P1.3輸入并保存數(shù)據(jù)到B中; A的高四位與B的低四位組合成為鍵碼值; 查表求得鍵值。中斷(zhngdun)方式鍵盤編程下面以44鍵盤為例來

9、說明鍵盤掃描程序的編寫: 7/18/202214共九十七頁線路反轉(zhuǎn)鍵盤程序如下:ORG 0000HLJMP STARTORG 0003H ;外部中斷入口LJMP FZH ;轉(zhuǎn)讀鍵值程序ORG 0030HSTART: MOV P1, #0FHMOV IE, #81H ;CPU開中斷,允許外部中斷0的中斷 ORG 0080H ;鍵盤掃描中斷服務(wù)程序FZH: SETB RS0 ;保護第0組工作寄存器(主程序中默認(rèn)用第0組)MOV P1, #0F0H ;設(shè)P1.0P1.3輸出(shch)0MOV A, P1 ;讀P1口ANL A, #0F0H ;屏蔽低4位,保留高4位MOV B, A ;P1.4P1.

10、7的值存BMOV P1, #0FH ;反轉(zhuǎn)設(shè)置,設(shè)P1.4P1.7輸出0MOV A, P1 ;讀P1口ANL A, #0FH ;屏蔽高4位,保留低4位ORL A, B ;與P1.4P1.7的值相或,形成鍵碼MOV B, AMOV R0, #00H ;置鍵號初值MOV DPTR, #TAB7/18/202215共九十七頁LOOP: MOV A, R0MOVC A, A+DPTR ;查表求鍵值CJNE A,B,NEXT2 ;與按鍵(n jin)值相比較,如果不相等,繼續(xù)SJMP RR0 ;相等返回,鍵值在A中NEXT2: INC R0 ;鍵號加1CJNE R0, #10H, LOOP RR0: C

11、LR RS0 ;恢復(fù)第0組工作寄存器RETITAB: DB 0EEH, 0EDH, 0EBH, 0E7H ;0,1,2,3號按鍵的鍵值 DB 0DEH, 0DDH, 0DBH, 0D7H ;4,5,6,7號按鍵的鍵值 DB 0BEH, 0BDH, 0BBH, 0B7H ;8,9,10,11號按鍵的鍵值 DB 07EH, 07DH, 07BH, 077H ;12,13,14,15號按鍵的鍵值END7/18/202216共九十七頁8.2 顯示器接口(ji ku) LED數(shù)碼管 LED數(shù)碼管的靜態(tài)顯示(xinsh)接口 LED數(shù)碼管的動態(tài)顯示接口 7/18/202217共九十七頁8.2.1 LED數(shù)

12、碼管 aabcdefghabcdefghbcdefghgfGNDabedGNDcdp共陽極共陰極符號與引腳LED數(shù)碼管 LED數(shù)碼管是由發(fā)光(f un)二極管顯示字段的顯示器件。在微機應(yīng)用系統(tǒng)中通常使用的是七段LED。這種顯示塊有共陰極與共陽極兩種。7/18/202218共九十七頁 為使LED顯示不同(b tn)的符號或數(shù)字,要為LED提供段碼(或稱字型碼)。提供給LED顯示器的段碼(字型碼)正好是一個字節(jié)(8段)。各段與字節(jié)中各位對應(yīng)關(guān)系如下:按上述(shngsh)格式,8段LED的段碼如下表所示。7/18/202219共九十七頁LED段碼表(8段)7/18/202220共九十七頁7/18/

13、202221共九十七頁 8位LED數(shù)碼管顯示器有8根位選線和64根段選線。根據(jù)顯示方式不同,位選線與段選線的連接方法(fngf)不同。段選線控制字符選擇,位選線控制數(shù)碼管的亮、滅。 7/18/202222共九十七頁8.2.2 LED數(shù)碼管的靜態(tài)(jngti)顯示接口 基本原理 多個數(shù)碼管顯示時,同時點亮顯示,每一位數(shù)碼管恒定的顯示,不閃爍。 顯示程序(chngx)簡單,但是要求較多的I/O口線 驅(qū)動電流較小7/18/202223共九十七頁簡單(jindn)的靜態(tài)顯示7/18/202224共九十七頁靜態(tài)顯示的特點是:原理簡單(jindn);顯示亮度強,無閃爍;但占用I/O資源較多。靜態(tài)顯示(xi

14、nsh)電路 7/18/202225共九十七頁 LED數(shù)碼管靜態(tài)顯示子程序如下。DISP:PUSH ACC ;保護現(xiàn)場PUSH DPHPUSH DPL MOV SCON,#00H ;初始化串行口為工作方式0 MOV R1,#08H ;顯示8個數(shù)據(jù) MOV R0,#67H ;顯示緩沖區(qū)首地址送R0 MOV DPTR,#SEGTAB ;字形碼表的入口地址LOOP:MOV A,R0 ;取一個待顯示數(shù)據(jù) MOVC A,A+DPTR ;查表獲取字形碼 MOV SBUF,A ;送串行口輸出(shch)DELAY: JNB TI,DELAY ;等待發(fā)送完畢 CLR TI ;清“0”發(fā)送標(biāo)志 DEC R0 ;

15、指針下移一位,準(zhǔn)備取下一個待顯示數(shù)據(jù) DJNZ R1,LOOP ;直到8個數(shù)據(jù)全顯示完7/18/202226共九十七頁POP DPL ;恢復(fù)(huf)現(xiàn)場 POP DPHPOP ACCRETSEGTAB: DB 0C0H, 0F9H, 0A4H, 0B0H, 99H ; 0, 1, 2, 3, 4 DB 92H, 82H, 0F8H, 80H, 90H ; 5, 6, 7, 8, 9 DB 88H, 83H, 0C6H, 0A1H, 86H ; A, B, C, D, E DB 8EH, 0BFH, 8CH, 0FFH ; F,-,P,暗7/18/202227共九十七頁8.2.3 LED數(shù)碼管

16、的動態(tài)顯示接口(ji ku) 基本原理: 多個數(shù)碼管顯示時,依次循環(huán)(xnhun)點亮每一個數(shù)碼管,利用人的視覺暫留看到整個顯示內(nèi)容,只有循環(huán)(xnhun)速度足夠快,才不閃爍。 顯示程序較復(fù)雜,但是節(jié)省I/O口線 驅(qū)動電流較大7/18/202228共九十七頁LED數(shù)碼管動態(tài)顯示接口(ji ku)電路7/18/202229共九十七頁 程序清單如下(rxi):DISPLAY: MOV R0, #30H ;顯示緩沖器首地址送R0 MOV R2, #20H ;位選碼指向P0.5DISPLAY1: MOV A, R0 ;取出要顯示的數(shù)MOV DPTR, #SEGTAB ;指向字型表首地址MOVC A,

17、 A+DPTR ;取出顯示碼MOV DPTR, #0FD01H ;PA口地址送DPTRMOVX DPTR, A ;輸出顯示碼到8155A口MOV A, R2 ;位選碼送AINC DPTR ;8155PB口寄存器地址MOVX DPTR, A ;從8155B口輸出位選碼LCALL DELL ;延時1msMOV A, R2 JNB ACC.0, DISPLAY2 ;6位全顯示完了嗎?未完,則繼續(xù)RET7/18/202230共九十七頁 DISPLAY2: INC R0 ;計算(j sun)下一位要顯示的數(shù)的地址MOV A, R2 ;求下一個位選碼RR A ;沒有到,右移一位MOV R2, AAJMP

18、DISPLAY1DELL: MOV R3, #7DHDELL1: NOP NOPDJNZ R3, DELL1RET SEGTAB: DB 3FH, 06H, 5BH, 4FH, 66H ;字符0,1,2,3,4的字形碼DB 6DH, 7DH, 07H, 7FH, 6FH ;字符5,6,7,8,9的字形碼7/18/202231共九十七頁8.3 DAC接口(ji ku) DAC0832與單片機的接口(ji ku) TLC5618與單片機的接口 7/18/202232共九十七頁 DAC芯片有多種類型:按DAC的性能分,有通用、高速和高精度等轉(zhuǎn)換器;按內(nèi)部結(jié)構(gòu)分,有不包含數(shù)據(jù)(shj)寄存器的,也有包

19、含數(shù)據(jù)(shj)寄存器的;按位數(shù)分,有8位、12位、16位等;按其輸出模擬信號分,有電流輸出型和電壓輸出型;按其數(shù)據(jù)輸入總線分,有串行輸入型和并行輸入型。 7/18/202233共九十七頁8.3.1 DAC0832與單片機的接口(ji ku) 分辨率通常用數(shù)字量的位數(shù)表示,一般為8位、12 位、16位等。分辨率8位D/A,它表示可以對滿量程的1/28的增量作出反應(yīng)。 轉(zhuǎn)換精度指滿量程時DAC實際模擬輸出值和理論值的接近程 度。 轉(zhuǎn)換時間一般為幾十納秒幾微秒。輸出方式一般為電流型輸出,也有電壓型輸出。溫度范圍(fnwi)指D/A器件溫度使用范圍。線性度指DAC實際轉(zhuǎn)換特性曲線和理想直線之間的最大

20、偏移差 1. D/A轉(zhuǎn)換器性能指標(biāo)7/18/202234共九十七頁 DAC0830/ 0831/ 0832是8位的D/A轉(zhuǎn)換集成芯片,與微處理器完全兼容,它們可以完全相互(xingh)代換,國內(nèi)使用最為廣泛的是DAC0832,下面詳細(xì)討論DAC0832。7/18/202235共九十七頁 * 分辨率為8位 * 轉(zhuǎn)換時間為1us * 輸出電流線性度可在滿量程下調(diào)節(jié) * 功耗為20mw * 邏輯電平與TTL兼容 * 供電電源為單一電源,可在5-15V內(nèi) (1)DAC0832技術(shù)指標(biāo) 7/18/202236共九十七頁(2)DAC0832內(nèi)部(nib)框圖7/18/202237共九十七頁DAC0832共

21、有20條引腳,雙列直插式封裝。數(shù)字量輸入(shr)線8條( DI7DI0 );控制線5條;輸出線3條;電源線4條。(3)DAC0832的引腳CSWR1AGNDDI3DI2DI1DI0VREFRFRDGNDVccILEWR2XFERDI4DI5DI6DI7IOUT2IOUT108327/18/202238共九十七頁DAC0832 的引腳定義DI0DI7: 數(shù)字量輸入。ILE: 輸入鎖存允許??刂频谝患壘彌_器的鎖存控制第二級緩沖器的鎖存7/18/202239共九十七頁VREF:基準(zhǔn)電壓。AGND:模擬信號地。VCC:工作電源。DGND:數(shù)字信號地。Rfb:片內(nèi)反饋電阻。IOUT1:IOUT2:電流

22、輸出端,IOUT1+IOUT2=C7/18/202240共九十七頁(4) DAC0832與單片機的接口(ji ku)單片機和0832接口時,有三種連接方式(fngsh):直通方式單緩沖方式 用于一路模擬量輸出或多路模擬量非同步輸出的場合。雙緩沖方式 用于多個DAC0832 同時輸出的場合。7/18/202241共九十七頁單緩沖(hunchng)方式接口電路 將兩級寄存器的控制信號并接在一起,無關(guān)的地址線取1,則DAC0832對應(yīng)的端口地址為7FFFH 。7/18/202242共九十七頁 采用(ciyng)D/A轉(zhuǎn)換器可以輸出鋸齒波、矩形波、三角波、梯形波等電壓波形。 采用單緩沖方式輸出上鋸齒波

23、的D/A轉(zhuǎn)換程序: ORG 2000HSTART:MOV DPTR,#7FFFH ;選中0832 MOV A,#00H ;D/A數(shù)據(jù)初值LOOP: MOVX DPTR,A ;轉(zhuǎn)換 ACALL DELAY2ms ; 調(diào)用2ms延時子程序 INC A ;修改D/A數(shù)據(jù) SJMP LOOP ;循環(huán),連續(xù)(linx)輸出A=00A=0FFH7/18/202243共九十七頁雙緩沖(hunchng)方式接口電路適應(yīng)于含有多路D/A轉(zhuǎn)換且要求同步輸出的單片機應(yīng)用系統(tǒng)中。第一步進行數(shù)字量輸入鎖存,第二步為D/A轉(zhuǎn)換輸出。7/18/202244共九十七頁 無關(guān)地址線取1,則1#0832數(shù)據(jù)輸入的端口地址為BFF

24、FH,2#0832數(shù)據(jù)輸入的端口地址為DFFFH,同時啟動兩路D/A工作的端口地址為7FFFH。對應(yīng)的程序段為: 7/18/202245共九十七頁MOV DPTR,#0BFFFH ;指向1#08032端口地址MOV A,#DATA1MOVX DPTR,A ;將DATA1送入1#0832輸入鎖存器MOV DPTR,#0DFFFH ;指向2#0832端口地址MOV A,#DATA2MOVX DPTR,A ;將DATA2送入2#0832輸入鎖存器MOV DPTR,#7FFFH ;指向啟動(qdng)1#、2#0832工作端口地址MOVX DPTR,A ;同時啟動1#、2#0832;實現(xiàn)同步輸出。 7

25、/18/202246共九十七頁8.3.2 TLC5618與單片機的接口(ji ku) TLC5618是美國Texas Instruments公司生產(chǎn)的帶有緩沖基準(zhǔn)輸入的可編程雙路12位電壓輸出(shch)數(shù)/模轉(zhuǎn)換器。DAC輸出(shch)電壓范圍為基準(zhǔn)電壓的兩倍,且其輸出(shch)是單調(diào)變化的。 DIN (1腳):串行數(shù)據(jù)輸入; SCLK(2腳):串行時鐘輸入;CS (3腳) :片選信號,低電平有效;OUTA(4腳):DAC A模擬輸出;AGND(5腳):模擬地;REFIN(6腳):基準(zhǔn)電壓輸入;OUTB(7腳):DAC B模擬輸出; VDD (8腳):正電源,5V。 7/18/20224

26、7共九十七頁TLC5618的內(nèi)部結(jié)構(gòu)引腳圖 7/18/202248共九十七頁 TLC5618有三種可能的數(shù)據(jù)傳送方式。所有的傳送均在變?yōu)楦唠娖胶罅⒓?lj)發(fā)生。 寫緩沖器A且緩沖器B更新(gngxn) 寫雙緩沖器,緩沖器B更新 寫雙緩沖器 7/18/202249共九十七頁DACS BIT P1.0DACLK BIT P1.1DIN BIT P1.2EXDA1: SETB DACLK ;時鐘信號(xnho)變高CLR DACS ;信號變低MOV R7, #08H ;循環(huán)次數(shù)送R7給出將累加器A和寄存器B中的數(shù)據(jù)(shj)寫入TLC5618的子程序,A中存放一幀數(shù)據(jù)(shj)的高8位,B中存放一

27、幀數(shù)據(jù)(shj)的低8位。TLC5618與89C51接口電路 7/18/202250共九十七頁EXDA2: RLC A MOV DIN, C CLR DACLKSETB DACLK DJNZ R7, EXDA2MOV A, BMOV R7, #08HEXDA3: RLC AMOV DIN, CCLR DACLKSETB DACLKDJNZ R7, EXDA3SETB DACLKSETB DACSRET7/18/202251共九十七頁8.4 ADC接口(ji ku) ADC0809與單片機的接口(ji ku) MC14433與單片機的接口 7/18/202252共九十七頁8.4.1 ADC080

28、9與單片機的接口(ji ku) *計數(shù)式: 現(xiàn)已停產(chǎn)*雙斜率積分式: 精度高、轉(zhuǎn)換速度慢,用于數(shù)字式儀表中,*并行式:速度最快,價格昂貴,常用于高速測控系統(tǒng)中*間接式:首先(shuxin)將轉(zhuǎn)換成某種中間變量(時間、頻率、脈沖、 寬度等)再把這個中間變量轉(zhuǎn)換式數(shù)字代碼輸出,*逐次逼近式:速度快、精度度,廣泛用于單片應(yīng)用系統(tǒng)中。*串行輸出式:應(yīng)用單片機速度要求不高的應(yīng)用系統(tǒng)中1. A/D轉(zhuǎn)換器種類7/18/202253共九十七頁分辨率 通常用二進制的位數(shù)表示,它表示對滿量程的1/2n 的增量作出反應(yīng)。量程 能轉(zhuǎn)換的電壓范圍。精度 指滿量程時ADC實際模擬輸出值和理論值的接近程度。 轉(zhuǎn)換時間 完成

29、一次A/D轉(zhuǎn)換所需時間,又稱孔徑時間。輸出邏輯電平 一般與TTL電平配合。輸出代碼 一般輸出為二進制碼,也有BCD碼及段碼輸出方式溫度范圍 在一定溫度范圍內(nèi)才能保持額定精度指標(biāo)。對基準(zhǔn)電壓要求 考慮(kol)是否外接精密基準(zhǔn)電源。 2. A/D轉(zhuǎn)換器性能指標(biāo)7/18/202254共九十七頁 8位A/D轉(zhuǎn)換器芯片很多,包括單通道的AD0801、0802、0803、0804、0805及8通道的ADC0808、ADC0809和16通道的ADC0816、0817。下面詳細(xì)(xingx)討論八位遂次逼近式A/D轉(zhuǎn)換器ADC0809單片CMOS器件。3. 8位A/D轉(zhuǎn)換器與89S51接口(ji ku)7/

30、18/202255共九十七頁 * 分辨率為8位,不必進行調(diào)零和調(diào)滿量程 * 最大不可調(diào)誤差小于LSB * 輸入電壓范圍0+5V * 轉(zhuǎn)換時間為100us左右 * 輸出為二進制編碼與TTL電平兼容 * 具有鎖存控制的8路模擬開關(guān) * 功耗為15mw * 供電電源為單一的5V電源 (1)ADC0809技術(shù)指標(biāo) 7/18/202256共九十七頁(2)ADC0809內(nèi)部(nib)框圖7/18/202257共九十七頁D0D7:8位數(shù)字量輸出 EOC: 轉(zhuǎn)換結(jié)束信號脈沖輸出端,當(dāng)EOC=1時表示A/D結(jié)束, EOC=0,表示正在轉(zhuǎn)換OE:輸出使能端 START:A/D啟動控制(kngzh) CLK:外部時

31、鐘輸入端,頻率范圍為101280KHZ VREF+ 、 VREF-:參考電壓輸入端 VCC、GND:單一正5V工作電源 IN0IN7:8路模擬量輸入端 ALE:地址鎖存控制信號端 ADDA、ADDB、ADDC: 8路模擬開關(guān)的三位地址選通輸入端, 以選擇對應(yīng)的輸入通道(3)ADC0809的引腳7/18/202258共九十七頁 ADDA、ADDB、ADDC與輸入通道(tngdo)的選擇 7/18/202259共九十七頁(4) ADC0809與單片機的接口(ji ku) 單片機和0832接口(ji ku)時,有兩種連接方式: 查詢式 中斷式 ADC0809時序圖如下圖所示 7/18/202260共

32、九十七頁查詢式接口電路 無關(guān)的地址線取1,則ADC0809的啟動端口地址為BFF8HBFFFH分別對應(yīng)于不同(b tn)輸入通道IN0IN7,而A/D結(jié)果輸入A中的端口地址與啟動地址相同。7/18/202261共九十七頁 對8路模擬輸入信號輪流采樣(ci yn)一次,并把結(jié)果依次放在片內(nèi)RAM30H單元開始的存儲區(qū),則對應(yīng)的程序段為: MOV R0,#30H ;置存儲區(qū)首址 MOV R2,#08H ;8路采樣 MOV DPTR,#0BFF8H ;指向通道0端口地址LOOP:MOVX DPTR,A ;啟動A/D NOP NOP ;延時WAIT:JNB P1.0,WAIT MOVX A, DPTR

33、 ;讀取A/D轉(zhuǎn)換結(jié)果 MOV R0,A ;將結(jié)果存于片內(nèi)RAM單元中 INC DPTR ;指向下一通道端口地址 INC R0 ;修改數(shù)據(jù)(shj)存儲區(qū)指針 DJNE R2,LOOP ;8路采樣完嗎?7/18/202262共九十七頁特別注意:從ADC0809的時序圖可知,ADC0809啟動后,EOC經(jīng)過一定延時才變成低電平,所以在程序段中加了兩條NOP指令,達(dá)到延時目的。否則,結(jié)果會不正確。 7/18/202263共九十七頁中斷式接口電路 通過兩個(lin )電阻及+5V電源實現(xiàn)雙極性轉(zhuǎn)單極性輸入。7/18/202264共九十七頁 對IN0模擬輸入信號采樣一次,并把結(jié)果(ji gu)依次放在

34、片內(nèi)RAM30H單元中,則對應(yīng)的程序段為: SETB EA ;開總中斷 MOV DPTR,#0BFF8H ;指向通道O端口地址 MOVX DPTR,A ;啟動A/D NOP NOP ;延時 SETB EX1 ;開中斷中斷服務(wù)于程序: MOV DPTR,#0BFF8H ;指向通道0端口地址 MOVX A, DPTR ;取A/D結(jié)果(ji gu) MOV 30H,A ;將A/D結(jié)果存片內(nèi)RAM30H RETI ;中斷返回7/18/202265共九十七頁8.4.2 MC14433與單片機的接口(ji ku) 3位半雙積分(jfn)A/D轉(zhuǎn)換器: 具有抗干擾性能好 轉(zhuǎn)換精度高(相當(dāng)于11位二進制數(shù))

35、自動校零 自動極性輸出 自動量程控制信號輸出 動態(tài)字位掃描BCD碼輸出 單基準(zhǔn)電壓,外接元件少,價格低廉等特點。 轉(zhuǎn)換速度約110次/秒。 在不要求高速轉(zhuǎn)換的場合,如溫度控制系統(tǒng)中,被廣泛采用7/18/202266共九十七頁1、MC14433的內(nèi)部結(jié)構(gòu)及引腳功能(gngnng) 7/18/202267共九十七頁 轉(zhuǎn)換電壓(diny)量程:199.9mV或1.999V。 基準(zhǔn)電壓:200mV或2V兩種。 字位動態(tài)(dngti)掃描BCD碼輸出:千、百、十、個位BCD碼輪流地在Q0Q3端輸出,同時在DS1DS4端出現(xiàn)同步字位選通信號。外接器件:時鐘振蕩器外接電阻RC、外接失調(diào)補償電容C0和外接積分

36、阻容元件R1、C1。 7/18/202268共九十七頁引腳功能如下: VAG:被測電壓VX和基準(zhǔn)(jzhn)電壓VR的接地端 VR:外接輸入基準(zhǔn)電壓(2V或200mV) VX:被測電壓輸入端。 R1、R1/C1、C1 量程(lingchng)為2V時,C1=0.1F,R1=470k 量程為200mV時,C1=0.1F,R1=27k。 C01、C02:外接失調(diào)補償電容C0端 C0的典型值為0.1F。7/18/202269共九十七頁 DU:更新轉(zhuǎn)換結(jié)果控制端。常與EOC連接(linji) CLK1和CLK0:時鐘振蕩器外接電阻端 RC值為300k,時鐘頻率為147 kHz(每秒約轉(zhuǎn)換9次) VEE

37、:負(fù)電源端,接5V VDD:正電源端,接5V VSS:數(shù)字地。通常將VSS接VAG EOC:轉(zhuǎn)換周期結(jié)束標(biāo)志(biozh)。轉(zhuǎn)換結(jié)束時輸出一個寬度為時鐘周期二分之一的正脈沖7/18/202270共九十七頁 OR:過量程標(biāo)志(biozh)。過量程時輸出低電平。 DS1DS4:多路選通脈沖輸出端。DS1對應(yīng)千位,DS4對應(yīng)個位。DS1有效(yuxio)時千位DS2有效時百位DS3有效時十位DS4有效時個位7/18/202271共九十七頁 Q0Q3:BCD碼數(shù)據(jù)輸出線。在DS1選通期間,除了(ch le)表示千位的0、1外,還表示轉(zhuǎn)換值的正、負(fù)和欠、過量程,見下表: Q30、1Q0為0Q2正、負(fù)Q3

38、欠、過Q0為17/18/202272共九十七頁2、MC14433與80C51單片機的接口(ji ku) 7/18/202273共九十七頁 電路及器件連接片內(nèi)提供時鐘發(fā)生器,只需外接一個電阻;也可采用外部輸入時鐘或外接晶體振蕩電路。 工作電源為5V,正電源接VDD,模擬部分(b fen)負(fù)電源端接VEE,模擬地VAG與數(shù)字地VSS相連為公共接地端。 為了提高抗干擾能力,正、負(fù)電源分別經(jīng)去耦電容與VSS端相連?;鶞?zhǔn)電壓(diny)須外接??捎蒑C1403通過分壓提供2V或200mV的基準(zhǔn)電壓(diny)。7/18/202274共九十七頁 DU端與EOC端相連(xin lin),以選擇連續(xù)轉(zhuǎn)換方式,

39、每次轉(zhuǎn)換結(jié)果都送至輸出寄存器。 轉(zhuǎn)換結(jié)果是動態(tài)分時輸出的BCD碼。因此,單片機只能(zh nn)通過并行I/O接口或擴展I/O接口與其相連。 讀取A/D轉(zhuǎn)換結(jié)果可以采用中斷方式或查詢方式 中斷方式時,EOC端與80C51外中斷端相連 查詢方式時,EOC端可接入80C51任一個I/O口或擴展I/O口。 7/18/202275共九十七頁例: 當(dāng)80C51開放CPU中斷,允許(ynx)外部中斷1中斷申請,并置外部中斷為邊沿觸發(fā)方式,在執(zhí)行后面程序后,每次A/D轉(zhuǎn)換結(jié)束時,都將把A/D轉(zhuǎn)換結(jié)果數(shù)據(jù)送入片內(nèi)RAM中的2EH、2FH單元。 7/18/202276共九十七頁初始化程序: INI1:SETB

40、IT1 ;選擇為邊沿觸發(fā)方式(fngsh) MOV IE,#10000100B ;CPU開中斷,外中斷允許 中斷服務(wù)程序:PINT1:MOV A,P1 JNB ACC.4,PINT1 ;等待DS1選通信號 JB ACC.0,PEr ;是否過、欠量程,是則轉(zhuǎn)Per JB ACC.2,PL1 ;結(jié)果是正或負(fù),0為負(fù) SETB 77H ;負(fù)數(shù)符號置1 AJMP PL2 PL1:CLR 77H ;正數(shù),符號位置0 PL2:JB ACC.3,PL3 ;千位數(shù)為0或1 7/18/202277共九十七頁 SETB 74H ;千位數(shù)置1 AJMP PL4 PL3:CLR 74H ;千位數(shù)置0PL4:MOV A

41、,P1 JNB ACC.5, PL4 ;等待百位BCD 碼選通信號DS2 MOV R0,#2EH XCHD A,R0 ;百位數(shù)送入2EH低4位PL5:MOV A,P1 JNB ACC.6,PL5 ;等待十位數(shù)選通信號DS3 SWAP A ;高低(god)4位交換 INC R0 ;指向2FH單元 MOV R0,A ;十位數(shù)送入2FH高4位PL6:MOV A,P1 JNB ACC.7,PL6 ;等待個位數(shù)選通信號DS4 XCHD A,R0 ;個位數(shù)送入2FH低4位 RETI ;中斷返回PEr:SETB 10H ;置過、欠量程標(biāo)志 RETI ;中斷返回7/18/202278共九十七頁8.5 外部并行

42、三總線(zn xin)接口 片外并行三總線接口的應(yīng)用(yngyng)簡介 7/18/202279共九十七頁 單片機有很強的外部擴展功能(gngnng),在進行系統(tǒng)擴展時采用總線結(jié)構(gòu)。整個擴展系統(tǒng)以單片機為核心,通過單片機外部總線把各擴展部件連接起來,總線就是連接系統(tǒng)中各擴展部件的一組公共信號線。按其功能(gngnng)分為3類:地址總線AB(address bus)、數(shù)據(jù)總線DB(data bus)和控制總線CB(control bus)。7/18/202280共九十七頁8.5.1 片外并行(bngxng)三總線接口的應(yīng)用簡介 外部(wib)并行三總線結(jié)構(gòu)圖 7/18/202281共九十七頁

43、P0口的地址/數(shù)據(jù)復(fù)用。89C51中,P0口除了做數(shù)據(jù)總線D0D7外,還要兼做低8位地址總線A0A7。16位地址總線由P2口和P0口提供。由于P0口數(shù)據(jù)、地址線的復(fù)用,作低8位地址線時要有鎖存器將地址鎖存。ALE提供了地址鎖存信號。 兩個獨立的并行擴展空間。單片機中程序存儲器和數(shù)據(jù)存儲器是兩個獨立的空間,這兩個空間都使用相同的16位地址線和8位數(shù)據(jù)線,分別為兩個64 KB的尋址空間,只是(zhsh)它們的選通控制信號不同。程序存儲器使用取指控制信號,數(shù)據(jù)存儲器使用、的存取控制信號。 外圍擴展的統(tǒng)一編址。在64 KB數(shù)據(jù)存儲器的尋址空間上,可擴展片外數(shù)據(jù)存儲器,也可擴展其它單片機外圍器件,所有擴

44、展的器件都在64 KB空間里統(tǒng)一編址,尋址方式相同。89S51并行總線具有以下(yxi)特點:7/18/202282共九十七頁8.6 大功率器件(qjin)驅(qū)動接口 光耦接口(ji ku) 繼電器接口 雙向晶閘管輸出接口 固態(tài)繼電器輸出接口 7/18/202283共九十七頁8.6.1 光耦接口(ji ku) 光耦合器:把發(fā)光(f un)二極管和光敏三極管封裝在一個管殼內(nèi)。 7/18/202284共九十七頁主要特性參數(shù):導(dǎo)通電流:當(dāng)發(fā)光二極管二端(r dun)通以一定電流時,光耦合器輸出端處于導(dǎo)通狀態(tài)。 一般典型值為10mA。 頻率響應(yīng) 高頻(o pn)信號傳輸中要考慮其頻率特性。 一般的開關(guān)量

45、輸出通道中,信號頻率一般較低,不會受光耦合器頻率特性影響。 輸出端電流:光耦合器導(dǎo)通時,流過光敏三極管的額定電流。該值表示了光耦合器的驅(qū)動能力 一般為mA量級。7/18/202285共九十七頁 輸出端暗電流:光耦合器處于截止?fàn)顟B(tài)時輸出端流過的電流。此值越小越好,以防止(fngzh)輸出誤觸發(fā)。 輸入輸出壓降:分別指發(fā)光二極管和光敏三極管的導(dǎo)通壓降。 隔離電壓(diny):表示了光耦合器對電壓(diny)的隔離能力。 光耦合器二極管側(cè)的驅(qū)動,常用帶OC門的電路(如7406、7407)進行驅(qū)動。 7/18/202286共九十七頁8.6.2 繼電器接口(ji ku) 最常用的一種輸出方式,往往利用繼

46、電器作為(zuwi)系統(tǒng)的第一級執(zhí)行機構(gòu)。通過該級繼電器輸出,可完成從低壓直流到高壓交流的過渡。 控制線圈有一定的電感,在關(guān)斷瞬間會產(chǎn)生較大的反電勢,因此常常反向并聯(lián)一個二極管,以保護驅(qū)動晶體管不被擊穿。 對于需要較大驅(qū)動電流的繼電器,可以采用達(dá)林頓輸出的光隔直接驅(qū)動;也可以在光耦與繼電器之間再加一級三極管驅(qū)動。7/18/202287共九十七頁繼電器與單片機的接口(ji ku)電路 7/18/202288共九十七頁8.6.3 雙向晶閘管輸出(shch)接口 具有雙向?qū)üδ埽茉诮涣?jioli)、大電流場合使用,且開關(guān)無觸點。 輸出部分是硅光敏雙向晶閘管,有的還帶有過零觸發(fā)檢測器,以保證在電壓接近為零時觸發(fā)晶閘管。常用的如MOC3011用于110V交流,而MOC3041等可適用于220V交流使用。7/18/202289共九十七頁8.6.4 固態(tài)(gti)繼電器輸

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論