九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

應(yīng)用系統(tǒng)配置及接口技術(shù).ppt

上傳人:za****8 文檔編號(hào):14779715 上傳時(shí)間:2020-07-30 格式:PPT 頁數(shù):94 大?。?.64MB
收藏 版權(quán)申訴 舉報(bào) 下載
應(yīng)用系統(tǒng)配置及接口技術(shù).ppt_第1頁
第1頁 / 共94頁
應(yīng)用系統(tǒng)配置及接口技術(shù).ppt_第2頁
第2頁 / 共94頁
應(yīng)用系統(tǒng)配置及接口技術(shù).ppt_第3頁
第3頁 / 共94頁

下載文檔到電腦,查找使用更方便

14.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《應(yīng)用系統(tǒng)配置及接口技術(shù).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《應(yīng)用系統(tǒng)配置及接口技術(shù).ppt(94頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、,第9章 應(yīng)用系統(tǒng)配置及接口技術(shù),9.1 人-機(jī)通道配置與接口技術(shù)9.2 前向通道中的A/D轉(zhuǎn)換器及接口技術(shù)9.3 系統(tǒng)后向通道配置及接口技術(shù)9.4 思考題與習(xí)題,應(yīng)用系統(tǒng)配置及接口,系統(tǒng)前向通道:數(shù)字量、開關(guān)量、模擬量輸入() 系統(tǒng)后向通道:數(shù)字量、開關(guān)量、模擬量輸出() 人-機(jī)通道: 鍵盤、顯示器、打印機(jī)等,圖9-1 系統(tǒng)前向、后向、人-機(jī)通道配置框圖,9.1 人機(jī)通道配置與接口技術(shù),進(jìn)行人機(jī)對話。包括人對系統(tǒng)的狀態(tài)干預(yù)與數(shù)據(jù)輸入,還有系統(tǒng)顯示運(yùn)行狀態(tài)與運(yùn)行結(jié)果等。 鍵盤、 顯示器用來完成人機(jī)對話的人機(jī)通道。,9.1.1 鍵盤接口及處理程序 9.1.2 LED顯示器接口及顯示程序 9.1.

2、3 串口控制的鍵盤顯示器接口,9.1.1 鍵盤接口及處理程序,鍵盤分編碼鍵盤和非編碼鍵盤。 鍵盤上閉合鍵的識(shí)別由專用的硬件譯碼器實(shí)現(xiàn),并產(chǎn)生鍵編號(hào)或鍵值的稱為編碼鍵盤,如BCD碼鍵盤、ASCII碼鍵盤等; 靠軟件識(shí)別的稱為非編碼鍵盤。,鍵盤中的按鍵:都是一個(gè)常開開關(guān)電路。 當(dāng)按鍵K未被按下時(shí), P1.0輸入為高電平; 當(dāng)按鍵K閉合時(shí),P1.0輸入為低電平。,圖9-2 按鍵電路,通常按鍵在閉合及斷開的瞬間均伴有一連串的抖動(dòng)。如圖所示。抖動(dòng)時(shí)間一般為510 ms。,鍵抖動(dòng)會(huì)引起一次按鍵被誤讀多次,必須去除鍵抖動(dòng)??捎糜布蜍浖煞N方法消除。 軟件方法去抖動(dòng),即檢測出鍵閉合后執(zhí)行一個(gè)510 ms延時(shí)

3、程序,再一次檢測,如果仍保持閉合,則確認(rèn)為真正按下。當(dāng)檢測到按鍵釋放后,也要給510 ms的延時(shí),待后沿抖動(dòng)消失后,才能轉(zhuǎn)入該鍵的處理程序。,鍵的消抖,圖9-3 按鍵時(shí)的抖動(dòng),1) 獨(dú)立式非編碼鍵盤接口及處理程序,各按鍵相互獨(dú)立地接通一條輸入數(shù)據(jù)線,如圖所示。 當(dāng)一個(gè)鍵按下時(shí),與之相連的輸入數(shù)據(jù)線即清0(低電平),平時(shí)該線為1(高電平)。要判別是否有鍵按下,用單片機(jī)的位處理指令十分方便。 優(yōu)點(diǎn)是電路簡單; 缺點(diǎn)是占用線多。,圖9-4 獨(dú)立連接式非編碼鍵盤,1、鍵盤結(jié)構(gòu),查詢方式鍵盤的處理程序,程序清單(設(shè)為P1口): START: MOVA,#0FFH ;輸入時(shí)先置P1口為全1 MOVP1,A

4、 MOVA,P1 ;鍵狀態(tài)輸入 PL1:JNBACC.0,P0F ;0號(hào)鍵按下轉(zhuǎn)P0F標(biāo)號(hào)地址 JNBACC.1,P1F ;1號(hào)鍵按下轉(zhuǎn)P1F標(biāo)號(hào)地址 JNBACC.2,P2F ;2號(hào)鍵按下轉(zhuǎn)P2F標(biāo)號(hào)地址 JNBACC.3,P3F ;3號(hào)鍵按下轉(zhuǎn)P3F標(biāo)號(hào)地址 JNBACC.4,P4F ;4號(hào)鍵按下轉(zhuǎn)P4F標(biāo)號(hào)地址 JNBACC.5,P5F ;5號(hào)鍵按下轉(zhuǎn)P5F標(biāo)號(hào)地址 JNBACC.6,P6F ;6號(hào)鍵按下轉(zhuǎn)P6F標(biāo)號(hào)地址 JNB ACC.7,P7F ;7號(hào)鍵按下轉(zhuǎn)P7F標(biāo)號(hào)地址 LJMPSTART ;無鍵按下返回,P0F: LJMP PROM0 P1F:LJMP PROM1 ;入口地址表

5、 P7F :LJMP PROM7 PROM0: ;0號(hào)鍵功能程序 LJMP START ;0號(hào)鍵執(zhí)行完返回 PROM1: LJMP START PROM7: LJMP START 由程序可以看出,各按鍵由軟件設(shè)置了優(yōu)先級(jí),優(yōu)先級(jí)順序依次為07。,2) 行列式鍵盤接口及工作原理,圖9-6 44矩陣鍵盤接口圖,為了減少鍵盤與單片機(jī)接口時(shí)所占用I/O線的數(shù)目,在鍵數(shù)較多時(shí),通常都將鍵盤排列成行列矩陣形式.,按鍵掃描的工作過程如下: 判斷鍵盤中是否有鍵按下; 進(jìn)行行掃描,判斷是哪一個(gè)鍵按下,若有鍵按下,則調(diào)用延時(shí)子程序去抖動(dòng); 讀取按鍵的位置碼; 將按鍵的位置碼轉(zhuǎn)換為鍵值(鍵的順序號(hào))0、1、2、F。

