單片機(jī)課件第十章_第1頁
單片機(jī)課件第十章_第2頁
單片機(jī)課件第十章_第3頁
單片機(jī)課件第十章_第4頁
單片機(jī)課件第十章_第5頁
已閱讀5頁,還剩89頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、【知識目標(biāo)】【知識目標(biāo)】1.熟悉ADC0809、DA0832芯片。2.掌握D/A、A/D接口的硬件接口電路設(shè)計。3.掌握D/A、A/D接口的軟件驅(qū)動程序設(shè)計。4.熟悉TLC5615、TLC2543芯片。4.理解串行A/D,D/A轉(zhuǎn)換器的硬件電路設(shè)計及驅(qū)動程序的設(shè)計【技能目標(biāo)技能目標(biāo)】1.掌握的并行D/A、A/D接口電路的仿真與調(diào)試。2.熟悉調(diào)試串行A/D,D/A轉(zhuǎn)換器的仿真與調(diào)試。10.110.1A/DA/D轉(zhuǎn)換器及接口轉(zhuǎn)換器及接口技術(shù)技術(shù)10.2D/A轉(zhuǎn)換器及接口技術(shù)10.310.3案例:數(shù)字電壓表案例:數(shù)字電壓表設(shè)計設(shè)計10.4 案例: 波形發(fā)生器A/D轉(zhuǎn)換器(ADC)的作用就是把模擬量轉(zhuǎn)

2、換成數(shù)字量,便于計算機(jī)進(jìn)行處理。10.1.1 A/D10.1.1 A/D轉(zhuǎn)換器的概述轉(zhuǎn)換器的概述1.A/D1.A/D轉(zhuǎn)換器的分類轉(zhuǎn)換器的分類目前應(yīng)用較為廣泛的A/D轉(zhuǎn)換器主要有以下幾種類型:逐次比較型、雙積分型、量化反饋型和并行型。逐次比較型A/D轉(zhuǎn)換器,在精度、速度和價格上都適中,是最常見的A/D轉(zhuǎn)換器件。雙積分A/D轉(zhuǎn)換器,具有精度高、抗干擾性好、價格低廉等優(yōu)點,但轉(zhuǎn)換速度慢,近年來在單片機(jī)應(yīng)用領(lǐng)域中也得到廣泛應(yīng)用。A/D完成一次轉(zhuǎn)換所需要的時間稱為轉(zhuǎn)換時間,轉(zhuǎn)換時間的倒數(shù)為轉(zhuǎn)換速率。不同類型的轉(zhuǎn)換器轉(zhuǎn)換速度相差甚遠(yuǎn)。其中并行比較A/D轉(zhuǎn)換器轉(zhuǎn)換速度最高,8位二進(jìn)制輸出的單片集成A/D轉(zhuǎn)換

3、器轉(zhuǎn)換時間可達(dá)50ns以內(nèi)。逐次比較型A/D轉(zhuǎn)換器次之,它們多數(shù)轉(zhuǎn)換時間在1050 之間,也有達(dá)幾百納秒的。間接A/D轉(zhuǎn)換器的速度最慢,如雙積A/D轉(zhuǎn)換器的轉(zhuǎn)換時間大都在幾十毫秒至幾百毫秒之間。A/D轉(zhuǎn)換器的轉(zhuǎn)換精度定義為一個實際A/D轉(zhuǎn)換器和一個理想A/D轉(zhuǎn)換器在量化值上的差值。可用絕對誤差或相對誤差表示。A/D轉(zhuǎn)換器按照輸出代碼的有效位數(shù)分為4位、8位、10位、12位、14位、16位和BCD碼輸出等多種,按照轉(zhuǎn)換速度可分為超高速(轉(zhuǎn)換時間1ns)、高速(轉(zhuǎn)換時間1s)、中速(轉(zhuǎn)換時間1ms)、低速(轉(zhuǎn)換時間1s)等幾種不同的轉(zhuǎn)換速度的芯片。在設(shè)計數(shù)據(jù)采集系統(tǒng)、測控系統(tǒng)和智能儀器儀表時,重要

