版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Tankertanker Design11.1 STC89C52與A/D轉(zhuǎn)換器的接口11.2 STC89C52與D/A轉(zhuǎn)換器的接口第十一章 STC89C52與A/D、D/A轉(zhuǎn)換器的接口Tankertanker DesignD/A轉(zhuǎn)換器轉(zhuǎn)換器(Digital to Analog Converter)能把數(shù)字量轉(zhuǎn)換為模擬量的電子器件(簡(jiǎn)稱(chēng)為DAC)。A/D轉(zhuǎn)換器轉(zhuǎn)換器(Analog to Digital Converter)能把模擬量轉(zhuǎn)換成相應(yīng)數(shù)字量的電子器件(簡(jiǎn)稱(chēng)為ADC)。Tankertanker Design11.1 STC89C52與A/D轉(zhuǎn)換器的接口1.概述 A/D轉(zhuǎn)換器把模擬量轉(zhuǎn)換成數(shù)
2、字量,以便于單片機(jī)進(jìn)行數(shù)據(jù)處理。A/D轉(zhuǎn)換一般要經(jīng)過(guò)采樣、保持、量化及編碼4個(gè)過(guò)程。在實(shí)際電路中,有些過(guò)程是合并進(jìn)行的,如采樣和保持,量化和編碼在轉(zhuǎn)換過(guò)程中是同時(shí)實(shí)現(xiàn)的。 目前單片的ADC芯片較多,對(duì)設(shè)計(jì)者來(lái)說(shuō),只需合理的選擇芯片即可。現(xiàn)在部分的單片機(jī)片內(nèi)集成了A/D轉(zhuǎn)換器,僅在片內(nèi)A/D轉(zhuǎn)換器不能滿足需要的情況下,需外擴(kuò)。當(dāng)然作為擴(kuò)展A/D轉(zhuǎn)換器的基本方法,還是應(yīng)該掌握。Tankertanker DesignAD轉(zhuǎn)換器的分類(lèi) 盡管A/D轉(zhuǎn)換器的種類(lèi)很多種類(lèi)很多,但目前廣泛應(yīng)用在單片機(jī)應(yīng)用系統(tǒng)中的主要有逐次比較型轉(zhuǎn)換器逐次比較型轉(zhuǎn)換器和雙積分型轉(zhuǎn)換器雙積分型轉(zhuǎn)換器,此外 -式轉(zhuǎn)換器式轉(zhuǎn)換器逐漸
3、得到重視和較為廣泛的應(yīng)用。 逐次比較型逐次比較型A/DA/D轉(zhuǎn)換器轉(zhuǎn)換器,在精度、速度和價(jià)格上都適中,是最常用的最常用的A/DA/D轉(zhuǎn)換器轉(zhuǎn)換器。Tankertanker Design 雙積分型雙積分型A/DA/D轉(zhuǎn)換器轉(zhuǎn)換器,具有精度高、抗干擾性好、價(jià)格低廉等優(yōu)點(diǎn),與逐次比較型A/D轉(zhuǎn)換器相比,轉(zhuǎn)換速度較慢,近年來(lái)在單片機(jī)應(yīng)用領(lǐng)域中也得到廣泛應(yīng)用得到廣泛應(yīng)用。 - - 式式ADCADC具有積分式與逐次比較型ADC的雙重優(yōu)點(diǎn)。它對(duì)工業(yè)現(xiàn)場(chǎng)的串模干擾具有較強(qiáng)的抑制能力,不亞于雙積分ADC,它比雙積分ADC有較高的轉(zhuǎn)換速度,與逐次比較型ADC相比,有較高的信噪比,分辨率高,線性度好,不需要采樣保持
4、電路。 A/DA/D轉(zhuǎn)換器按照轉(zhuǎn)換速度可大致分為轉(zhuǎn)換器按照轉(zhuǎn)換速度可大致分為超高速超高速(轉(zhuǎn)換時(shí)間1ns)、高速高速(轉(zhuǎn)換時(shí)間1s)、中速中速(轉(zhuǎn)換時(shí)間1ms)、低速低速(轉(zhuǎn)換時(shí)間1s)等幾種不同轉(zhuǎn)換速度的芯片。 按照輸出數(shù)字量的有效位數(shù)分為按照輸出數(shù)字量的有效位數(shù)分為4 4位、位、8 8位、位、1010位、位、1212位、位、1414位、位、1616位并行輸出位并行輸出以及BCDBCD碼輸出碼輸出的3位半、4位半、5位半等多種。Tankertanker Design 目前,除并行輸出A/D轉(zhuǎn)換器外,隨著單片機(jī)串行擴(kuò)展方式的日益增多,帶有帶有同步同步SPISPI串行接口串行接口的的A/DA/D
5、轉(zhuǎn)換器的轉(zhuǎn)換器的使用也逐漸增多使用也逐漸增多。串行輸出的A/D轉(zhuǎn)換器具有占用端口線占用端口線少、使用方便、接口簡(jiǎn)單少、使用方便、接口簡(jiǎn)單等優(yōu)點(diǎn)。較為典型的串行較為典型的串行A/DA/D轉(zhuǎn)轉(zhuǎn)換器為美國(guó)換器為美國(guó)TITI公司公司的TLC549(8位)、TLC1549(10位)以及TLC1543(10位)和TLC2543(12位)。Tankertanker Design 2.ADC主要技術(shù)指標(biāo) (1 1)轉(zhuǎn)換時(shí)間和轉(zhuǎn)換速率)轉(zhuǎn)換時(shí)間和轉(zhuǎn)換速率 A/D完成一次轉(zhuǎn)換所需要的時(shí)間所需要的時(shí)間。轉(zhuǎn)換時(shí)間的倒數(shù)為轉(zhuǎn)換速率。 (2 2)分辨率)分辨率 分辨率是衡量A/D轉(zhuǎn)換器能夠分辨出能夠分辨出輸入模擬量最小變
6、輸入模擬量最小變化化程度的技術(shù)指標(biāo)程度的技術(shù)指標(biāo)。分辨率取決于A/DA/D轉(zhuǎn)換器的轉(zhuǎn)換器的位數(shù)位數(shù),習(xí)慣上用輸出的二進(jìn)制位數(shù)或BCD碼位數(shù)表示。例如,例如,AD1674AD1674的滿量程輸入電壓為5V,可輸出12位二進(jìn)制數(shù),即用212個(gè)數(shù)進(jìn)行量化,其分辨率為分辨率為1212位位,或A/D轉(zhuǎn)換器能分辨出輸入電壓分辨出輸入電壓5V/25V/21212=1.22mV=1.22mV的變化。Tankertanker Design (3 3)量化誤差)量化誤差 量化過(guò)程引起的誤差稱(chēng)為量化誤差量化誤差。是由于有限位數(shù)有限位數(shù)字量對(duì)模擬量進(jìn)行量化字量對(duì)模擬量進(jìn)行量化而引起的誤差。理論上規(guī)定為一個(gè)單位分辨率的
7、-1/2 - +1/2LSB ,提高A/D位數(shù)既可以提高分辨率,又能夠減少量化誤差。 (4 4)轉(zhuǎn)換精度)轉(zhuǎn)換精度 轉(zhuǎn)換精度定義為一個(gè)實(shí)際A/D轉(zhuǎn)換器與一個(gè)理想A/D轉(zhuǎn)換器在量化值上的差值,可用絕對(duì)誤差或相對(duì)誤差表示。Tankertanker Design3.逐次逼近式ADC的工作原理 轉(zhuǎn)換過(guò)程中的逐次逼近是按照對(duì)分比較或者對(duì)分搜索的轉(zhuǎn)換過(guò)程中的逐次逼近是按照對(duì)分比較或者對(duì)分搜索的原理進(jìn)行。原理進(jìn)行。工作原理:工作原理:在時(shí)鐘脈沖的同步下,控制邏輯先使N位寄存器的D7位置1(其余位為),此時(shí)該寄存器輸出的內(nèi)容為10000000,此值經(jīng)DAC轉(zhuǎn)換為模擬量輸出VN ,與待轉(zhuǎn)換的模擬輸入信號(hào)VIN
8、相比較,若VIN =VN ,則比較器輸出為1。于是在時(shí)鐘脈沖的同步下,保留最高位D7=1,并使下一位D6=1,所得新值(11000000B)再經(jīng)DAC轉(zhuǎn)換得到新的VN,與VIN比較,重復(fù)前述過(guò)程。反之,若使D7=1后,經(jīng)比較VIN =VN ,則使D7=0,D6=1,所得新值VN再與VIN比較,重復(fù)前述過(guò)程。依次類(lèi)推,從D7到D0都比較完畢后,控制邏輯使EOC變?yōu)楦唠娖?,表示A/D轉(zhuǎn)換結(jié)束,此時(shí)的D7D0即為對(duì)應(yīng)于模擬輸入信號(hào)VIN的數(shù)字量。Tankertanker Design11.1.2 STC89C52與并型8位A/D轉(zhuǎn)換器ADC0809的接口1.ADC0809芯片-逐次比較型ADC芯片分
9、辨率為位 轉(zhuǎn)換時(shí)間00S 工作量程為05V功耗為15m工作電壓為+5V具有鎖存控制的8路模擬開(kāi)關(guān)輸出與TTL電平兼容 Tankertanker Design8路模擬輸入信號(hào)用三根地址線A,B,C選通IN0IN7;A、B、C分別與單片機(jī)的三條地址線相連,三位編碼對(duì)應(yīng)三位編碼對(duì)應(yīng)8 8個(gè)通道地址個(gè)通道地址端口端口。C C、B B、A = 000A = 000111111分別對(duì)應(yīng)IN0IN0IN7IN7通道的地址。引腳START啟動(dòng)AD轉(zhuǎn)換,CLOCK轉(zhuǎn)換時(shí)鐘,VR參考電壓,EOC轉(zhuǎn)換結(jié)束標(biāo)志, OE輸出使能,ALE地址鎖存。ADC0809的結(jié)構(gòu)組成Tankertanker Design工作時(shí)序AL
10、EALE鎖存鎖存ADDAADDA、ADDBADDB、ADDCADDCSTARTSTART正脈沖正脈沖啟動(dòng)啟動(dòng)AD轉(zhuǎn)換轉(zhuǎn)換 EOCEOC由由高變低高變低(ADAD啟動(dòng)后啟動(dòng)后) 保持低電平保持低電平( (轉(zhuǎn)換期間轉(zhuǎn)換期間) ) 由低變高由低變高(轉(zhuǎn)換結(jié)束轉(zhuǎn)換結(jié)束)OEOE正脈沖,打開(kāi)三態(tài)門(mén)輸出正脈沖,打開(kāi)三態(tài)門(mén)輸出Tankertanker Design2.STC89C52與ADC0809的接口 單片機(jī)讀取ADC的轉(zhuǎn)換結(jié)果時(shí),可采用查詢(xún)和中斷控制兩種方式。 (1)查詢(xún)方式 查詢(xún)方式是在單片機(jī)把啟動(dòng)信號(hào)送到ADC之后,執(zhí)行其他程序,同時(shí)對(duì)ADC0809的EOC腳不斷進(jìn)行檢測(cè),以查詢(xún)ADC變換是否已經(jīng)
11、結(jié)束,如查詢(xún)到變換已經(jīng)結(jié)束,則讀入轉(zhuǎn)換完畢的數(shù)據(jù)。Tankertanker Design由于ADC0809片內(nèi)無(wú)時(shí)鐘,可利用單片機(jī)提供的地址鎖存允許信號(hào)ALE經(jīng)D觸發(fā)器二分頻后獲得,ALE引腳的頻率是STC89C52單片機(jī)時(shí)鐘頻率的1/6。如果單片機(jī)時(shí)鐘頻率采用6MHz,則ALE引腳的輸出頻率為1MHz,再二分頻后為500kHz,符合ADC0809對(duì)時(shí)鐘頻率的要求。當(dāng)然,也可采用獨(dú)立的時(shí)鐘源輸出,直接加到ADC的CLK腳。Tankertanker DesignADC0809具有輸出三態(tài)鎖存器,其8位數(shù)據(jù)輸出引腳D0D7可直接與單片機(jī)的P0口相連。Tankertanker Design單片機(jī)的寫(xiě)
12、信號(hào) 和P2.7控制ADC的地址鎖存和轉(zhuǎn)換啟動(dòng)由于ALE和START連在一起,因此ADC0809在鎖存通道地址的同時(shí)啟動(dòng)并進(jìn)行轉(zhuǎn)換。Tankertanker Design讀取轉(zhuǎn)換結(jié)果時(shí),用低電平的讀信號(hào) 和P2.7引腳經(jīng)一級(jí)“或非門(mén)”后產(chǎn)生的正脈沖作為OE信號(hào),用來(lái)打開(kāi)三態(tài)輸出鎖存器。Tankertanker Design 【例11-1】采用ADC0809設(shè)計(jì)數(shù)據(jù)采集電路.該電路通過(guò)調(diào)節(jié)滑線變阻器,調(diào)節(jié)IN5的輸入電壓,A/D轉(zhuǎn)換結(jié)果存放至片內(nèi)數(shù)據(jù)存儲(chǔ)器50H單元,并通過(guò)兩個(gè)BCD數(shù)碼管顯示出來(lái)。Tankertanker Design IN0IN7的地址分別為0 x7FF80 x7FFF。AD
13、C0809的EOC引腳經(jīng)非門(mén)74HC14與單片機(jī)的外部中斷輸入引腳 相連,A/D轉(zhuǎn)換結(jié)束后變?yōu)榈碗娖?,單片機(jī)采用查詢(xún)或中斷方式讀取A/D轉(zhuǎn)換結(jié)果。(1)查詢(xún)方式)查詢(xún)方式#include #include #define AD_IN0 XBYTE0X7FF8 /IN0通道地址通道地址sbit ad_busy=P33; unsigned char data temp _at_ 0 x50;void main(void) while(1)AD_IN0= 0; /啟動(dòng)啟動(dòng)A/D信號(hào)信號(hào),是一個(gè)是一個(gè)虛寫(xiě)虛寫(xiě)操作。操作。while(ad_busy=1);/等待等待A/D轉(zhuǎn)換結(jié)束轉(zhuǎn)換結(jié)束temp=AD_
14、IN0;/轉(zhuǎn)換數(shù)據(jù)存到片內(nèi)轉(zhuǎn)換數(shù)據(jù)存到片內(nèi)50H單元單元P1=temp;/轉(zhuǎn)換數(shù)據(jù)顯示轉(zhuǎn)換數(shù)據(jù)顯示Keil uVision4Tankertanker Design(2)中斷方式 采用中斷方式完成對(duì)IN0通道的輸入模擬量信號(hào)的采集,當(dāng)A/D轉(zhuǎn)換結(jié)束后,EOC發(fā)出一個(gè)脈沖向單片機(jī)提出中斷申請(qǐng),單片機(jī)響應(yīng)中斷請(qǐng)求后,由外部中斷1的中斷服務(wù)程序讀取A/D轉(zhuǎn)換結(jié)果,并啟動(dòng)ADC0809的下一次轉(zhuǎn)換。外部中斷1采用邊沿觸發(fā)方式。中斷控制方式效率高,所以特別適合于轉(zhuǎn)換時(shí)間較長(zhǎng)的ADC。#include #include #define AD_IN0XBYTE0 x7FF8/IN5通道地址通道地址unsign
15、ed char temp _at_ 0 x50;void main(void) IE=0 x84; /CPU開(kāi)放中斷開(kāi)放中斷,允許外部中斷允許外部中斷1中斷中斷IT1=1; /外部中斷外部中斷1采用邊沿觸發(fā)采用邊沿觸發(fā)AD_IN0 = 0; /啟動(dòng)啟動(dòng)A/D信號(hào)信號(hào)while(1) Tankertanker Designvoid data_acquisition(void) interrupt 2 EA=0; temp=AD_IN0; /轉(zhuǎn)換數(shù)據(jù)顯示轉(zhuǎn)換數(shù)據(jù)顯示 P1=temp;AD_IN0=0; /啟動(dòng)啟動(dòng)A/D信號(hào)信號(hào)EA=1; Keil uVision4Tankertanker Desi
16、gn11.1.3 STC89C52與并型12位A/D轉(zhuǎn)換器AD1674的接口 在某些應(yīng)用中,8位ADC常常不夠,必須選擇分辨率大于8位的芯片,由于10位、16位接口與12位類(lèi)似,因此僅以常用的12位A/D轉(zhuǎn)換器AD1674為例進(jìn)行介紹。1AD1674簡(jiǎn)介簡(jiǎn)介 美國(guó)AD公司1212位逐次比較型位逐次比較型A/DA/D轉(zhuǎn)換器轉(zhuǎn)換器。轉(zhuǎn)換時(shí)間為轉(zhuǎn)換時(shí)間為1010 s s,單通道最大采集速率最大采集速率100kHz100kHz。Tankertanker Design28引腳雙列直插式封裝圖Tankertanker Design由于芯片內(nèi)有三態(tài)輸出緩沖電路,因而可直接與各種典型的8位或16位的單片機(jī)相連
17、,AD1674片內(nèi)集成有高精度的基準(zhǔn)電壓源和時(shí)鐘電路,從而使該芯片在不需要任何外加電路和時(shí)鐘信號(hào)的情況下完成A/D轉(zhuǎn)換,使用非常方便。AD1674是AD574A/674A的更新?lián)Q代產(chǎn)品。它們的基本相同,引腳功能與AD574A/ 674A完全兼容,可以直接替換AD574、AD674使用,但最大轉(zhuǎn)換時(shí)間由25s提高到10s。Tankertanker Design與AD574A/674AAD574A/674A相比相比,AD1674AD1674的內(nèi)部結(jié)構(gòu)更加緊湊的內(nèi)部結(jié)構(gòu)更加緊湊,集成度更高,工作性能(尤其是高低溫穩(wěn)定性)更好集成度更高,工作性能(尤其是高低溫穩(wěn)定性)更好,而且可以使設(shè)計(jì)板面積大大減小
18、,因而可以降低成本并提高系統(tǒng)的可靠性。目前,片內(nèi)帶有采樣保持器的AD1674正以其優(yōu)良的性能價(jià)格比,取代AD574A和AD674A。AD1674共有6個(gè)控制引腳個(gè)控制引腳,功能如下: :芯片選擇。 CE:芯:芯片啟動(dòng)信號(hào)。當(dāng)CE=1時(shí),究竟是啟動(dòng)轉(zhuǎn)換還是讀取結(jié)果與R/ 有關(guān)。 R/ :讀出/轉(zhuǎn)換控制信號(hào)。CSCCTankertanker Design12/ :數(shù)據(jù)輸出格式選擇信號(hào)引腳。當(dāng)12/ =1時(shí),12條數(shù)據(jù)線并行輸出轉(zhuǎn)換結(jié)果;當(dāng)12/ =0 時(shí),與A0配合,轉(zhuǎn)換結(jié)果分兩次輸出,即只有高8位或低4位有效。注意:注意:12/ 端與TTL電平不兼容,故只能直接接至+5V或0V上。8888Tan
19、kertanker DesignA0:字節(jié)選擇控制。在轉(zhuǎn)換期間在轉(zhuǎn)換期間:當(dāng)A0=0A0=0時(shí),AD1674進(jìn)行全12位轉(zhuǎn)換。當(dāng)A0=1A0=1時(shí),僅進(jìn)行8位轉(zhuǎn)換。在讀出期間在讀出期間,與12/ 12/ =0配合:當(dāng)A0=0A0=0時(shí),高8位數(shù)據(jù)有效;當(dāng)A0=1A0=1時(shí),低4位數(shù)據(jù)有效,中間4位為0,高4位為高阻態(tài)。8Tankertanker Design上述5個(gè)控制信號(hào)組合的真值表如下:當(dāng)采用兩次讀出的采用兩次讀出的12位數(shù)據(jù)位數(shù)據(jù)遵循左對(duì)齊左對(duì)齊格式,如下所示:Tankertanker DesignSTSSTS:輸出狀態(tài)信號(hào)引腳。 轉(zhuǎn)換開(kāi)始時(shí)轉(zhuǎn)換開(kāi)始時(shí),STS為高電平,轉(zhuǎn)換過(guò)程中轉(zhuǎn)換過(guò)程
20、中保持高電平。 轉(zhuǎn)換完成時(shí)轉(zhuǎn)換完成時(shí),為低電平。STS可以作為狀態(tài)信息被CPU查詢(xún),也可用下跳沿向單片機(jī)發(fā)出中斷申請(qǐng),通知單片機(jī)A/D轉(zhuǎn)換已完成,可讀取轉(zhuǎn)換結(jié)果。Tankertanker Design除上述6個(gè)控制引腳外,其他引腳的功能如下:REFOUTREFOUT:+10V基準(zhǔn)電壓輸出。REFINREFIN:基準(zhǔn)電壓輸入。只有由此腳把從“REFOUT”腳輸出的基準(zhǔn)電壓引入到AD1674內(nèi)部的12位DAC,才能進(jìn)行正常的A/D轉(zhuǎn)換。BIPOFFBIPOFF:雙極性補(bǔ)償。對(duì)此引腳進(jìn)行適當(dāng)?shù)倪B接,可實(shí)現(xiàn)單極性或雙極性的輸入。10V10VININ:10V或5+5V模擬信號(hào)輸入端。Tankertank
21、er Design20V20VININ:20V或10+10V模擬信號(hào)輸入端。DGNDDGND:數(shù)字地。各數(shù)字電路器件及“+5V”電源的地。AGNDAGND:模擬地。各模擬電路器件及“+15V”、“15V”電源地。V VCCCC:正電源端,為+12+15V。V VEEEE:負(fù)電源端,為1215V。Tankertanker Design當(dāng)CE=1, = 0同時(shí)滿足時(shí),AD1674才能處于工作狀處于工作狀態(tài)態(tài)。當(dāng)AD1674處于工作狀態(tài)時(shí),R/ = 0時(shí)啟動(dòng)A/D轉(zhuǎn)換;R/ =1 =1時(shí)讀出轉(zhuǎn)換結(jié)果。12/ 和和A0端用來(lái)控制轉(zhuǎn)換字長(zhǎng)和數(shù)據(jù)格式。A0=0A0=0時(shí)啟動(dòng)轉(zhuǎn)換,按完整的12位A/D轉(zhuǎn)換方
22、式工作; A0=1A0=1啟動(dòng)轉(zhuǎn)換,則按8位A/D轉(zhuǎn)換方式工作。當(dāng)當(dāng)AD1674AD1674處于數(shù)據(jù)讀出工作狀態(tài)處于數(shù)據(jù)讀出工作狀態(tài)(R/ = 1)時(shí),A0和12/ 成為數(shù)據(jù)輸出格式控制端。CS8CC8C2 2AD1674AD1674的工作特性的工作特性Tankertanker Design12/ =1時(shí),對(duì)應(yīng)12位并行輸出;12/ =0時(shí),則對(duì)應(yīng)8位雙字節(jié)輸出。其中A0=0A0=0時(shí)輸出高8位,A0 = 1A0 = 1時(shí)輸出低4位,并以4個(gè)0補(bǔ)足尾隨的4位。注意注意,A0在轉(zhuǎn)換結(jié)果數(shù)據(jù)輸出期間不能變化。如要求AD1674以獨(dú)立方式獨(dú)立方式工作,只要將CECE、12/ 端接入+5V, 和A0A
23、0接至0V,將R/ 作為數(shù)據(jù)讀出和啟動(dòng)轉(zhuǎn)換控制。R/ =1時(shí),數(shù)據(jù)輸出端出現(xiàn)被轉(zhuǎn)換后的數(shù)據(jù); R/ =0時(shí),即啟動(dòng)一次A/D轉(zhuǎn)換。在延時(shí)0.5s后,STS = 1表示轉(zhuǎn)換正在進(jìn)行。經(jīng)過(guò)一個(gè)轉(zhuǎn)換周期后,STS跳回低電平,表示A/D轉(zhuǎn)換完畢,可讀取新的轉(zhuǎn)換數(shù)據(jù)。888CCCCSTankertanker Design注意,注意,只有在CE = 1CE = 1且 = 0= 0時(shí)才啟動(dòng)轉(zhuǎn)換,在啟動(dòng)信號(hào)有效前,R/ R/ 必須為低電平,否則將產(chǎn)生讀取數(shù)據(jù)的操作。3 3AD1674AD1674的單極性和雙極性輸入的電路的單極性和雙極性輸入的電路通過(guò)改變AD1674引腳8、10、12的外接電路,可使AD167
24、4實(shí)現(xiàn)單極性輸入和雙極性輸入模擬信號(hào)的轉(zhuǎn)換。由于AD1674片內(nèi)含有高精度的基準(zhǔn)電壓源和時(shí)鐘電路,因此AD1674無(wú)需任何外加電路和時(shí)鐘信號(hào)的情況下即可完成A/D轉(zhuǎn)換,使用非常方便。(1 1)單極性輸入電路)單極性輸入電路圖圖11-11-8 8(a a)為單極性輸入電路,可實(shí)現(xiàn)輸入信號(hào)0 010V10V或0 020V20V的轉(zhuǎn)換。當(dāng)輸入信號(hào)為輸入信號(hào)為0 010V10V時(shí),應(yīng)從10VIN引腳輸入(引腳13);輸入信號(hào)為輸入信號(hào)為0 020V20V時(shí),應(yīng)從20VIN引腳輸入(引腳14)。CSCTankertanker Design AD1674模擬輸入電路的外部接法模擬輸入電路的外部接法注意注意
25、: :單片機(jī)系統(tǒng)模擬信號(hào)的地線應(yīng)與單片機(jī)系統(tǒng)模擬信號(hào)的地線應(yīng)與AGNDAGND相連,使其地線的接觸電阻盡可能小。相連,使其地線的接觸電阻盡可能小。Tankertanker Design輸出的轉(zhuǎn)換結(jié)果D的計(jì)算公式計(jì)算公式為: D D=4096=4096V VI IN N / V/ VFSFS或或 V VININ= = D DV VFSFS /4096 /4096其中V VININ為模擬輸入電壓,V VFSFS為滿量程電壓。若從若從10V10VININ腳輸入腳輸入,VFS=10V,LSB=10/409624mV;若從若從20V20VININ腳輸入腳輸入;VFS=20V,1LSB=20/409649
26、mV。圖中的電位器RP2用于調(diào)零,即當(dāng)VIN=0時(shí),輸出數(shù)字量D為全0。36Tankertanker Design(2 2)雙極性輸入電路)雙極性輸入電路圖圖11-11-8 8(b b)為雙極性轉(zhuǎn)換電路雙極性轉(zhuǎn)換電路,可實(shí)現(xiàn)輸入信號(hào)10+10V或0+20V的轉(zhuǎn)換。圖中電位器RP1用于調(diào)零。雙極性輸入時(shí),輸出的轉(zhuǎn)換結(jié)果D與模擬輸入電壓VIN之間的關(guān)系為:D D=2048=2048(1+1+V VIN IN / V/ VFSFS)或或 V VININ= =(D D / / 2048120481)V VFSFS /2 /2例如,例如,當(dāng)模擬信號(hào)從10VIN引腳輸入,則VFS=10V,若讀得D=FFF
27、H,即111111111111B=4095,代入式中,可求得VIN=4.9976V。Tankertanker Design 轉(zhuǎn)換結(jié)果的高轉(zhuǎn)換結(jié)果的高8 8位位從DB11DB4輸出,低低4 4位位從DB3DB0輸出,即A0=0時(shí),讀取結(jié)果的高8位;當(dāng)A0=1時(shí),讀取結(jié)果的低4位。若遵循左對(duì)齊若遵循左對(duì)齊的原則,DB3DB0應(yīng)接單片機(jī)的P0.7P0.4。Tankertanker Design4STC89C52單片機(jī)與AD1674的接口Tankertanker DesignSTSSTS引腳引腳接單片機(jī)的接單片機(jī)的P1.0P1.0引腳引腳,采用查詢(xún)方式讀取轉(zhuǎn)換結(jié)果。當(dāng)單片機(jī)執(zhí)行對(duì)外部數(shù)據(jù)存儲(chǔ)器寫(xiě)指令,
28、使CE=1, =0,R/ =0,A0=0時(shí),啟動(dòng)A/D轉(zhuǎn)換。當(dāng)單片機(jī)查詢(xún)到P1.0引腳為低電平時(shí),轉(zhuǎn)換結(jié)束,單片機(jī)使CE=1, =0,R/ =1,A0=0,讀取結(jié)果高8位;CE=1, = 0, R/ =1,A0=1,讀取結(jié)果的低4位。該接口電路完成一次A/D轉(zhuǎn)換的查詢(xún)方式查詢(xún)方式的程序如下(高8位轉(zhuǎn)換結(jié)果存入R2中,低4位存入R3中,遵循左對(duì)齊原則):CSCCSCCCSTankertanker DesignAD1674: MOV R0,0F8H;端口地址送R0MOVXR0,A;啟動(dòng)AD1674進(jìn)行轉(zhuǎn)換SETBP1.0;置P1.0為輸入LOOP: NOPJBP1.0,LOOP;查詢(xún)轉(zhuǎn)換是否結(jié)束I
29、NCR0;使R/ 1,準(zhǔn)備讀取結(jié)果MOVXA,R0;讀取高8位轉(zhuǎn)換結(jié)果MOVR2,A;高8位轉(zhuǎn)換結(jié)果存入R2中INCR0;使R/ 1, A01INCR0MOVX A,R0;讀取低4位轉(zhuǎn)換結(jié)果MOVR3,A;低4位轉(zhuǎn)換結(jié)果存入R3中CCTankertanker Design AD1674AD1674接口電路全部連接完畢后,在模擬輸入端輸入接口電路全部連接完畢后,在模擬輸入端輸入一穩(wěn)定的標(biāo)準(zhǔn)電壓,啟動(dòng)一穩(wěn)定的標(biāo)準(zhǔn)電壓,啟動(dòng)A/DA/D轉(zhuǎn)換,轉(zhuǎn)換,1212位數(shù)據(jù)亦應(yīng)穩(wěn)定位數(shù)據(jù)亦應(yīng)穩(wěn)定。如果變化較大,說(shuō)明電路穩(wěn)定性差,則要從電源及接地布線等方面查找原因。 AD1674AD1674的電源電壓要有較好的穩(wěn)
30、定性和較小的噪聲的電源電壓要有較好的穩(wěn)定性和較小的噪聲,噪聲大的電源會(huì)產(chǎn)生不穩(wěn)定的輸出代碼,所以在設(shè)計(jì)印制電路板時(shí),要注意電源去耦、布線以及地線的布置。 這些問(wèn)題對(duì)于位數(shù)較多的這些問(wèn)題對(duì)于位數(shù)較多的ADCADC與單片機(jī)接口,要給予與單片機(jī)接口,要給予重視。重視。電源要很好濾波,還要避開(kāi)高頻噪聲源。此外,所所有的電源引腳都要用去耦電容有的電源引腳都要用去耦電容。Tankertanker Design11.2 STC89C52與D/A轉(zhuǎn)換器的接口11.2.1 D/A轉(zhuǎn)換器簡(jiǎn)介1.1.概述概述 模/數(shù)轉(zhuǎn)換器(DAC)是一種把數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào)的器件。 按照二進(jìn)制數(shù)字量的位數(shù)劃分,有8 位、10
31、位、12 位、16位D/A轉(zhuǎn)換器;按照數(shù)字量的數(shù)碼形式劃分,有二進(jìn)制碼和BCD碼D/A轉(zhuǎn)換器;按照D/A轉(zhuǎn)換器輸出方式劃分,有電流輸出型和電壓輸出型D/A轉(zhuǎn)換器。在實(shí)際應(yīng)用中,對(duì)于電流輸出的D/A轉(zhuǎn)換器,如需要模擬電壓輸出,可在其輸出端加一個(gè)由運(yùn)算放大器構(gòu)成的I/V轉(zhuǎn)換電路,將電流輸出轉(zhuǎn)換為電壓輸出。Tankertanker Design 單片機(jī)與D/A轉(zhuǎn)換器的連接,早期多采用8位數(shù)字量并行傳輸?shù)牟⑿薪涌?,現(xiàn)在除并行接口外,帶有串行口的D/A轉(zhuǎn)換器品種也不斷增多。除了通除了通用的用的UARTUART串行口外,目前較為流行的還有串行口外,目前較為流行的還有IICIIC串行串行口和口和SPISPI
32、串行口串行口等。所以在選擇單片D/A轉(zhuǎn)換器時(shí),要考慮單片機(jī)與D/A轉(zhuǎn)換器的接口形式。Tankertanker Design 目前部分單片機(jī)芯片中集成的D/A轉(zhuǎn)換器位數(shù)一般在10位左右,且轉(zhuǎn)換速度很快,所以單片的DAC開(kāi)始向高位數(shù)和高轉(zhuǎn)換速度上轉(zhuǎn)變。低端的產(chǎn)品,如8位的D/A轉(zhuǎn)換器,開(kāi)始面臨被淘汰的危險(xiǎn),但是在實(shí)驗(yàn)室或涉及某些工業(yè)控制方面的應(yīng)用,低端的8位DAC以其優(yōu)異性?xún)r(jià)比還是具有相當(dāng)大的應(yīng)用空間的。Tankertanker Design 2.D/A 2.D/A轉(zhuǎn)換器的主要技術(shù)指標(biāo)轉(zhuǎn)換器的主要技術(shù)指標(biāo)(1 1)分辨率)分辨率 分辨率是指輸入數(shù)字量的最低有效位(LSB)發(fā)生變化時(shí),所對(duì)應(yīng)的輸出模
33、擬量(常為電壓)的變化量。它反映了輸出模擬量的最小變化值。 分辨率與輸入數(shù)字量的位數(shù)有確定的關(guān)系,可以表示成FS/2n。FS表示滿量程輸入值,n為二進(jìn)制位數(shù)。對(duì)于5V的滿量程,采用位的DAC 時(shí),分辨率為5V/28=19.5mV;當(dāng)采用12位的DAC時(shí),分辨率則為5V/2121.22mV。顯然,位數(shù)越多,分辨率就越高。即D/A轉(zhuǎn)換器對(duì)輸入量變化的敏感程度越高。 使用時(shí),應(yīng)根據(jù)對(duì)使用時(shí),應(yīng)根據(jù)對(duì)D/AD/A轉(zhuǎn)換器分辨率的需要來(lái)選定轉(zhuǎn)換器分辨率的需要來(lái)選定D/AD/A轉(zhuǎn)換器的位數(shù)。轉(zhuǎn)換器的位數(shù)。Tankertanker Design(2 2)建立時(shí)間)建立時(shí)間 描述D/A轉(zhuǎn)換器轉(zhuǎn)換快慢轉(zhuǎn)換快慢的一
34、個(gè)參數(shù),用于表明轉(zhuǎn)換表明轉(zhuǎn)換時(shí)間或轉(zhuǎn)換速度時(shí)間或轉(zhuǎn)換速度。其值為從輸入數(shù)字量到輸出達(dá)到終值誤差(1/2)LSB時(shí)所需的時(shí)間。 電流輸出型電流輸出型DACDAC的轉(zhuǎn)換時(shí)間較短較短,而電壓輸出電壓輸出的轉(zhuǎn)換器,由于要加上完成I-V轉(zhuǎn)換的運(yùn)算放大器的延遲時(shí)間,因此轉(zhuǎn)換時(shí)間要長(zhǎng)一些轉(zhuǎn)換時(shí)間要長(zhǎng)一些??焖貲/A轉(zhuǎn)換器的轉(zhuǎn)換時(shí)間可控制在1s以下。Tankertanker Design(3 3)轉(zhuǎn)換精度)轉(zhuǎn)換精度理想情況下,轉(zhuǎn)換精度與分辨率基本一致,位數(shù)越多精度越高。但由于電源電壓、基準(zhǔn)電壓、電阻、制造工藝等各種因素存在著誤差。嚴(yán)格講,轉(zhuǎn)換精度與分辨率并不完全一轉(zhuǎn)換精度與分辨率并不完全一致致。只要位數(shù)相同,
35、分辨率則相同,但相同位數(shù)的不同轉(zhuǎn)但相同位數(shù)的不同轉(zhuǎn)換器換器轉(zhuǎn)換精度轉(zhuǎn)換精度會(huì)有所不同會(huì)有所不同。例如,例如,某種型號(hào)的8位DAC精度為0.19%,而另一種型號(hào)的8位DAC精度為0.05%。Tankertanker Design3.(電流輸出型)D/A轉(zhuǎn)換器的工作原理 目前常用的D/A轉(zhuǎn)換器是由型電阻網(wǎng)絡(luò)型電阻網(wǎng)絡(luò)構(gòu)成的。RVIREF 總電流總電流分支電流分支電流2iniIIRRVDDDDVIREFREFnininiiniiniiiDDIDI256)2222(001166771010100122轉(zhuǎn)換電流轉(zhuǎn)換電流I01轉(zhuǎn)換電流與“邏輯開(kāi)關(guān)”為1的各支路電流的總和成正比,即與與D0D7口輸入口輸入的
36、二進(jìn)制數(shù)成正比的二進(jìn)制數(shù)成正比。 Tankertanker Design轉(zhuǎn)換電壓轉(zhuǎn)換電壓DAC0832外接放大器反饋電阻即,轉(zhuǎn)換電壓正比于待轉(zhuǎn)換的二進(jìn)制數(shù)和參考電壓轉(zhuǎn)換電壓正比于待轉(zhuǎn)換的二進(jìn)制數(shù)和參考電壓256256) 256)1222(222(006677006677VVDDDRVDDDRIVREFREFfbREFBRfbooTankertanker Design當(dāng)輸入數(shù)據(jù)D7D0 為11111111B 時(shí),有Tankertanker Design11.2.2 STC89C52與8位D/A轉(zhuǎn)換器DAC0832的接口設(shè)計(jì)1.DAC0832芯片-電流輸出型D/A轉(zhuǎn)換器8 8位并行輸入方式位并行輸
37、入方式分辨率分辨率19.5mV (VREF = 5V19.5mV (VREF = 5V) 電流建立時(shí)間電流建立時(shí)間S S 輸入與輸入與TTLTTL電平兼容電平兼容 單一電源供電(單一電源供電(5V5V15V15V) 低功耗,低功耗,20m20mw wTankertanker Design引腳功能:引腳功能:DI0DI0DI7DI7:8 8位數(shù)字信號(hào)輸入端,位數(shù)字信號(hào)輸入端,與單片機(jī)的數(shù)據(jù)總線與單片機(jī)的數(shù)據(jù)總線P0P0口相連口相連,用于接收單片機(jī)送來(lái)的待轉(zhuǎn)換為模擬量的數(shù)字量,用于接收單片機(jī)送來(lái)的待轉(zhuǎn)換為模擬量的數(shù)字量,DI7DI7為最高位。為最高位。 :片選端,為低電平時(shí),本芯片被選中。片選端,
38、為低電平時(shí),本芯片被選中。ILEILE:數(shù)據(jù)鎖存允許控制端,高電平有效。數(shù)據(jù)鎖存允許控制端,高電平有效。 : :第一級(jí)輸入寄存器寫(xiě)選通控制,低電平有效。當(dāng)?shù)谝患?jí)輸入寄存器寫(xiě)選通控制,低電平有效。當(dāng) =0 =0,ILE=1ILE=1, =0=0時(shí),待轉(zhuǎn)換的數(shù)據(jù)信號(hào)被鎖存到時(shí),待轉(zhuǎn)換的數(shù)據(jù)信號(hào)被鎖存到第一級(jí)第一級(jí)8 8位輸入寄存器中。位輸入寄存器中。CSWR1CSWR1Tankertanker Design :數(shù)據(jù)傳送控制,低電平有效。數(shù)據(jù)傳送控制,低電平有效。 :DACDAC寄存器寫(xiě)選通控制端,低電平有效。當(dāng)寄存器寫(xiě)選通控制端,低電平有效。當(dāng) =0, =0=0時(shí),輸入寄存器中待轉(zhuǎn)換的數(shù)據(jù)傳入時(shí),
39、輸入寄存器中待轉(zhuǎn)換的數(shù)據(jù)傳入8 8位位DACDAC寄存器中。寄存器中。IOUT1:D/AD/A轉(zhuǎn)換器電流輸出轉(zhuǎn)換器電流輸出1 1端,輸入數(shù)字量全為端,輸入數(shù)字量全為“1 1”時(shí),時(shí),IOUT1最大,最大,輸入數(shù)字量全為輸入數(shù)字量全為“0 0”時(shí),時(shí),I IOUT1OUT1最小。最小。IOUT2:D/AD/A轉(zhuǎn)換器電流輸出轉(zhuǎn)換器電流輸出2 2端,端,I IOUT2OUT2+ I+ IOUT1OUT1 = = 常數(shù)。常數(shù)。Rfb:外部反饋信號(hào)輸入端,內(nèi)部已有反饋電阻外部反饋信號(hào)輸入端,內(nèi)部已有反饋電阻R Rfbfb,根據(jù)需要也可外,根據(jù)需要也可外接反饋電阻。接反饋電阻。VCC:電源輸入端,在電源輸
40、入端,在+5V+5V+15V+15V范圍內(nèi)。范圍內(nèi)。XFER2WRXFER2WRTankertanker DesignDAC0832的結(jié)構(gòu)內(nèi)部組成:內(nèi)部組成:1個(gè)個(gè)8位輸入鎖存器位輸入鎖存器1個(gè)個(gè)8位位DAC寄存器寄存器1個(gè)個(gè)8位位D/A轉(zhuǎn)換器轉(zhuǎn)換器5個(gè)控制邏輯(個(gè)控制邏輯(2級(jí)控制級(jí)控制)工作過(guò)程工作過(guò)程:8位數(shù)據(jù)并行送入鎖存器位數(shù)據(jù)并行送入鎖存器在在第第1級(jí)級(jí)控制信號(hào)作用下進(jìn)入寄存器控制信號(hào)作用下進(jìn)入寄存器在在第第2級(jí)級(jí)控制信號(hào)控制信號(hào)作用下進(jìn)入轉(zhuǎn)換器作用下進(jìn)入轉(zhuǎn)換器轉(zhuǎn)換結(jié)果由轉(zhuǎn)換結(jié)果由Iout1電流輸出。電流輸出。Tankertanker DesignDAC0832的3種控制方式直通方式
41、直通方式 兩個(gè)寄存器都處于直通狀態(tài)兩個(gè)寄存器都處于直通狀態(tài)直通方式不能直接與系統(tǒng)的數(shù)據(jù)總線相連,需另加鎖存器,故較少應(yīng)直通方式不能直接與系統(tǒng)的數(shù)據(jù)總線相連,需另加鎖存器,故較少應(yīng)用。用。單緩沖方式單緩沖方式 一個(gè)寄存器處于直通,另一個(gè)處于受控狀態(tài)一個(gè)寄存器處于直通,另一個(gè)處于受控狀態(tài)雙緩沖方式雙緩沖方式 兩個(gè)寄存器都分別處于受控狀態(tài)兩個(gè)寄存器都分別處于受控狀態(tài)Tankertanker Design電路采用I/O口方式接線,直通控制方式4個(gè)控制端都接低電平,ILE接高電平。數(shù)字量一旦輸入,就直接進(jìn)入DAC寄存器,進(jìn)行D/A轉(zhuǎn)換。直通控制方式直通控制方式-兩個(gè)寄存器都處于直通狀態(tài)兩個(gè)寄存器都處于直
42、通狀態(tài)2STC89C52與DAC0832的接口Tankertanker Design單緩沖方式單緩沖方式-內(nèi)部的兩個(gè)數(shù)據(jù)緩沖器有一個(gè)處于直通內(nèi)部的兩個(gè)數(shù)據(jù)緩沖器有一個(gè)處于直通方式,另一個(gè)處于受單片機(jī)控制的鎖存方式。方式,另一個(gè)處于受單片機(jī)控制的鎖存方式。在實(shí)際應(yīng)用中,如果只有一路模擬量輸出,或雖是多路模擬量輸出但并不要求多路輸出同步的情況下,可采用單緩沖方式。 DAC0832單緩沖方式接口單極性輸出 的正負(fù)極性由VREF的極性確定。Tankertanker Design 圖中ILE接5V,IOUT2接地,IOUT1輸出電流經(jīng)運(yùn)算放大器變換后輸出單極性電壓,范圍為05V。 DAC0832的“8位DAC寄存器”工作于直通方式。“8位輸入寄存器”處于受控狀態(tài),由P2.7來(lái)控制。當(dāng)單片機(jī)執(zhí)行如下指令就可在 和 上產(chǎn)生低電平,使DAC0832接收STC89C52送來(lái)的數(shù)字量。 MOV DPTR,#7FFFH MOV A,#data MOVXDPTR,ACS1WRTankertanker Design【例11-2】 DAC0832用作波形發(fā)生器。寫(xiě)出產(chǎn)生三角波和矩形波的程序。Tankerta
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度金融科技軟件開(kāi)發(fā)保密合同
- 2025年度競(jìng)業(yè)協(xié)議補(bǔ)償金標(biāo)準(zhǔn)及競(jìng)業(yè)限制期限調(diào)整通知合同
- 二零二五年度解除老舊小區(qū)租賃合同協(xié)議范本
- 2025年度環(huán)保材料研發(fā)股份認(rèn)購(gòu)協(xié)議書(shū)合同
- 2025年度合同封面圖片原創(chuàng)設(shè)計(jì)及品牌合作合同
- 2025年度汽車(chē)零部件采購(gòu)合同解除協(xié)議
- 二零二五年度2025年度高新技術(shù)企業(yè)貸款連帶責(zé)任保證擔(dān)保合同
- 2025年度餐飲行業(yè)餐飲服務(wù)員職業(yè)安全保障合同
- 二零二五年度水電裝修與智能家居安防系統(tǒng)合同
- 二零二五年度版股東購(gòu)銷(xiāo)合同:智能家電研發(fā)與市場(chǎng)推廣合作合同
- LED燈箱安裝制作及施工方案
- 混凝土澆筑申請(qǐng)表
- 山丹丹開(kāi)花紅艷艷教案
- 中風(fēng)后認(rèn)知障礙中醫(yī)臨床路徑
- 罌粟湯_朱氏集驗(yàn)方卷十_方劑加減變化匯總
- 《我相信---楊培安》歌詞-勵(lì)志歌曲
- 做一個(gè)幸福班主任
- 初中班主任案例分析4篇
- 公司7s管理組織實(shí)施方案
- Q∕GDW 12147-2021 電網(wǎng)智能業(yè)務(wù)終端接入規(guī)范
- 仁愛(ài)英語(yǔ)單詞默寫(xiě)本(全六冊(cè))英譯漢
評(píng)論
0/150
提交評(píng)論