6、 在掃描過程中,當(dāng)發(fā)現(xiàn)某行有鍵按下,也就是輸入的列線中有一位為0時(shí),便可判別閉合按鍵所在列的位置,根據(jù)行線位置和列線位置就能判斷按鍵在矩陣中的位置,知道是哪一個(gè)鍵按下。,首先判別鍵盤中有無鍵按下:由口向鍵盤送(輸出)全掃描字,然后讀入(輸入)列線狀態(tài)來判斷。方法: 向行線(水平線)輸出全掃描字00H,把全部行線置為“0”,然后將列線的狀態(tài)讀入累加器A中。如果有按鍵按下,總有一根列線電平被拉至低電平,使列輸入不全為1。 判斷鍵盤中哪一個(gè)鍵被按下:通過將行線逐行置低電平后,檢查列輸入狀態(tài)實(shí)現(xiàn)的。 方法: 依次給行線送“0”,然后查所有列線狀態(tài),稱行掃描。如果全為1,則所按下的鍵不在此行;如果不全為

7、1,則所按下的鍵必在此行,而且是在與“0”列線相交交點(diǎn)上的那鍵。,行掃描法識(shí)別鍵號(hào)的工作原理: 將第0行輸出低電平,其余行高電平時(shí),輸出編碼為1110。然后讀取列,判別第0行是否有鍵按下。若有一鍵按下,則相應(yīng)列被拉到低電平,則表示第0行和此列相交位置上有按鍵按下。若沒有任一條列線為低電平,則說明0行上無鍵按下。 將第1行變?yōu)榈碗娖?,其余行高電平時(shí),輸出編碼為1101。讀取各列,判別是有哪一列鍵按下方法同上。 將第2行變?yōu)榈碗娖?,其余行為高電平時(shí),輸出編碼為1011。判別是否有哪一列鍵按下的方法同上。 將第3行變?yōu)榈碗娖?,其余行為高電平時(shí),輸出編碼為0111。判別是否有哪一列鍵按下的方法同上。

8、根據(jù)行線掃描值(行碼)與列線輸入值(列碼)可唯一確定按下的鍵并獲得該鍵的位置碼(鍵碼) 例如:行碼1011B;列碼1101B則:鍵碼=10111101B,鍵的位置碼及鍵值的譯碼過程,掃描過程后得到的行號(hào)存放在R0,列號(hào)存放在R2中。 鍵值(號(hào))的獲得(譯碼)通常采用計(jì)數(shù)譯碼法。 根據(jù)矩陣的結(jié)構(gòu),每個(gè)按鍵值=行號(hào)每行按鍵數(shù)+列號(hào)即: 鍵號(hào)(值)=行首鍵號(hào)+列號(hào) 第0行的鍵值為:0行4+列號(hào)(03)為0、1、2、3; 第1行的鍵值為:1行4+列號(hào)(03)為4、5、6、7; 第2行的鍵值為:2行4+列號(hào)(03)為8、9、A、B; 第3行的鍵值為:3行4+列號(hào)(03)為C、D、E、F。 44鍵盤行首鍵

9、號(hào)為0、4、8、C,列號(hào)為0,1,2,3。 鍵值譯碼子程序?yàn)镈ECODE,該子程序出口:鍵值在A中,圖9-7 44鍵盤掃描流程圖,(3) 鍵盤掃描子程序(參見圖9-7),出口: 鍵值(鍵號(hào))在A中 KEY: MOV P1,#0F0H ;令所有行為低電平 KEY1:MOV R7,#0FFH ;設(shè)置計(jì)數(shù)常數(shù) DJNZ R7,KEY1 ;延時(shí) MOV A, P1 ;讀取P1口的列值 ANL A,#0F0H ;判別有鍵值按下嗎? CPL A ;求反后,有高電平就有鍵按下 JZ EKEY ;無鍵按下時(shí)退出 LCALL DEL20 ms ;延時(shí)20 ms去抖動(dòng) SKEY:MOV A,#00 ;下面進(jìn)行行掃

10、描,1行1行掃 MOV R0,A ;R0作為行計(jì)數(shù)器,開始為0 MOV R1,A ;R1作為列計(jì)數(shù)器,開始為0 MOV R3 #0FEH ;R3暫存行掃描字,低4位為行掃描字 SKEY2:MOV A,R3 MOV P1,A ;輸出行掃描字,高4位全1 NOP NOP NOP ;3個(gè)NOP操作使P1口輸出穩(wěn)定,MOVA,P1 ;讀列值 MOVR1,A ;暫存列值 ANLA,#0F0H ;取列值 CPLA ;高電平則有鍵閉合 S123: JNZSKEY3 ;有鍵按下轉(zhuǎn)SKEY3 INCR0 ;行計(jì)數(shù)器加1 SETBC ;準(zhǔn)備將行掃描左移1位, ;形成下一行掃描字,C=1保證輸出行掃描字中高4位全為

11、1, ;為列輸入作準(zhǔn)備,低4位中只有1位為0 MOVA,R3 ;R3帶進(jìn)位C左移1位 RLCA MOVR3,A ;形成下一行掃描字R3 MOVA,R0 CJNEA,#04H,SKEY1 ;最后一行掃(4次)完了嗎? EKEY:RET,;列號(hào)譯碼 SKEY3:MOV A,R1 JNBACC.4,SKEY5 JNBACC.5,SKEY6 JNBACC.6,SKEY7 JNBACC.7,SKEY8 AJMPEKEY SKEY5:MOVA,#00H MOVR2,A ;存0列號(hào) AJMPDKEY SKEY6:MOVA,#01H MOVR2,A ;存1列號(hào) AJMPDKEY SKEY7:MOVA,#02H

12、 MOVR2,A ;存2列號(hào) AJMPDKEY SKEY8:MOVA,#03H MOVR2,A ;存3列號(hào) AJMPDKEY,;鍵位置譯碼 DKEY: MOV A,R0 ;取行號(hào) ACALLDECODE AJMPEKEY ;鍵值(鍵號(hào))譯碼 DECODE:MOV A,R0 ;取行號(hào)送A MOV B,#04H ;每一行按鍵個(gè)數(shù) MULAB ;行號(hào)按鍵數(shù) ADDA,R2 ;行號(hào)按鍵數(shù)+列號(hào)=鍵值 RET,2、中斷掃描方式,中斷掃描工作方式,即只有在鍵盤有鍵按下時(shí)才產(chǎn)生中斷申請;CPU響應(yīng)中斷,進(jìn)入中斷服務(wù)程序進(jìn)行鍵盤掃描,并做相應(yīng)處理。,圖9-9 中斷方式鍵盤接口,求出鍵號(hào)后,按不同類型進(jìn)行處理。