4、問題就是如何選擇合適的A/D轉(zhuǎn)換器以滿足應(yīng)用系統(tǒng)設(shè)計的要求。A/D轉(zhuǎn)換器位數(shù)的確定與整個測量控制系統(tǒng)所要測量控制的范圍和精度有關(guān),但又不能唯一確定系統(tǒng)的精度。估算時,A/D轉(zhuǎn)換器的位數(shù)至少要比總精度要求的最低分辨率高一位。實際選取的A/D轉(zhuǎn)換器的位數(shù)應(yīng)與其他環(huán)節(jié)所能達(dá)到的精度相適應(yīng)。只要不低于它們就行,選得太高既沒有意義,而且價格還要高得多。(2)A/D轉(zhuǎn)換器速率的確定逐次比較型的A/D轉(zhuǎn)換器的轉(zhuǎn)換時間可從1100s,屬于中速A/D轉(zhuǎn)換器,常用于工業(yè)多通道單片機(jī)控制系統(tǒng)和聲頻數(shù)字轉(zhuǎn)換系統(tǒng)等。(3)采樣保持器的確定原則上直流和變化非常緩慢的信號可不用采樣保持器。其他情況都要加采樣保持器。(4)基

5、準(zhǔn)電壓基準(zhǔn)電壓源是提供給A/D轉(zhuǎn)換器在轉(zhuǎn)換時所需要的參考電壓,這是保證轉(zhuǎn)換精度的基本條件。在要求較高精度時,基準(zhǔn)電壓要單獨用高精度穩(wěn)壓電源供給。ADC0809是典型的8位8通道逐次比較型A/D轉(zhuǎn)換器,可實現(xiàn)8路模擬信號的分時采集,片內(nèi)有8路模擬選通開關(guān),轉(zhuǎn)換時間為100s左右。1.1.信號引腳信號引腳ADC0809芯片為28引腳雙列直插式封裝,其邏輯符號如圖10-1所示。ADC0809芯片信號引腳的功能如下:IN0IN7:8路模擬量輸入通道。ADC0809芯片對輸入的模擬量的要求主要有:信號單極性,電壓范圍05V,若信號過小還需要放大。ALE:地址鎖存允許信號。當(dāng)ALE上跳沿,ADDA、ADD

6、B、ADDC地址狀態(tài)送入地址鎖存器中。START:轉(zhuǎn)換啟動信號。當(dāng)START上跳沿,所有內(nèi)部寄存器清零;當(dāng)START下跳沿時,開始進(jìn)行A/D轉(zhuǎn)換;在A/D轉(zhuǎn)換期間,START應(yīng)保持低電平。MSB2-1LSB2-8:數(shù)據(jù)輸出線。為三態(tài)緩沖輸出形式,可以和單片機(jī)的數(shù)據(jù)線直接相連。LSB2-8為最低位,MSB2-1為最高位。OUTPUT ENABLE:輸出允許信號。用于控制三態(tài)輸出鎖存器向單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù)。OUTPUT ENABLE =0,輸出數(shù)據(jù)線呈高阻;OUTPUT ENABLE =1,輸出轉(zhuǎn)換得到的數(shù)據(jù)。首先用指令選擇ADC0809和一個模擬輸入通道,當(dāng)執(zhí)行MOVX DPTR,A時單片

7、機(jī)的 信號有效,從而產(chǎn)生一個啟動信號,給ADC0809的START引腳送入脈沖,開始對選中通道進(jìn)行轉(zhuǎn)換。當(dāng)轉(zhuǎn)換結(jié)束后,ADC0809發(fā)出轉(zhuǎn)換結(jié)束EOC(高電平)信號,該信號可供單片機(jī)查詢,也可反相后作為向單片機(jī)發(fā)出的中斷請求信號;當(dāng)執(zhí)行指令 MOVX A,DPTR,單片機(jī)發(fā)出讀控制 信號,OUTPUT ENABLE端有高電平,且把經(jīng)過ADC0809轉(zhuǎn)換完畢的數(shù)字量讀到累加器A中。由上述可見,用單片機(jī)控制ADC0809時,可采用查詢和中斷控制兩種方式。查詢方式是在單片機(jī)把啟動信號送到ADC0809之后,執(zhí)行其他程序的同時對ADC0809的EOC引腳的狀態(tài)進(jìn)行查詢,以檢查A/D轉(zhuǎn)換是否已經(jīng)結(jié)束,如

