Cortex-M3學(xué)習(xí)日志(六)-- ADC實(shí)驗(yàn)
1、積分型ADC(如TLC7135)
本文引用地址:http://2s4d.com/article/201611/319431.htm積分型ADC工作原理是將輸入電壓轉(zhuǎn)換成時(shí)間(脈沖寬度信號(hào))或頻率(脈沖頻率),然后由定時(shí)器/計(jì)數(shù)器獲得數(shù)字值。其優(yōu)點(diǎn)是用簡(jiǎn)單電路就能獲得高分辨率,但缺點(diǎn)是由于轉(zhuǎn)換精度依賴于積分時(shí)間,因此轉(zhuǎn)換速率極低。初期的單片AD轉(zhuǎn)換器大多采用積分型,現(xiàn)在逐次比較型已逐步成為主流。
2、逐次比較型ADC(如TLC0831)
逐次比較型AD由一個(gè)比較器和DA轉(zhuǎn)換器通過(guò)逐次比較邏輯構(gòu)成,從MSB開(kāi)始,順序地對(duì)每一位將輸入電壓與內(nèi)置DA轉(zhuǎn)換器輸出進(jìn)行比較,經(jīng)n次比較而輸出數(shù)字值。其電路規(guī)模屬于中等。其優(yōu)點(diǎn)是速度較高、功耗低,在分辨率較低(<12位)時(shí)價(jià)格便宜,但高精度(>12位)時(shí)價(jià)格很高。
3、并行比較型/串并行比較型ADC(如TLC5510)
并行比較型AD采用多個(gè)比較器,僅作一次比較而實(shí)行轉(zhuǎn)換,又稱(chēng)Flash(快速)型。由于轉(zhuǎn)換速率極高,n位的轉(zhuǎn)換需要2n-1個(gè)比較器,因此電路規(guī)模也極大,價(jià)格也高,只適用于視頻AD轉(zhuǎn)換器等速度特別高的領(lǐng)域。
串并行比較型AD結(jié)構(gòu)上介于并行型和逐次比較型之間,最典型的是由2個(gè)n/2位的并行型AD轉(zhuǎn)換器配合DA轉(zhuǎn)換器組成,用兩次比較實(shí)行轉(zhuǎn)換,所以稱(chēng)為Half flash(半快速)型。還有分成三步或更多步實(shí)現(xiàn)AD轉(zhuǎn)換的叫做分級(jí)(Multistep/Subrangling)型AD,而從轉(zhuǎn)換時(shí)序角度又可稱(chēng)為流水線(Pipelined)型AD,現(xiàn)代的分級(jí)型AD中還加入了對(duì)多次轉(zhuǎn)換結(jié)果作數(shù)字運(yùn)算而修正特性等功能。這類(lèi)AD速度比逐次比較型高,電路規(guī)模比并行型小。
4、Σ-Δ(Sigma?/FONT>delta)調(diào)制型ADC(如AD7705)
Σ-Δ型AD由積分器、比較器、1位DA轉(zhuǎn)換器和數(shù)字濾波器等組成。原理上近似于積分型,將輸入電壓轉(zhuǎn)換成時(shí)間(脈沖寬度)信號(hào),用數(shù)字濾波器處理后得到數(shù)字值。電路的數(shù)字部分基本上容易單片化,因此容易做到高分辨率。主要用于音頻和測(cè)量。
5、電容陣列逐次比較型ADC
電容陣列逐次比較型AD在內(nèi)置DA轉(zhuǎn)換器中采用電容矩陣方式,也可稱(chēng)為電荷再分配型。一般的電阻陣列DA轉(zhuǎn)換器中多數(shù)電阻的值必須一致,在單芯片上生成高精度的電阻并不容易。如果用電容陣列取代電阻陣列,可以用低廉成本制成高精度單片AD轉(zhuǎn)換器。最近的逐次比較型AD轉(zhuǎn)換器大多為電容陣列式的。
6、壓頻變換型ADC(如AD650)
壓頻變換型(Voltage-Frequency Converter)是通過(guò)間接轉(zhuǎn)換方式實(shí)現(xiàn)模數(shù)轉(zhuǎn)換的。其原理是首先將輸入的模擬信號(hào)轉(zhuǎn)換成頻率,然后用計(jì)數(shù)器將頻率轉(zhuǎn)換成數(shù)字量。從理論上講這種AD的分辨率幾乎可以無(wú)限增加,只要采樣的時(shí)間能夠滿足輸出頻率分辨率要求的累積脈沖個(gè)數(shù)的寬度。其優(yōu)點(diǎn)是分辨率高、功耗低、價(jià)格低,但是需要外部計(jì)數(shù)電路共同完成AD轉(zhuǎn)換。
DAC的內(nèi)部電路構(gòu)成無(wú)太大差異,一般按輸出是電流還是電壓、能否作乘法運(yùn)算等進(jìn)行分類(lèi)。大多數(shù)DAC由電阻陣列和多個(gè)電流開(kāi)關(guān)(或電壓開(kāi)關(guān))構(gòu)成。按數(shù)字輸入值切換開(kāi)關(guān),產(chǎn)生比例于輸入的電流(或電壓)
1
2
3
4
選用ADC時(shí)要注意這幾個(gè)參數(shù):取樣與保持時(shí)間、量化與編碼方式、分辨率、轉(zhuǎn)換誤差、轉(zhuǎn)換時(shí)間、絕對(duì)精準(zhǔn)度、相對(duì)精準(zhǔn)度等。
1、取樣與保持
由于取樣時(shí)間極短,取樣輸出為一串?dāng)嗬m(xù)的窄脈沖。要把每個(gè)取樣的窄脈沖信號(hào)數(shù)字化,是需要一定的時(shí)間。
2、量化與編碼
量化與編碼
(1)只舍去不進(jìn)位
(2)有舍去有進(jìn)位
指A/D轉(zhuǎn)換器所能分辨的最小模擬輸入量。通常用轉(zhuǎn)換成數(shù)字量的位數(shù)來(lái)表示,如8-bit,10-bit,12-bit與16-bit等。位數(shù)越高,分辨率越高。若小于最小變化量的輸入模擬電壓的任何變化,將不會(huì)引起輸出數(shù)字值的變化。采用12-bit
4、轉(zhuǎn)換誤差
通常以相對(duì)誤差的形式輸出,其表示A/D轉(zhuǎn)換器實(shí)際輸出數(shù)字值與理想輸出數(shù)字值的差別,并用最低有效位LSB的倍數(shù)表示。
5、轉(zhuǎn)換時(shí)間
轉(zhuǎn)換時(shí)間是A/D轉(zhuǎn)換完成一次所需的時(shí)間。從啟動(dòng)信號(hào)開(kāi)始到轉(zhuǎn)換結(jié)束并得到穩(wěn)定的數(shù)字輸出值為止的時(shí)間間隔。轉(zhuǎn)換時(shí)間越短則轉(zhuǎn)換速度就越快。
6、精準(zhǔn)度
對(duì)于A/D轉(zhuǎn)換器,精準(zhǔn)度指的是在輸出端產(chǎn)生所設(shè)定的數(shù)字?jǐn)?shù)值,其實(shí)際需要的模擬輸入值與理論上要求的模擬輸入值之差。精確度依計(jì)算方式不同,可以區(qū)分為:絕對(duì)精確度與相對(duì)精確度。所謂的絕對(duì)精確度是指實(shí)際輸出值與理論輸出值的接近程度,其相關(guān)的關(guān)系是如下式子所列:
基本上,一個(gè)n-bit的轉(zhuǎn)換器就有n個(gè)數(shù)字輸出位。這種所產(chǎn)生的位數(shù)值是等效于在A/D轉(zhuǎn)換器的輸入端的模擬大小特性值。如果外部所要輸入電壓或是電流量較大的話,所轉(zhuǎn)換后的的位數(shù)值也就較大。
懶貓為了總結(jié)學(xué)過(guò)的東東,翻箱倒塌柜,終于找到了大學(xué)的課本,又在大學(xué)城的圖書(shū)包管里面坐了幾個(gè)小時(shí),當(dāng)然了懶貓不也在網(wǎng)上轉(zhuǎn)了N久,所以呢,以上知識(shí)大部分來(lái)源網(wǎng)絡(luò),懶貓囫圇吞棗的咽進(jìn)了肚里,但大部分也開(kāi)始消化了,嘻嘻……好了,這ADC有知識(shí)先暫時(shí)總結(jié)到這,下面說(shuō)一說(shuō)這次實(shí)驗(yàn)的思路(是思路不是絲路^_^)及電路圖,并簡(jiǎn)單的總結(jié)一下LPC1768內(nèi)部集成的ADC。
LPC1768內(nèi)部集成的是12位主次逼近式的模數(shù)轉(zhuǎn)換器,具有8
1、
2、
3、
4、
5、
6、
關(guān)于這幾個(gè)寄存器的各位代表是什么意思,如何設(shè)置,這里就不總結(jié)了,芯片的數(shù)據(jù)手冊(cè)上寫(xiě)的很清楚,如果你覺(jué)得看英文不舒服可以參考一下周公那公司翻譯的中文版,應(yīng)該對(duì)初學(xué)者有所幫助。下面說(shuō)一下這次實(shí)驗(yàn)的電路圖:
圖
實(shí)驗(yàn)電路很簡(jiǎn)單,就是一個(gè)電位器來(lái)分壓,然后由AD轉(zhuǎn)換器的通道2來(lái)采樣電壓,然后再把采集到的電壓通過(guò)串口0
一、AdcFunc.c源代碼(主要就是與ADC相關(guān)的一些函數(shù))
#include"adc.h"
void AdcInit(void)
{
}
unsigned int AdcConver(void)
{
}
這個(gè)源代碼,主要就是ADC初始化與ADC采樣程序,程序中我已將用到的寄存器都注釋了,對(duì)于初學(xué)者來(lái)說(shuō)應(yīng)該不是太難了,下面貼出主程序的部分代碼:
二、mian.c(主要調(diào)度函數(shù)及應(yīng)用函數(shù))
下面是程序執(zhí)行結(jié)果:
圖
這只是部分代碼,詳細(xì)的源代碼請(qǐng)參考附件。這段代碼是將采集到的數(shù)據(jù)轉(zhuǎn)換成字符發(fā)送到串口顯示,里面沒(méi)有什么復(fù)雜的計(jì)算,都是爛大街的程序,因?yàn)閼胸堃膊皇鞘裁锤呤?,也說(shuō)不出什么高深的理論,只能總結(jié)點(diǎn)簡(jiǎn)單的東西,希望這些簡(jiǎn)單的實(shí)驗(yàn)?zāi)芷鸬綊伌u引玉的作用,讓初學(xué)者盡快能邁入單片機(jī)這扇門(mén),萬(wàn)事開(kāi)頭難,徘徊在門(mén)口的感覺(jué)最不好愛(ài),懶貓也曾彷徨過(guò),也曾無(wú)奈過(guò),也曾痛苦過(guò),也曾抱怨過(guò),但道路雖然崎嶇,只要你堅(jiān)持就能爬到山頂。懶貓深知很多人面對(duì)電子有著莫大的興趣,但卻無(wú)從下手,沒(méi)有高手指導(dǎo),沒(méi)有教材參考,這種感覺(jué)實(shí)在不好愛(ài),所以懶貓有空便會(huì)寫(xiě)下自己的學(xué)習(xí)日志,盡量簡(jiǎn)單,盡量詳細(xì),俗話說(shuō)師傅引進(jìn)門(mén),修行靠個(gè)人,當(dāng)你熬過(guò)陣痛,跨進(jìn)電子這扇門(mén)之后,剩下的事就是發(fā)揮你的聰明才智,努力的創(chuàng)造奇妙的未來(lái)!還是那句老話,學(xué)無(wú)難易,貴在堅(jiān)持!
好了,今天先總結(jié)到這吧,最近手頭上的事有點(diǎn)多,所以自學(xué)的時(shí)間有點(diǎn)緊,學(xué)習(xí)的事推了又推,但不管怎樣,懶貓依然是懶貓,懶貓依然會(huì)堅(jiān)持最初的夢(mèng)想,一直努力的走下去……
評(píng)論