13、 數(shù)字鍵:存貯、顯示等 功能鍵:轉(zhuǎn)向相應(yīng)的功能處理程序,3 . 鍵處理,圖9-10 求功能鍵地址轉(zhuǎn)換程序流程圖,程序: BUFF EQU 30H KEYADR: MOV A,BUFF ;鍵號(hào)A CJNE A,0FH,KYARD1 AJMP DIGPRO ;等于F,轉(zhuǎn)數(shù)字鍵處理 KYARD1: JC DIGPRO ;小于F,轉(zhuǎn)數(shù)字鍵處理 KEYTBL: MOV DPTR,JMPTBL ;送功能鍵地址表指針 CLR C ;請進(jìn)位位 SUBB A,10H ;功能鍵值(10H1FH)減16 RL A ;(A)2,使(A)為偶數(shù):0,2,4, JMP ADPTR ;轉(zhuǎn)相應(yīng)的功能鍵處理程序,JMPTBL:

14、 AJMP AAA AJMP BBB AJMP CCC AJMP DDD AJMP EEE AJMP FFF AJMP GGG AJMP HHH AJMP III AJMP JJJJ AJMP KKK AJMP LLL AJMP MMM DIGPRO:,9.1.2 LED顯示器接口及顯示程序,單片機(jī)應(yīng)用系統(tǒng)中使用的顯示器主要有: 發(fā)光二極管,簡稱 LED (Light Emitting Diode); 液晶顯示器,簡稱 LCD (Liquid Crystal Display); CRT顯示器,1. LED顯示器,結(jié)構(gòu)原理:有共陰極和共陽極兩種,圖9-11 LED 7段顯示器,表9-1 共陰極和

15、共陽極7段LED顯示字型編碼,例:共陰極LED, (COM)端接地, a 、 b、g,dp送入 11100001,則顯示“7?!?譯碼方式 硬件譯碼: 用專用譯碼器電路,將欲顯示的字符轉(zhuǎn)換為段碼。 軟件譯碼: 利用查表法,將段碼作成一個(gè)表,以字符值為索引,可查出不同字符的相應(yīng)段碼。,2. LED顯示器接口及顯示方式,LED顯示器有靜態(tài)顯示和動(dòng)態(tài)顯示兩種方式。,LED靜態(tài)顯示方式: 顯示某個(gè)字符時(shí),LED相應(yīng)的段恒定地導(dǎo)通或截止。 各位的共陰極(公共端K0)接地.若為共陽極(公共端K0),則接+5v電源。 每位的段選線(adp)分別與8位的輸出口相連,相互獨(dú)立,字符一經(jīng)確定,相應(yīng)鎖存的輸出維持不

16、變。 可用8D鎖存器(如74LS273)或帶鎖存的譯碼器(如CD4511)、串行移位寄存器(如74LS164)來擴(kuò)展 IO端口.其輸出端(8位)可驅(qū)動(dòng)一位LED。 靜態(tài)顯示器的亮度較高,編程容易,管理也較簡單,但占用口線資源較多。在顯示位數(shù)較多的情況下,一般都采用動(dòng)態(tài)顯示方式。,2) LED動(dòng)態(tài)顯示方式,在多位LED顯示時(shí),將所有位的段選線并聯(lián)在一起,由一個(gè)8位口控制。而共陰(或共陽)極公共端分別由相應(yīng)的線控制,實(shí)現(xiàn)各位的分時(shí)選通。圖9-12所示為6位共陰極LED動(dòng)態(tài)顯示接口電路。,圖9-12 6位LED動(dòng)態(tài)顯示接口電路,例如,顯示“EE020”, I/O口1和I/O口2輪流送入段選碼、位選碼

17、及顯示狀態(tài)如圖9-13所示。 段選碼、位選碼每送入一次后延時(shí)1 ms,因人眼的視覺暫留時(shí)間為100 ms,所以每位顯示間隔不超過20 ms,并保持延時(shí)一段時(shí)間,造成視覺暫留效果。 稱為軟件掃描顯示。,圖9-13 6位動(dòng)態(tài)掃描顯示狀態(tài),3. LED顯示器與89C51接口及顯示子程序,P0口輸出段選碼,P1口輸出位選碼,,圖9-14 6只LED動(dòng)態(tài)顯示接口,圖915 DIS顯示子程序流程圖,DIS顯示子程序清單如下: DIS:MOVR0,#7EH ;顯示緩沖區(qū)末地址R0 MOVR2,#01H ;位控字,先點(diǎn)亮最低位(右邊) MOVA,R2 MOVDPTR,#TAB ;字型表頭地址DPTR LP0:

18、MOVP1,A MOVA,R0 ;取顯示數(shù)據(jù) MOVCA,A+DPTR ;取出字形碼 MOVP0,A ;送出顯示 ACALLD1MS ;調(diào)延時(shí)子程序 DECR0 ;數(shù)據(jù)緩沖區(qū)地址減1 MOVA,R2 JBACC.5,LP1 ;掃描到最左面的顯示器了嗎? RLA ;沒有到,左移1位 MOVR2,A AJMPLP0 LP1:RET TAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH DB6FH,77H,7CH, 39H,5EH,79H,71H,40H,00H D1MS:MOVR7,#02H ;延時(shí)1 ms子程序 DL:MOVR6,#0FFH DL1:DJNZR6,D

19、L1 DJNZR7,DL RET,(一).接口電路 74LS164 :鍵列掃描 74LS164 、:串行口擴(kuò)展并口,LED驅(qū)動(dòng) P1.O、P1.1:鍵行線輸入 RXD:串行數(shù)據(jù)輸出 TXD:移位脈沖(串口模式0) P1.2:顯示輸出控制,9.1.3 串口控制的鍵盤顯示器接口,圖917 串行鍵盤掃描和顯示接口電路,(二).程序設(shè)計(jì) 功能:循環(huán)掃描鍵盤,若有數(shù)字鍵(09)則送顯示緩沖區(qū)顯示,若有命令鍵(AF)則轉(zhuǎn)相應(yīng)命令處理。 片內(nèi)RAM分配:58H5FH:顯示緩沖區(qū) ;60H:顯示緩沖區(qū)指針 寄存器分配:R6列選擇;R3列號(hào) 子程序嵌套:LED顯示子程序 KEY: MOV A,00H ;向串口數(shù)

20、據(jù)緩沖器送全0 CLR P1.2 MOV SBUF,A KL0: JNB TI,KL0 ;等待8位數(shù)據(jù)發(fā)送完畢 CLR TI ;清中斷標(biāo)志 KL1: JNB P1.0,PK1 ;第1行有鍵按下否? JB P1.1,KL1 ;第2行有鍵按下否? PK1: ACALL D10MS ;有鍵按下,延時(shí)10s消除鍵抖動(dòng) JNB P1.0,PK2 ;確定是否鍵抖動(dòng)引起 JB P1.1,KL1,PK2: MOV R7,08H ;不是鍵抖動(dòng)引起則逐列掃描 MOV R6,0FEH ;選中第0列 MOV R3,00H ;記下列號(hào)初值 PL5: MOV A,R6 ;使某一列為低 MOV SBUF,A KL2: JN