8、果查詢到轉(zhuǎn)換已經(jīng)結(jié)束,則讀入轉(zhuǎn)換完畢的數(shù)據(jù),否則執(zhí)行其他程序中斷控制方式是在啟動信號送到ADC0809之后,單片機(jī)執(zhí)行其他程序。當(dāng)ADC0809轉(zhuǎn)換結(jié)束并向單片機(jī)發(fā)出中斷請求信號時,單片機(jī)響應(yīng)此中斷請求,進(jìn)入中斷服務(wù)程序,讀入轉(zhuǎn)換數(shù)據(jù)。例10-1:ADC0809與AT89S51單片機(jī)接口電路如圖10-2所示,分別采用三種不同方式對圖中8路模擬信號輪流采樣,并依次把轉(zhuǎn)換后的數(shù)據(jù)存放在以DATA為首地址的8個內(nèi)部數(shù)據(jù)存儲區(qū)。查詢方式時,轉(zhuǎn)換結(jié)束信號EOC引腳接P1.0;中斷方式時,EOC經(jīng)反相器接AT89S51單片機(jī)的外部中斷引腳 (假定8個通道只采樣一次)。1.延時傳送方式程序 ORG 0000

9、H LJMP MAIN ORG 0030H MAIN:MOV R1,#DATA ;數(shù)據(jù)存儲區(qū)首地址 MOV DPTR,#7FF8H ;P2.7=0,且指向通道0 MOV R7,#08H ;置通道數(shù) LOOP: MOVX DPTR,A ;啟動A/D轉(zhuǎn)換 MOV R6,#1AH ;延時初始值 DLAY: NOP NOP NOP NOP DJNZ R6, DLAY MOVX A,DPTR ;讀取轉(zhuǎn)換結(jié)果 MOV R1,A ;轉(zhuǎn)換結(jié)果送入內(nèi)部數(shù)據(jù)存儲區(qū) INC DPTR ;指向下一個通道 INC R1 ;修改數(shù)據(jù)區(qū)指針 DJNZ R7,LOOP SJMP $ END2.查詢方式程序 ORG 0000H

10、 LJMP MAIN ORG 0030H MAIN:MOV R1,#DATA ;數(shù)據(jù)存儲區(qū)首地址 MOV DPTR,#7FF8H ;P2.7=0,且指向通道0 MOV R7,#08H ;置通道數(shù) LOOP: MOVX DPTR,A ;啟動A/D轉(zhuǎn)換 SETB P1.0JNB P1.0,$ ;查詢P1.0狀態(tài) MOVX A,DPTR ;讀取轉(zhuǎn)換結(jié)果 MOV R1,A ;轉(zhuǎn)換結(jié)果送入內(nèi)部數(shù)據(jù)存儲區(qū) INC DPTR ;指向下一個通道 INC R1 ;修改數(shù)據(jù)區(qū)指針 DJNZ R7,LOOP SJMP $ END3.中斷方式程序 ORG 0000H LJMP MAINORG 0003HLJMP EX

11、INT0 ORG 0030H MAIN:MOV R1,#DATA ;數(shù)據(jù)存儲區(qū)首地址 MOV DPTR,#7FF8H ;P2.7=0,且指向通道0 MOV R7,#08H ;置通道數(shù)SETB IT0 ;邊沿觸發(fā)方式SETB EX0 ;開外部中斷0SETB EA ;開總中斷 MOVX DPTR,A ;啟動A/D轉(zhuǎn)換SJMP $中斷服務(wù)程序: ORG 0010H EXINT0:MOVX A,DPTR ;讀取轉(zhuǎn)換結(jié)果 MOV R1,A ;轉(zhuǎn)換結(jié)果送入內(nèi)部數(shù)據(jù)存儲區(qū) INC DPTR ;指向下一個通道 INC R1 ;修改數(shù)據(jù)區(qū)指針 DJNZ R7,LOOP ;8路沒有采集完,中斷返回CLR EX0

12、;采集完成,關(guān)外部中斷 LOOP:RETI END1.1.硬件電路設(shè)計硬件電路設(shè)計ORG 0000H LJMP MAIN ORG 0030H MAIN:MOV DPTR,#7FF8H LOOP:SETB P3.4 ;關(guān)顯示器 SETB P3.5 MOVX DPTR,A ;啟動0808 MOV R6,#34H ;0808編程方式為延時,12MHz,延時104s DJNZ R6,$ MOVX A,DPTR ;讀A/D轉(zhuǎn)換數(shù) MOV 30H,A ;暫存RAM30H單元 ANL A,#0FH ;屏蔽高四位,顯示低四位 LCALL SEG7 ;查出顯示碼 SETB P3.4 ;關(guān)顯示高位 CLR P3.

13、5 ;開顯示低位 MOVP1,A ;顯示低位 LCALL DELAY ;延時1MS MOV A,30H ;將轉(zhuǎn)換數(shù)重新存入累加器 ANL A,#0F0H ;屏蔽低四位,顯示高四位 SWAP A ;累加器A的高低四位互換 LCALL SEG7 ;查出顯示碼 SETB P3.5 ;關(guān)顯示低位 CLR P3.4 ;開顯示高位 MOV P1,A ;顯示高位 LCALL DELAY ;調(diào)轉(zhuǎn)到延時程序 SJMP LOOP ;重復(fù)顯示 SEG7:INC A ;查表位置調(diào)整 MOVC A,A+PC ;查顯示碼 RET ;返回 DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H ;共

14、陽段碼 DB 80H,90H,88H,83H,0C6H,0A1H,86H,8EH DELAY:MOV R5,#2 ;顯示延時 DEL1:MOV R6,#249 DEL2:DJNZ R6,DEL2 DJNZ R5,DEL1 RET END TLC2543是美國TI公司推出的采用SPI串行接口技術(shù)的12位串行模數(shù)轉(zhuǎn)換器,使用開關(guān)電容逐次逼近技術(shù)完成A/D轉(zhuǎn)換過程。具有11個模擬輸入通道和3路內(nèi)置自測試方式,采樣率為66kbps,可編程輸出數(shù)據(jù)長度。由于是串行輸入結(jié)構(gòu),能夠節(jié)省51系列單片機(jī)I/O資源;且價格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應(yīng)用。 每次A/D轉(zhuǎn)換,單片機(jī)都必須給TLC2

15、543芯片寫入控制字,以確定被轉(zhuǎn)換的信號來自的通道,轉(zhuǎn)換結(jié)果的位數(shù),輸出的順序等信息。控制字寫入的順序是高位在前。命令字格式如表10-2所示。D7D4:選擇輸入通道,。二進(jìn)制數(shù)00001111是11路模擬量AIN0AIN11的地址。當(dāng)其為1100-1101時,選擇片內(nèi)檢測電壓;當(dāng)其為1110時,為軟件選擇的斷電模式,此時,A/D轉(zhuǎn)換器的工作電流只有25 。D3、D2:輸出數(shù)據(jù)的長度的選擇位,01表示輸出數(shù)據(jù)長度為8位;11表示輸出數(shù)據(jù)長度為16位;X0表示輸出數(shù)據(jù)長度為12位,X可以為1或0。D1:輸出數(shù)據(jù)的順序選擇位,0表示高位在前,1表示低位在前。D0:輸出數(shù)據(jù)的極性選擇位,當(dāng)其為0時,為

16、無符號二進(jìn)制數(shù);當(dāng)其為1時,為有符號二進(jìn)制數(shù)。TLC2543芯片的工作時序分為I/O周期和實際轉(zhuǎn)換周期。(1) I/O周期器件進(jìn)入I/O周期后同時進(jìn)行寫控制字和讀取A/D輸出結(jié)果的兩種操作。 寫控制字的操作。工作時序如圖10-5所示,TLC2543在I/O CLOCK的前8個脈沖的上升沿,以MSB前導(dǎo)方式從DATAINPUT端輸入8位控制字到輸入寄存器。當(dāng)輸入前4位后即可選通1路到采樣保持器,該電路從第4個I/O CLOCK脈沖的下降沿開始,對所選的信號進(jìn)行采樣,直到最后一個I/O CLOCK脈沖的下降沿。I/O脈沖的時鐘個數(shù)與輸出數(shù)據(jù)長度(位數(shù))有關(guān),當(dāng)工作于12位或16位時,在前8個脈沖之

17、后,DATAINPUT無效。L2:MOV C,DATOUT ;讀輸出端,此處讀取的是上一次的轉(zhuǎn)換結(jié)果MOV A,R3RLC A MOV R3,A ;低位數(shù)據(jù)放在R3中MOV A,R2; 高位數(shù)據(jù)放在R2中RLC AMOV R2,AL1:MOV A,R5 ;將R5中的控制字移入DATSINPUT一位,每次都要寫入控制字RLC AMOV R5,AMOV DATIN,CSETB IOCLK ;IOCLK置高電平NOP NOP NOP CLR IOCLK; IOCLK置低電平NOP NOP NOP DJNZ R1,L2SETB CS;采集結(jié)束后,將CS置高電平MOV JG1,R2;采集結(jié)束把上一次的轉(zhuǎn)