21、B P1.0,PK4 ;是第1行嗎? JNB P1.1,PK5 ;是第2行嗎? MOV A,R6 ;不是本列,則繼續(xù)下一列 RL A MOV R6,A INC R3 ;列號(hào)加1 DJNZ R7,PL5 ;若仍未找到,則執(zhí)行下一次 RET PK5: MOV R4,08H ;是第2行,則R4送首鍵號(hào)值08H AJMP PK3 ;轉(zhuǎn)鍵處理 PK4: MOV R4,00H ;是第1行,則R4送首鍵號(hào)值00H PK3: MOV A,00H ;等待鍵釋放 MOV SBUF,A KL3: JNB TI,KL3 CLR TI,KL4: JNB P1.0,KL4 JNB P1.1,KL4 MOV A,R4 ;取

22、鍵號(hào) ADD A,R3 CLR C SUBB A,0AH ;是命令鍵嗎? JNC KL6 ;轉(zhuǎn)命令鍵處理程序 MOP DPTR,TABL ;字形碼表首址送DPTR ADD A,0AH ;恢復(fù)鍵號(hào) MOVC A,ADPTR ;取字形碼數(shù)據(jù) MOV R0,60H ;取顯示緩沖區(qū)指針 MOV R0,A ;將字形碼入顯示緩沖區(qū) INC R0 CJNE R0,60H,KD ;顯示緩沖區(qū)未滿轉(zhuǎn)KD MOV 60H,58H ;重設(shè)顯示緩沖區(qū)首地址 SJMP KD1 ;轉(zhuǎn)顯示 KD: MOV 60H,R0 ;保存顯示緩沖區(qū)地址 KD1: ACALL LED ;調(diào)用送顯示程序 RET,KL6: MOV B,03

23、H ;修正命令鍵地址轉(zhuǎn)移表指針 MUL AB MOV DPTR,KTAB ;地址轉(zhuǎn)移表首地址送DPTR JMP ADPTR ;根據(jù)指針跳轉(zhuǎn) KTAB: LJMP K1 ;K1,K3為各命令鍵服務(wù)程序首地址 LJMP K3 : TABL: DB C0H,F(xiàn)9H,A4H,B0H ;09字形碼轉(zhuǎn)換(共陽) DB 99H,92H,82H,F(xiàn)8H DB 80H,90H LED: SETB P1.2 ;開放顯示器控制 MOV R7,08H ;顯示位數(shù)送R7 MOV R0,58H ;選送最低位 LED1: MOV A,R0 ;送顯示器數(shù)據(jù) MOV SBUF,A LED2: JNB TI,LED2 CLR T

24、I INC R0 ;繼續(xù)下一位 DJNZ R7,LED1 ;全部送完 CLR R1.2 ;關(guān)閉顯示器控制 RET,串行LED顯示接口MAX7219,可驅(qū)動(dòng)8個(gè)LED顯示器. 單片機(jī)可以通過串行口方式0與其交換信息,TXD作為移位時(shí)鐘、RXD作為串行數(shù)據(jù)I/O端、Load為芯片選擇端。 允許多個(gè)串行接口芯片共同使用89C51的串行口。,9.2 前向通道中的轉(zhuǎn)換器及接口技術(shù),模數(shù)()轉(zhuǎn)換電路的種類有:計(jì)數(shù)比較型、逐次逼近型、雙積分型等等。 逐次逼近型轉(zhuǎn)換器,在精度、速度和價(jià)格上都適中,是最常用的轉(zhuǎn)換器件。 雙積分轉(zhuǎn)換器,具有精度高、抗干擾性好、價(jià)格低廉等優(yōu)點(diǎn),但轉(zhuǎn)換速度低。 串行輸出的A/D芯片由

25、于節(jié)省單片機(jī)的I/O口線,越來越多地被采用。如具有SPI三線接口的TLC1549、TLC1543、TLC2543、MAX187等,具有2線I2C接口的MAX127、PCF8591(4路8位A/D,還含1路8位D/A)等。,9.2 前向通道中的轉(zhuǎn)換器及接口技術(shù),9.2.1 單通道串行輸出A/D芯片TLC1549及接口 9.2.2 多通道串行輸出A/D芯片TLC2543及接口 9.2.3 逐次逼近型并行輸出轉(zhuǎn)換器及接口 9.2.4 3位雙積分A/D轉(zhuǎn)換器及接口技術(shù),9.2.1 單通道串行輸出A/D芯片TLC1549及接口,1 TLC1549串行A/D轉(zhuǎn)換器芯片 1) 主要性能 逐次比較型10位A/

26、D轉(zhuǎn)換器。 片內(nèi)自動(dòng)產(chǎn)生轉(zhuǎn)換時(shí)鐘脈沖, 轉(zhuǎn)換時(shí)間21 s; 最大總不可調(diào)轉(zhuǎn)換誤差為1LSB; 單電源供電(+5 V), 最大工作電流僅為2.5 mA; 轉(zhuǎn)換結(jié)果以串行方式輸出; 工作溫度為-55+125 。,圖918 TLC1549的引腳圖,2) 引腳及功能,3) TLC1549的工作方式及時(shí)序 TLC1549有6種工作方式,如表93所列。,圖919 方式1工作時(shí)序,2 TLC1549與89C51接口電路與程序 TLC1549與89C51的SPI接口如圖9-20所示。,圖9-20 TLC1549M與89C51的接口電路,89C51讀取TLC1549中10位數(shù)據(jù)程序如下: ORG 0050H R

27、1549:CLR P3.0 ;片選有效,選中TLC1549 MOVR0,#2 ;要讀取高兩位數(shù)據(jù) LCALL RDATA ;調(diào)用讀數(shù)子程序 MOVR1,A ;高兩位數(shù)據(jù)送到R1中 MOVR0,#8 ;要讀取低8位數(shù)據(jù) LCALL RDATA ;調(diào)用讀數(shù)子程序,讀取數(shù)據(jù) MOVR2,A ;低8位數(shù)據(jù)送入R2中 SETBP3.0 ;片選無效 CLRP3.1 ;時(shí)鐘低電平 RET ;程序結(jié)束 ;讀數(shù)子程序 RDATA:CLR P3.1 ;時(shí)鐘低電平 MOVC,P3.2 ;數(shù)據(jù)送進(jìn)位位CY RLCA ;數(shù)據(jù)送累加器A SETBP3.1 ;時(shí)鐘變高電平 DJNZR0,RDATA ;讀數(shù)結(jié)束了嗎 RET

28、;子程序結(jié)束,9.2.2 多通道串行輸出A/D芯片TLC2543及接口,TLC2543的特性如下: 12位A/D轉(zhuǎn)換器(可8位、12位和16位輸出); 在工作溫度范圍內(nèi)轉(zhuǎn)換時(shí)間為10 s; 11通道輸入; 3種內(nèi)建的自檢模式; 片內(nèi)采樣/保持電路; 最大1/4 096的線性誤差; 內(nèi)置系統(tǒng)時(shí)鐘; 轉(zhuǎn)換結(jié)束標(biāo)志位; 單/雙極性輸出; 輸入/輸出的順序可編程(高位或低位在前); 可支持軟件關(guān)機(jī); 輸出數(shù)據(jù)長度可編程。 TLC1543為11個(gè)輸入端的10位A/D芯片,價(jià)格比TLC2543低。,1 TLC2543的片內(nèi)結(jié)構(gòu)及引腳功能,圖9-21 TLC2543引腳排列,1 TLC2543的片內(nèi)結(jié)構(gòu)及引