18、換結(jié)果放在JG1和JG2兩個單元MOV JG2,R3RET在I/O周期的最后一個I/O CLOCK脈沖下降沿之后,EOC變低,采樣值保持不變,轉(zhuǎn)換周期開始,片內(nèi)轉(zhuǎn)換器對采樣值進(jìn)行逐次逼近式A/D轉(zhuǎn)換,其工作由與I/O CLOCK同步的內(nèi)部時鐘控制。轉(zhuǎn)換結(jié)束后,EOC變高,轉(zhuǎn)換結(jié)構(gòu)鎖存在輸出數(shù)據(jù)鎖存器中,在下一個I/O周期輸出。例10-3:如圖10-6所示為AT89S51單片機(jī)與TLC2543芯片接口電路原理圖,要求在AIN0通道的數(shù)據(jù)采集,并將采集結(jié)果在數(shù)碼管上顯示。IOCLK BIT P1.3 ;IOCLK與P1.3相連 DATIN BIT P1.1 ;DATAINPUT與P1.1相連 DA

19、TOUT BIT P1.0 ;DATAOUT 與P1.0 CS BIT P1.2 ;CS與P1.2相連 EOC BIT P1.4 ;EOC與P1.4相連 WEI1 BIT P3.0 WEI2 BIT P3.1 WEI3 BIT P3.2 WEI4 BIT P3.3JG1 EQU 25H ;存結(jié)果的高位 JG2 EQU 24H ;存結(jié)構(gòu)的低位 ORG 0000HAJMP MAINORG 0030HMAIN: MOV SP,#60H ;堆棧指針初始化 LCALL TLC2543 ;第一次讀取的結(jié)果無效HERE: LCALL TLC2543 JNB EOC ,$ ;判斷是否轉(zhuǎn)換完畢 LCALL DI

20、SP ;調(diào)用顯示 AJMP HERE ;返回 DISP:MOV A,JG1 ;顯示結(jié)果 ANL A,#0F0H SWAP A MOV DPTR,#TAB MOVC A,A+DPTR CLR WEI4 SETB WEI1 MOV P2,A ACALL D5MS ;延時程序 MOV A,JG1 ANL A,#0FH MOV DPTR,#TAB MOVC A,A+DPTR CLR WEI1 SETB WEI2 MOV P2,A ACALL D5MS MOV A,JG2 ANL A,#0F0H SWAP A MOV DPTR,#TAB MOVC A,A+DPTRCLR WEI2SETB WEI3 MO

21、V P2,A ACALL D5MS MOV A,JG2 ANL A,#0FH MOV DPTR,#TAB MOVC A,A+DPTR CLR WEI3 SETB WEI4 MOV P2,A ACALL D5MS RETTAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH ;共陽極碼END在單片機(jī)的應(yīng)用系統(tǒng)中,被測量對象如溫度、壓力、流量、速度等非電物理量,須經(jīng)傳感器轉(zhuǎn)換成連續(xù)變化的模擬電信號(電壓或電流),這些模擬電信號必須轉(zhuǎn)換成數(shù)字量后才能在單片機(jī)中用軟件進(jìn)行處理。單片機(jī)處理完畢的數(shù)字量,

22、也常常需要轉(zhuǎn)換為模擬信號。數(shù)字量轉(zhuǎn)換成模擬量的器件稱為D/A轉(zhuǎn)換器(DAC)。D/A轉(zhuǎn)換器由電阻網(wǎng)絡(luò)組成,提供電流。如果要把電流轉(zhuǎn)換為電壓還要增加運放電路。因此D/A轉(zhuǎn)換器分為電流輸出型與電壓輸出型。D/A轉(zhuǎn)換器的輸出不僅與輸入的二進(jìn)制代碼有關(guān),而且與運放電路的形式、反饋電阻和參考電壓有關(guān),可以分為單極性輸出和雙極性輸出兩種。根據(jù)轉(zhuǎn)換時間的大小,可以將D/A轉(zhuǎn)換器分為低速型、中速型和高速型。高速型D/A轉(zhuǎn)換器的轉(zhuǎn)換時間小于l ,低速型的轉(zhuǎn)換時間大于100 ,居中的則屬于中速型。轉(zhuǎn)換時間是反映D/A轉(zhuǎn)換速率快慢的一個主要參數(shù)。其定義為:當(dāng)輸入數(shù)據(jù)從零變化到滿量程時,其輸出模擬信號達(dá)到滿量程刻度值

23、的1/2 LSB時所需要的時間。不同的D/A轉(zhuǎn)換器,其建立時間也不同。通常電流輸出的D/A轉(zhuǎn)換器建立時間是很短的,電壓輸出的D/A轉(zhuǎn)換器因內(nèi)部帶有相應(yīng)的運算放大器,其建立時間往往比較長。 有兩級鎖存控制功能,能夠?qū)崿F(xiàn)多通道D/A的同步轉(zhuǎn)換輸出。 內(nèi)部無參考電壓,需外接參考電壓電路。 為電流輸出型D/A轉(zhuǎn)換器,要獲得模擬電壓輸出時,需要外加轉(zhuǎn)換電路。解:解:參考程序如下: MOV DPTR,#0DFFFH ;送DAC0832(1)的地址 MOV A,#data1 MOVX DPTR,A ;將data1送DAC0832(1)的輸入鎖存器 MOV DPTR,#0BFFFH ; 送DAC0832(2)

24、的地址 MOV A,#data2 MOVX DPTR,A ;將data2送DAC0832(2)的輸入鎖存器 MOVX DPTR,#7FFFH ;送兩片DAC0832的DAC寄存器地址MOVX DPTR,A ;進(jìn)行兩路數(shù)據(jù)同步轉(zhuǎn)換輸出隨著SPI技術(shù)的快速發(fā)展,基于SPI串行接口的DAC的使用越來越普遍。TLC5615是美國TI公司生產(chǎn)的10位串行DAC芯片,電壓輸出型,并且?guī)в猩想姀?fù)位功能。單片機(jī)通過3根串行總線就可以完成10位數(shù)據(jù)的串行輸入,易于和工業(yè)標(biāo)準(zhǔn)的微處理器或單片機(jī)接口。另外8引腳的小型D封裝允許在空間受限制的應(yīng)用中實現(xiàn)模擬功能的數(shù)字控制。因此其在電池供電測試儀表、電池工作/遠(yuǎn)程工業(yè)控

25、制、移動電話等場合得到了廣泛的應(yīng)用。引腳功能如下:DIN:串行數(shù)據(jù)輸入端。SCLK:串行時鐘輸入端。CS:片選端,低電平有效。DOUT:用于級聯(lián)時的串行數(shù)據(jù)輸出端。AGND:模擬地。REFIN:基準(zhǔn)電壓輸入端,2V(VDD -2)。OUT:DAC模擬電壓輸出端。VDD:正電源端,4.55. 5V,通常取5v。TLC5615芯片的內(nèi)部功能框圖如圖10-11所示。它主要包括以下幾部分。10位DAC電路。一個16位移位寄存器,接受串行移入的二進(jìn)制數(shù),并且有一個級聯(lián)的數(shù)據(jù)輸出端DOUT。并行輸入輸出的10位DAC寄存器,為10位DAC電路提供待轉(zhuǎn)換的二進(jìn)制數(shù)據(jù)。電壓跟隨器為參考電壓端REFIN提供很高

26、的輸入阻抗,大約10M。2電路提供最大值為2倍于REFIN的輸出。上電復(fù)位電路和控制電路。TLC5615有兩種工作方式:第一種工作方式是12位數(shù)據(jù)序列,根據(jù)圖10-11可以看出,16位移位寄存器分為高4位虛擬位、10位有效位以及低兩位填充位。在單片TLC5615工作時,只需要向16位移位寄存器按先后輸入10位有效位和低2位填充位,2位填充位數(shù)據(jù)任意。第二種方式為級聯(lián)方式, 即16位數(shù)據(jù)列,可以將本片的DOUT接到下一片的DIN,需要向16位移位寄存器按先后輸入高4位虛擬位、10位有效位和低2位填充位, 由于增加了高4位虛擬位, 所以需要16個時鐘脈沖。例10-5:單片機(jī)控制串行DACTLC56