29、腳功能,圖9-22 TLC2543片內(nèi)結(jié)構(gòu)框圖,片內(nèi)由通道選擇器、數(shù)據(jù)(地址和命令字)輸入寄存器、采樣/保持電路、12位的模/數(shù)轉(zhuǎn)換器、輸出寄存器、并行到串行轉(zhuǎn)換器及控制邏輯電路7個(gè)部分組成。,2. TLC2543的接口時(shí)序,TLC2543的時(shí)序有兩種:,圖9-23 使用片選信號(hào)CS高位在前的時(shí)序,圖9-24 不使用片選信號(hào)CS高位在前的時(shí)序,3 TLC2543的命令字,TLC2543的命令字如下:,4 TLC2543與89C51的SPI接口及程序,SPI(Serial Perpheral Interface)是一種串行外設(shè)接口標(biāo)準(zhǔn),串行通信的雙方用4根線進(jìn)行通信。 這4根連線分別是: 片選信

30、號(hào)、I/O時(shí)鐘、串行輸入和串行輸出。 這種接口的特點(diǎn)是快速、高效,并且操作起來比I2C要簡單一些,接線也比較簡單,TLC2543提供SPI接口。,圖9-25 TLC2543和89C51的接口電路,1) TLC2543與89C51的8位數(shù)據(jù)傳送程序,TLC2543:MOV R4,#04H ;置控制字,AIN0,8位數(shù)據(jù)高位在前 MOV A,R4 CLR P1.3 ;片選CS有效,選中TLC2543 MSB: MOV R5,#08H ;傳送8位 LOOP: MOV P1,#04H ;P12為輸入位 MOV C,P1.2 ;將TLC2543 A/D轉(zhuǎn)換的8位數(shù)據(jù)串行讀到C中一位 RLC A ;帶進(jìn)位

31、位循環(huán)左移 MOV P1.1,C ;將控制字(在ACC中)的一位經(jīng)DIN送入TLC2543 SETB P1.0 ;產(chǎn)生一個(gè)時(shí)鐘 NOP CLR P1.0 DJNZ R5,LOOP MOV R2,A ;A/D轉(zhuǎn)換的數(shù)據(jù)存于R2中 RET 執(zhí)行上述子程序的過程如圖9-26所示,圖9-26 TLC2543與89C51數(shù)據(jù)交換示意圖,2) TLC2543與89C51的12位數(shù)據(jù)傳送程序,ORG0100H MOVP1,#04H ;P12為輸入位 MOVR6,#0AH ;轉(zhuǎn)換10次 MOVR0,#2FH ;置數(shù)據(jù)緩沖區(qū)指針 CLRP1.0 ;置I/O時(shí)鐘為低 SETBP1.3 ;置CS為高 ACALL T

32、LC2543 ;調(diào)轉(zhuǎn)換子程序 SJMP TLC2543:MOV A,#00H ;設(shè)置通道選擇和工作模式(IN0,12位) CLRP1.3 ;置CS為低 MOVR5,#0CH ;置輸出位計(jì)數(shù)初值 LOOP: MOVP1,#04H ;P12為輸入位 MOVC,P1.2 ;讀入轉(zhuǎn)換數(shù)據(jù)一位 RLCA ;將進(jìn)位移給A,即將轉(zhuǎn)換數(shù)據(jù)的一位讀入,同時(shí)將控制字的一位輸入C,MOVP1.1,C ;送出一位控制位入2543 SETBP1.0 ;置I/O時(shí)鐘為高 NOP CLRP1.0 ;置I/O時(shí)鐘為低 CJNER5,#04,LOP1 ;剩4位了嗎? MOVR0,A ;前8位存入RAM INCR0 CLRA L

33、OP1:DJNZR5,LOOP ;未轉(zhuǎn)完繼續(xù)讀剩余4位 ANLA,#0FH MOVR0,A ;轉(zhuǎn)換完的存入單元 RET,3) TLC2543與89C51的16位數(shù)據(jù)傳送程序,ORG100H START:MOV SP,#50H ;初始化堆棧指針 MOVP1,#04H ;初始化P1口 CLRP1.0 ;置I/O CLOCK為低 SETBP1.3 ;置CS為高 MOVA,#0FFH ACALL TLC2543 ACALL STORE LJMPSTARJ TLC2543: MOVR4,#0CH ;讀輸入數(shù)據(jù)命令字到R4,AIN0,16位,高位在前 MOVA,R4 ;讀輸入數(shù)據(jù)到A DW0:CLRP1.

34、3 ;置CS為低 JBACC.1,LSB ;若輸入數(shù)據(jù)D1為1,首先進(jìn)行低字節(jié)數(shù)據(jù)傳送 MSB:MOVR5,#08 ;以下傳送高字節(jié)數(shù)據(jù) LOOP1:MOV C,P1.2 ;讀轉(zhuǎn)換數(shù)據(jù)到C RLCA ;轉(zhuǎn)換數(shù)據(jù)移到A的最低位,輸入數(shù)據(jù)移入C,MOVP1.1,C ;寫輸入數(shù)據(jù)(命令字) SETBP1.0 ;置I/O CLOCK為高 NOP CLRP1.0 ;置I/O CLOCK為低 DJNZR5,LOOP1 ;判8個(gè)數(shù)據(jù)送完否,未完跳回 MOVR2,A ;轉(zhuǎn)換結(jié)果的高字節(jié)放入R2 MOVA,R4 ;讀輸入數(shù)據(jù)到A JBACC.1,RETURN ;若輸入數(shù)據(jù)D1為1,送數(shù)結(jié)束 LSB:MOVR5,

35、#08 ;以下傳送低字節(jié)數(shù)據(jù) LOOP2:MOVC,P1.2 RLCA MOVP1.1,C SETBP1.0 NOP CLRP1.0 DJNZR5,LOOP2 MOVR3,A ;轉(zhuǎn)換結(jié)果低字節(jié)放入R3 MOVA,R4 JBACC.1,MSB ;若輸入數(shù)據(jù)D1為1,進(jìn)行高字節(jié)數(shù)據(jù)傳送 RETURN:RET,STORE:MOV A,R4 ;讀輸入數(shù)據(jù)到A ANLA,#0F0H ;只保留地址位 SWAP A ;以下產(chǎn)生存儲(chǔ)地址 MOVB,#02 MULAB ADDA,#30H MOVR1,A MOVA,R2 MOVR1,A ;把高字節(jié)放入相應(yīng)的偶數(shù)地址RAM: ;各通道地址依次為30H、32H IN