27、15進(jìn)行D/A轉(zhuǎn)換的接口電路原理圖如圖10-13所示。調(diào)節(jié)電位器RV1,使TLC5615芯片的輸出電壓可在05V內(nèi)調(diào)節(jié)。ORG 0030HMAIN:MOV A,#255 ;要寫入的數(shù)據(jù),高位導(dǎo)前輸入MOV R7,#8 ;寫入8個數(shù)據(jù)ACALL WRITE ;寫入數(shù)據(jù)MOV R7,#4 ;寫入4位數(shù)據(jù)MOV A,#0F0H ;寫入的數(shù)據(jù)ACALL WRITESETB CS ;CS置高電平CLR SCLKLCALL DELAYMS ;延時SJMP MAINWRITE: CLR CS ;CS置低電平CLR SCLK ; SCLK置低電平L3:RLC A MOV DIN,C ;移入一位數(shù)據(jù)SETB S

28、CLK ; SCLK置高電平CLR SCLK ; SCLK置低電平DJNZ R7,L3 RET DELAYMS:SETB RS1DELAY1:MOV R7,#00HMOV R6,#00HDJNZ R6,$DJNZ R7,DELAY1CLR RS1RET END【任務(wù)目的】【任務(wù)目的】了解輸入/輸出通道設(shè)計的基本原理和方法。掌握ADC0809芯片與AT89S51單片機(jī)的接口電路與程序設(shè)計。【任務(wù)描述】【任務(wù)描述】該任務(wù)使用AT89S51單片機(jī)和ADC0809芯片設(shè)計數(shù)字電壓表。ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV DPTR, #07FFFH LOOP:C

29、LR P3.3 ;關(guān)顯示位 CLR P3.4 CLR P3.5 MOVX DPTR,A ;啟動0809,與A中內(nèi)容無關(guān)MOV R6,#34H ;編程方式為延時 DJNZ R6,$MOVX A,DPTR ;讀A/D轉(zhuǎn)換數(shù) MOV 30H,A ;暫存RAM30H單元 MOV R2,#00H ;a*500 MOV R3,A MOV R6,#01H MOV R7,#0F4H ACALL MULD MOV R7,#0FFH ;a*500/255 ACALL DV31 MOV A,R4 ;調(diào)整為BCD碼 MOV R6,A MOV A,R5 MOV R7,AACALL HB2 MOV 42H,R4 ;百位存

30、入42H單元 MOV A,R5 ANL A,#0F0H SWAP A MOV 43H,A ;十位存入43H單元 MOV A,R5 ANL A,#0FH MOV 44H,A ;各位存入44H單元 MOV A,44HLCALL SEG7 ;查顯示碼 CLR P3.3 ;關(guān)百位 CLR P3.4 ;關(guān)十位 SETB P3.5 ;開各位MOV P1,A ;顯示個位LCALL DELAY ;調(diào)延時 MOV A,43H ;取十位LCALL SEG7 CLR P3.3 CLR P3.5 SETB P3.4 ;開十位 MOV P1,A ;顯示十位 LCALL DELAY ;延時MOV A,42HLCALL S

31、EG7 CLR P3.4 CLR P3.5SETB P3.3 ;開百位ANL A,#7FHMOV P1,A ;顯示百位 LCALL DELAY ;調(diào)延時程序 SJMP LOOP ;循環(huán) SEG7:INC A ;調(diào)整查表位置 MOVC A,A+PC ;查顯示碼 RET DB 0C0H,0F9H,0A4H,0B0H,99H ;共陽段碼DB 92H,82H,0F8H,80H,90H DELAY: MOV 40H,#10 ;延時程序DEL1:MOV 41H,#249DEL2: DJNZ 41H,DEL2 DJNZ 40H,DEL1 RETMULD:MOV A,R3 ;計算R3乘R7 MOV B,R7 MUL AB MOV R4,B ;暫存部分積 MOV R5,A MOV A,R3 ;計算R3乘R6 MOV B,R6 MUL AB ADD A,R4 ;累加部分積 MOV R4,A CLR A ADDC A,B MOV R3,A RETDV31:CLRC MOV A,R3 SUBB A,R7 JC DV30 SETB OV ;商溢出 RETDV30:MOVR2,#10H ;求R3R4R5R7R4R5DM23:CLRC MOV A,R5 RLC A MOVR5

溫馨提示

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

評論

0/150

提交評論