36、CR1 MOVA,R3 MOVR1,A ;把低字節(jié)放入相應(yīng)的奇數(shù)地址RAM: ;各通道地址依次為31H、33H RET END,9.2.3 逐次逼近型并行輸出轉(zhuǎn)換器及接口,ADC0809 A/D轉(zhuǎn)換器芯片 由8路模擬開關(guān)、8位A轉(zhuǎn)換器、三態(tài)輸出鎖存器以及地址鎖存譯碼器等組成。,圖9-27 ADC0809結(jié)構(gòu),芯片功能與結(jié)構(gòu) AD分辨力:8位 內(nèi)置多路開關(guān),允許對8路模擬量分時(shí)轉(zhuǎn)換; 自帶微機(jī)總線接口; 最高轉(zhuǎn)換速度100S次; 內(nèi)部結(jié)構(gòu)如圖所示。,引腳功能: IN0IN7: 8通道模擬信號(hào)輸入 D0D7: 8位數(shù)字量輸出 ADDC、ADDB、ADDC:通道選擇,000111對應(yīng)于IN0IN7

37、ALE: 通道地址鎖存,正脈沖輸入 START: 啟動(dòng)信號(hào),正脈沖輸入 EOC: 轉(zhuǎn)換結(jié)束,轉(zhuǎn)換開始后EOC0,轉(zhuǎn)換結(jié)束時(shí)EOC1 OE: 輸出允許控制 CLK: 轉(zhuǎn)換時(shí)鐘信號(hào),典型值640K VREF()、VREF:AD參考電壓 VIN = VREF(D7D0)/256 ;(D7D0)= 00HFFH VCC、GND: 電源電壓 +5+15V,工作時(shí)序: ALE1:ADDAADDC進(jìn)入 ALE0;ADDAADDC鎖存 START:上升沿使AD內(nèi)部復(fù)位,下降沿啟動(dòng)A/D(一般START可兼作ALE信號(hào)使用) EOC:轉(zhuǎn)換開始后為0,結(jié)束時(shí)為1 OE:高電平使片內(nèi)數(shù)據(jù)輸出,低電平數(shù)據(jù)線為高阻,圖

38、9-28 ADC0809的時(shí)序圖,2、ADC0809與89C51接口,ADC0809與89C51連接可采用查詢方式,也可采用中斷方式。圖9-29為中斷方式連接電路圖。由于ADC0809片內(nèi)有三態(tài)輸出鎖存器,因此可直接與89C51接口。,圖9-29 ADC0809與89C51的連接,0809與8031接口(總線型) ADDAADDC: 連至A0A2 DOD7: 接數(shù)據(jù)總線 START、ALE: 由 P2.7、WR “或非”產(chǎn)生 例:啟動(dòng)通道0轉(zhuǎn)換 MOV DPTR,7FF8H MOVX DPTR,A P2.70,WR0,ALESTATR1,通道地址進(jìn)入,AD復(fù)位。 P2.70,WR1,ALEST

39、ART0,通道地址鎖存,AD啟動(dòng)。 EOC: 通過非門接INT1,轉(zhuǎn)換結(jié)束時(shí)產(chǎn)生中斷, OE: 由P2.7和 RD通過“或非”門產(chǎn)生,“讀”AD 例: MOVX A,DPTR (DPTR7FF8H) P2.7=0, RD0,OE1,D0D7數(shù)據(jù)總線,被CPU讀取。 CLK:由ALE通過分頻產(chǎn)生,亦可單獨(dú)提供時(shí)鐘。 VREF()、VREF:參考電壓(一般為+5V),3、程序?qū)嵗?路巡回檢測 設(shè)對8點(diǎn)溫度巡回檢測,溫度范圍3050,檢測精度1。數(shù)據(jù)存放于外RAM A0HA7H單元。 主程序: MAIN:MOV R0,0A0H ;數(shù)據(jù)暫存區(qū)首址 MOV R2,08H ;8路數(shù)初值 SETB IT1

40、 ;脈沖觸發(fā)方式 SETB EA ;開中斷 SETB EX1 MOV DPTR,7FF8H;指向0809首地址 (IN0) MOVX DPTR ,A ;啟動(dòng)AD轉(zhuǎn)換 HERE:SJMP HERE ;等待中斷 中斷服務(wù)程序: MOVX A,DPTR ;讀A/D MOVX R0 ,A ;存數(shù) INC DPTR ;更新通道 INC R0 ;更新暫存單元 DJNZ R2,DONE RET1 DONE:MOVX DPTR ,A ;啟動(dòng)AD轉(zhuǎn)換 RETI,雙積分型AD轉(zhuǎn)換期MC14433芯片 芯片功能: 輸出數(shù)值范圍:01999(三位半BCD碼) 分辨率 : 約為11位(二進(jìn)制) 電壓輸入范圍:199.0

41、mv1.999V兩檔 相應(yīng)的基準(zhǔn)電壓:為200 mv2V 轉(zhuǎn)換速度: 3次10次秒 自動(dòng)極性轉(zhuǎn)換;過量程欠量程標(biāo)志。,9.2.4 3 位雙積分A/D轉(zhuǎn)換器及接口技術(shù),圖9-30 MC14433的引腳圖,引腳功能 VREF: 參考電壓輸入 VX: 模擬信號(hào)電壓輸入 R1、R1C1、C1: 外接積分阻容元件 CO1、CO2: 外接補(bǔ)償電容0.1F DU: 輸出控制,正脈沖使轉(zhuǎn)換結(jié)果A/D結(jié)果寄存器 EOC: 轉(zhuǎn)換結(jié)束,轉(zhuǎn)換結(jié)束時(shí)發(fā)正脈沖(一般與DU相連) CLK1、CLKO:外接時(shí)鐘信號(hào)輸入輸出 OR: 過量程標(biāo)志,VX VREF時(shí),OR0 DS4DS1: 個(gè)、十、百、千位輸出選通正脈沖 Q3Q0

42、: BCD碼AD轉(zhuǎn)換結(jié)果輸出 VAG: 模擬地 VEE: 模擬負(fù)電源 VDD: 正電源 VSS: 數(shù)字地 *對于5V數(shù)字系統(tǒng),VDD、VEE為5V,輸出時(shí)序: EOC:轉(zhuǎn)換結(jié)束脈沖 DS1:千位輸出標(biāo)志 Q3:千位值0-1,1-0 Q2:極性,0負(fù)、 1正 Q0:量程 0 -正常 1 -Q3=1欠量程 Q3=0過量程 DS2:百位輸出標(biāo)志 DS1:十位輸出標(biāo)志 DS1:個(gè)位輸出標(biāo)志,圖9-31 MC14433選通脈沖時(shí)序,MC14433與8031接口(非總線型) Q0Q3: 接P1.0P1.3 DS1DS4: 接P1.4P1.7 EOC與DU相連,反相后接INT1 VREF:由基準(zhǔn)電壓源5G1

43、403(2.5V)分壓產(chǎn)生2V基準(zhǔn)電壓。,圖9-32 5G14433與89C51直接連接的硬件接口,程序設(shè)計(jì):設(shè)每次轉(zhuǎn)換結(jié)果存于內(nèi)RAM 30H34H。(符號(hào)、千、百、十、個(gè)) 中斷子程: ORG 0013H DINT:MOV R0,30H JNB P1.4, ;等待DS1 MOV A,P1 ;讀千位 JB ACC.2,AD1 MOV R0, #1 ;符號(hào)位送1(負(fù)) SJMP AD2 D1: MOV R0, #0 ;符號(hào)位送0(正) AD2: INC R0 JB ACC.3,AD3 MOV R0,1 ;千位送1 SJMP AD4 AD3: MOV R0,0 ;千位送0 AD4: INC R0

44、 JNB P1.5, ;等待DS2 MOV A,P1 ANL A,0FH ;屏蔽無用位 MOV R0, A ;存百位 INC R0 RETI,9.3 系統(tǒng)后向通道配置及接口技術(shù),后向通道是計(jì)算機(jī)實(shí)現(xiàn)控制運(yùn)算處理后,對被控對象的輸出通道接口。 系統(tǒng)的后向通道是一個(gè)輸出通道,其特點(diǎn)是弱電控制強(qiáng)電,即小信號(hào)輸出實(shí)現(xiàn)大功率控制。常見的被控對象有電機(jī)、電磁開關(guān)等。 單片機(jī)實(shí)現(xiàn)控制是以數(shù)字信號(hào)或模擬信號(hào)的形式通過口送給被控對象的。其中,數(shù)字信號(hào)形態(tài)的開關(guān)量、二進(jìn)制數(shù)字量和頻率量可直接用于開關(guān)量、數(shù)字量系統(tǒng)及頻率調(diào)制系統(tǒng)的控制;但對于一些模擬量控制系統(tǒng),則應(yīng)通過轉(zhuǎn)換器轉(zhuǎn)換成模擬量控制信號(hào)后,才能實(shí)現(xiàn)控制。

45、9.3.1 后向通道中的功率開關(guān)器件及接口 9.3.2 串行輸入D/A芯片TLC5615接口技術(shù) 9.3.3 并行輸入芯片及接口技術(shù),1. 繼電器及接口 1) 單片機(jī)與繼電器的接口 一個(gè)典型的繼電器與單片機(jī)的接口電路如圖所示。,圖9-33 繼電器接口,9.3.1 后向通道中的功率開關(guān)器件及接口,2. 光電耦合器(隔離器)件及驅(qū)動(dòng)接口,為防止干擾竄入和保證系統(tǒng)的安全,常常采用光電耦合 器,用以實(shí)現(xiàn)信號(hào)的傳輸,同時(shí)又可將系統(tǒng)與現(xiàn)場隔離開。 晶體管輸出型光電耦合器的受光器是光電晶體管,如圖9-36所示。,圖9-36 光電耦合器4N25的接口電路,3. 光電耦合驅(qū)動(dòng)晶閘管(可控硅)功率開關(guān)及接口,圖9

46、-38是4N40和MOC3041的接口驅(qū)動(dòng)電路。 4N40是常用的單向晶閘管輸出型光電耦合器,也稱固態(tài)繼電器。 MOC3041是常用的雙向晶閘管輸出的光電耦合器(固態(tài)繼電器)。,圖9-38 晶閘管輸出型光電耦合器驅(qū)動(dòng)接口,9.3.2 串行輸入D/A芯片TLC5615接口技術(shù),1. TLC5615的特點(diǎn) 2.功能方框圖,10位CMOS電壓輸出; 5 V單電源工作; 與微處理器3線串行接口(SPI); 最大輸出電壓是基準(zhǔn)電壓的2倍; 輸出電壓具有和基準(zhǔn)電壓相同的極性; 建立時(shí)間12.5 s; 內(nèi)部上電復(fù)位; 低功耗,最高為1.75 mW; 引腳與MAX515兼容。,圖939 TLC5615功能方框

47、圖,3. 引腳排列及功能,圖940 TLC5615引腳圖,4. TLC5615的時(shí)序分析,TLC5615的時(shí)序圖如圖941所示。,圖941 時(shí)序波形圖,5. TLC5615的輸入/輸出關(guān)系,圖942的D/A輸入/輸出關(guān)系如表99所列。,圖942 TLC5615與89C51接口電路,6. TLC5615與89C51的串行接口電路,圖942為將89C51要輸出的12位數(shù)據(jù)存在R0和R1寄存器中, CLR P3.0 ;片選有效 MOV R2,#4 ;將要送入的前4位數(shù)據(jù)位數(shù) MOV A,R0 ;前4位數(shù)據(jù)送累加器低4位 SWAP A ;A中高4位和低4位互換(4位數(shù)在高位) LCALL WRdata

48、 ;由DIN輸入前4位數(shù)據(jù) MOV R2,#8 ;將要送入的后8位數(shù)據(jù)位數(shù) MOV A,R1 ;8位數(shù)據(jù)送入累加器A LCALL WRdata ;由DIN輸入后8位數(shù)據(jù) CLR P3.1 ;時(shí)鐘低電平 SETB P3.0 ;片選高電平,輸入的12位數(shù)據(jù)有效 RET ;結(jié)束送數(shù) 子程序如下: WRdata: NOP ;空操作 LOOP: CLR P3.1 ;時(shí)鐘低電平 RLC A ;數(shù)據(jù)送入進(jìn)位位CY MOV P3.2,C ;數(shù)據(jù)輸入TLC5615有效 SETB P3.1 ;時(shí)鐘高電平 DJNZ R2,LOOP ;循環(huán)送數(shù) RET,9.3.3 并行輸入芯片及接口技術(shù),1. 并行輸入轉(zhuǎn)換芯片DAC

49、0832 主要由兩個(gè)8位寄存器和一個(gè)8位轉(zhuǎn)換器組成。,圖943 DAC0832結(jié)構(gòu),1) DAC0832引腳功能,D0D7: 數(shù)字量數(shù)據(jù)輸入線。 ILE: 數(shù)據(jù)鎖存允許信號(hào),高電平有效。 CS: 輸入寄存器選擇信號(hào),低電平有效。 WR1: 輸入寄存器的“寫”選通信號(hào),低電平有效。 XFER: 數(shù)據(jù)轉(zhuǎn)移控制信號(hào)線,低電平有效。 WR2: DAC寄存器的“寫”選通信號(hào)。VREF: 基準(zhǔn)電壓輸入線。 RFB: 反饋信號(hào)輸入線,芯片內(nèi)已有反饋電阻。 IOUT1和IOUT2: 電流輸出線。 IOUT1與IOUT2的和為常數(shù), IOUT1隨DAC寄存器的內(nèi)容線性變化。一般在單極性輸出時(shí),IOUT2接地;在

50、雙極性輸出時(shí),接運(yùn)放。 VCC: 工作電源。DGND: 數(shù)字地。 AGND: 模擬信號(hào)地。,2) DAC0832特性,主要的特性參數(shù)如下: 分辨率為8位。 只需在滿量程下調(diào)整其線性度。 可與所有的單片機(jī)或微處理器直接接口,需要時(shí)亦可不與微處理器連接而單獨(dú)使用。 電流穩(wěn)定時(shí)間為1 。 可雙緩沖、單緩沖或直通數(shù)據(jù)輸入。 功耗低,約為200 mW。 邏輯電平輸入與TTL兼容。 單電源供電( )。,2. D/A轉(zhuǎn)換器與89C51接口,實(shí)際應(yīng)用中常常需要芯片的輸出還需要有將電流轉(zhuǎn)換為電壓的電路。 下面介紹兩種電路供參考: 圖9-44(a)是反相電壓輸出電路,輸出電壓; 圖9-44(b)是同相電壓輸出電路

51、,輸出電壓() 當(dāng)接5(或5)時(shí),輸出電壓范圍是5(或05); 當(dāng)接0(或)時(shí),輸出電壓是0(或0V),圖9-44 D/A轉(zhuǎn)換輸出電路,1) 直通式工作方式應(yīng)用,圖9-45所示為直通式工作方式的連接方法。輸入到DAC0832的D0D7數(shù)據(jù)不經(jīng)控制直達(dá)8位D/A轉(zhuǎn)換器。 當(dāng)某一根地線或地址譯碼器的輸出線使DAC0832的腳有效(低電平)或與直接接地時(shí),數(shù)據(jù)線上的數(shù)據(jù)字節(jié)直通轉(zhuǎn)換器轉(zhuǎn)換并輸出.,圖9-45 DAC0832直通式電壓輸出電路,2) DAC0832單緩沖工作方式應(yīng)用,這種方式下,將二級(jí)寄存器的控制信號(hào)并接,輸入數(shù)據(jù)在控制信號(hào)作用下(一次控制,一次緩沖),直接打入8位DAC寄存器中并進(jìn)入

52、8位D/A轉(zhuǎn)換器進(jìn)行D/A轉(zhuǎn)換。 當(dāng)執(zhí)行寫指令時(shí),DAC0832相應(yīng)的控制信號(hào)時(shí)序如圖9-47所示。,圖946 一路D/A輸出連線圖(單路模擬量輸出), 產(chǎn)生鋸齒波的程序,程序如下: MOV DPTR,#2FFFH ;設(shè)置口地址 MOV A,#00H ;輸入數(shù)字量00H到A(初值為00H) LOOP: MOVX DPTR,A ;輸出對應(yīng)于A內(nèi)容的模擬量 INCA ;修改A的內(nèi)容(原來值加1) AJMPLOOP,圖947 D/A產(chǎn)生鋸齒波程序框圖, 產(chǎn)生方波的程序,MOV DPTR,#2FFFH ;設(shè)置口地址 LOOP: MOV A,#0FFH ;給A送最大值 MOVX DPTR,A ;輸出相應(yīng)

53、模擬量 ACALL 2700H ;延時(shí) MOV A,#00H ;給A送最小值 MOVX DPTR , A ;D/A輸出相應(yīng)模擬量 ACALL 2700H ;延時(shí) AJMPLOOP ;返回循環(huán),9.4 思考題與習(xí)題,1. 為什么要消除鍵盤的機(jī)械抖動(dòng)?有哪些方法? 2. 試述轉(zhuǎn)換器的種類及特點(diǎn)。 3. 設(shè)計(jì)一個(gè)22行列(同在P1口)式鍵盤電路并編寫鍵掃描子程序。 4. 試設(shè)計(jì)一個(gè)LED顯示器鍵盤電路。 5. 在一個(gè)89C51應(yīng)用系統(tǒng)中,89C51以中斷方式通過并行接口74LS244讀取器件5G14433的轉(zhuǎn)換結(jié)果。試畫出有關(guān)邏輯電路,并編寫讀取結(jié)果的中斷服務(wù)程序。 6. 在一個(gè)f為12 MHz的8

54、9C51系統(tǒng)中接有一片器件DAC0832,它的地址為7FFFH,輸出電壓為0 。請畫出有關(guān)邏輯框圖,并編寫一個(gè)程序,使其運(yùn)行后能在示波器上顯示出鋸齒波(設(shè)示波器X方向掃描頻率為50 格,Y方向掃描頻率為1 V格)。,7. 在一個(gè)f為12 MHz的89C51系統(tǒng)中接有一片器件ADC0809,它的地址為7FF8H7FFFH。試畫出有關(guān)邏輯框圖,并編寫ADC0809初始化程序和定時(shí)采樣通道2的程序(假設(shè)采樣頻率為1 ms/次,每次采樣4個(gè)數(shù)據(jù),存于89C51內(nèi)部RAM 70H73H中)。 8. 在一個(gè)89C51系統(tǒng)中擴(kuò)展一片74LS245,通過光電隔離器件外接8路TTL開關(guān)量輸入信號(hào)。試畫出其有關(guān)的

55、硬件電路。 9. 用8051的P1口作8個(gè)按鍵的獨(dú)立式鍵盤接口。試畫出其中斷方式的接口電路及相應(yīng)的鍵盤處理程序。 10. 試說明非編碼鍵盤的工作原理。如何去鍵抖動(dòng)?如何判斷鍵是否釋放? 11. DAC0832與89C51單片機(jī)連接時(shí)有哪些控制信號(hào)?其作用是什么? 12. 在一個(gè)89C51單片機(jī)與一片DAC0832組成的應(yīng)用系統(tǒng)中,DAC0832的地址為7FFFH,輸出電壓為05 V。試畫出有關(guān)邏輯框圖,并編寫產(chǎn)生矩形波,其波形占空比為4,高電平時(shí)電壓為2.5 V,低電平時(shí)電壓為1.25 V的轉(zhuǎn)換程序。,13. 在一個(gè)由89C51單片機(jī)與一片ADC0809組成的數(shù)據(jù)采集系統(tǒng)中,ADC0809的地址為7FF8H7FFFH。試畫出有關(guān)邏輯框圖,并編寫出每隔1 min輪流采集一次8個(gè)通道數(shù)據(jù)的程序。共采樣100次,其采樣值存入片外RAM 3000H開始的存儲(chǔ)單元中。 14. 以DAC0832為例,說明D/A的單緩沖與雙緩沖有何不同。 15. 以DAC0832為例,說明D/A的單極性輸出與雙極性輸出有何不同。 16. A/D和D/A的主要技術(shù)指標(biāo)中,“分辨率”與“轉(zhuǎn)換精度”(即“量化誤差”或“轉(zhuǎn)換誤差”)有何不同。 注: 第14、15和16題的答案在參考文獻(xiàn)2中的P101105。單片機(jī)學(xué)習(xí)輔助測驗(yàn)及解答講義,謝 謝 使 用 !,天津理工大學(xué)華信軟件學(xué)院 張曉鄉(xiāng),

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!