ADC(Analogue to Digital Converter)
模數(shù)轉換器(analog to Digital Converter,簡稱ADC)是一種數(shù)據(jù)轉換器,它通過將模擬信號編碼為二進制代碼,使數(shù)字電路能夠與現(xiàn)實世界進行接口。
模數(shù)轉換器(adc)允許微處理器控制電路,Arduinos,樹莓派和其他此類數(shù)字邏輯電路與現(xiàn)實世界通信。在現(xiàn)實世界中,模擬信號具有不斷變化的值,這些值來自各種來源和傳感器,可以測量聲音,光,溫度或運動,許多數(shù)字系統(tǒng)通過測量來自這些傳感器的模擬信號與環(huán)境相互作用。
雖然模擬信號可以連續(xù)并提供無限多個不同的電壓值,但另一方面,數(shù)字電路可以處理只有兩個離散狀態(tài)的二進制信號,即邏輯“1”(HIGH)或邏輯“0”(LOW)。因此,需要一種能夠在連續(xù)變化的模擬信號和離散數(shù)字信號這兩個不同域之間進行轉換的電子電路,這就是模數(shù)轉換器(A/D)的作用。
基本上,模數(shù)轉換器在某一時刻獲取模擬電壓的快照,并產(chǎn)生表示該模擬電壓的數(shù)字輸出代碼。用于表示該模擬電壓值的二進制數(shù)字或位的數(shù)量取決于A/D轉換器的分辨率。
例如,4位ADC的分辨率為1 / 15(2^4 - 1),而8位ADC的分辨率為1 / 255(2^8 - 1)。因此,模擬數(shù)字轉換器接收未知的連續(xù)模擬信號并將其轉換為2^n位的“n”位二進制數(shù)。
但首先讓我們提醒自己模擬(或模擬)信號和數(shù)字信號之間的區(qū)別,如下所示:
模擬和數(shù)字信號
在這里我們可以看到,當電位器的雨刷端在0伏和VMAX之間旋轉時,它產(chǎn)生一個連續(xù)的輸出信號(或電壓),相對于雨刷位置有無限個輸出值。當電位器雨刷器從一個位置調(diào)整到下一個位置時,兩個電壓水平之間沒有突然或階躍變化,從而產(chǎn)生連續(xù)可變的輸出電壓。模擬信號的例子包括溫度、壓力、液位和光強度。
對于數(shù)字電路,電位器刮水器已被單個旋轉開關所取代,該開關依次連接到串聯(lián)電阻鏈的每個結,形成一個基本的電位分壓器網(wǎng)絡。當開關從一個位置(或節(jié)點)旋轉到下一個輸出電壓時,VOUT以離散和獨特的電壓階躍快速變化,每個開關動作或步驟表示1.0伏的倍數(shù),如圖所示。
例如,輸出電壓將是2伏,3伏,5伏等,而不是2.5V, 3.1V或4.6V。通過使用多位置開關和增加電位分壓器網(wǎng)絡內(nèi)的電阻元件的數(shù)量,從而增加離散開關步驟的數(shù)量,可以很容易地產(chǎn)生更精細的輸出電壓水平。
然后我們可以看到,模擬信號和數(shù)字信號之間的主要區(qū)別是,“模擬”量是隨時間連續(xù)變化的,而“數(shù)字”量是離散的(一步一步)值?!暗汀钡健案摺被颉案摺钡健暗汀薄D敲?,我們?nèi)绾螌⒁粋€具有無限數(shù)值的連續(xù)變化的信號轉換為具有不同數(shù)值或階躍的信號,以供數(shù)字電路使用呢?
模數(shù)轉換器
采用模擬電壓信號并將其轉換為等效數(shù)字信號的過程可以通過許多不同的方式完成,雖然有許多模數(shù)轉換器芯片,如各種制造商提供的ADC08xx系列,但可以使用分立元件構建簡單的ADC。
一種簡單易行的方法是使用并行編碼,也稱為閃變、同步或多個比較器轉換器,其中比較器用于檢測不同的電壓水平,并將其開關狀態(tài)輸出到編碼器。
并行的“Flash”A/D轉換器使用一系列互連但間隔相等的比較器和電壓參考,這些比較器和電壓參考由一系列精密電阻網(wǎng)絡產(chǎn)生,用于生成特定n位分辨率的等效輸出代碼。
并聯(lián)或閃存轉換器的優(yōu)點是它們構造簡單,并且不需要任何定時時鐘,因為在將模擬電壓施加到比較器輸入的瞬間,它與參考電壓進行比較。考慮下面的比較器電路。
比較器電路
一種模擬比較器,如LM339N,它有兩個模擬輸入,一個正一個負,可以用來比較兩個不同電壓水平的幅度。
電壓輸入(VIN)信號應用于比較器的一個輸入,而參考電壓(VREF)應用于另一個輸入。對比較器輸入端的兩個電壓電平進行比較,以確定比較器的數(shù)字邏輯輸出狀態(tài),即“1”或“0”。
參考電壓,VREF與輸入電壓比較,VIN應用于另一個輸入。對于LM339比較器,如果輸入電壓小于參考電壓,(VIN < VREF)輸出為“OFF”,如果大于參考電壓,(VIN > VREF)輸出為“ON”。因此,比較器比較兩個電壓水平并確定兩者中哪一個更高。
在上面的簡單示例中,VREF是由R1和R2設置的分壓器網(wǎng)絡獲得的。如果兩個電阻相等,即R1 = R2,那么很明顯,參考電壓電平將等于電源電壓的一半,即V/2。因此,對于具有開路集電極輸出的比較器,如果VIN小于V/2,則輸出為高電平,如果VIN大于V/2,則輸出為低電平,作為1位ADC。
但是,通過向分壓器網(wǎng)絡添加更多的電阻,我們可以有效地將電源電壓“除以”由電阻的電阻決定的量。然而,我們在分壓器網(wǎng)絡中使用的電阻器越多,需要的比較器就越多。
一般來說,轉換“n”位二進制輸出需要2^n - 1個比較器,其中“n”通常在8到16的范圍內(nèi)。在我們上面的例子中,單比特ADC使用21 - 1(等于“1”)比較器來確定VIN是否大于或小于V/2參考電壓。
如果我們現(xiàn)在創(chuàng)建一個2位ADC,那么我們將需要22 - 1,這是“3”比較器,因為我們需要四個不同的電壓電平,對應于4到2位編碼器電路所需的4個數(shù)字值,如圖所示。
2位模擬數(shù)字轉換電路
這將為模擬輸入的所有四個可能值提供一個2位輸出代碼:
式中:“X”為“不關心”,即邏輯“0”或邏輯“1”條件。那么這個模數(shù)轉換器是如何工作的呢?為了使A/D轉換器有用,它必須產(chǎn)生模擬輸入信號的有意義的數(shù)字表示。在這個簡單的2位ADC示例中,為了簡單起見,我們假設輸入電壓VIN在0到4伏之間,因此將VREF和電阻分壓器網(wǎng)絡設置為在每個電阻上降低1伏。
當VIN介于0和1伏之間時,(<1V)三個比較器的輸入將小于參考電壓,因此它們的輸出將為LOW,編碼器將在引腳Q0和Q1上輸出二進制零(00)條件。當VIN增加并超過1伏但小于2伏時,(1V
注意,像TTL 74LS148這樣的優(yōu)先級編碼器為每個單獨的輸入分配一個優(yōu)先級級別。優(yōu)先級編碼器輸出對應于具有最高優(yōu)先級的當前活動輸入。因此,當具有較高優(yōu)先級的輸入(D1與D0相比)存在時,所有其他具有較低優(yōu)先級的輸入將被忽略。因此,如果同時在邏輯級別“1”上有兩個或兩個以上的輸入,則D0和D1上的實際輸出代碼將只對應指定優(yōu)先級最高的輸入。
所以現(xiàn)在當VIN增加到2伏以上時,下一個參考電壓水平,比較器U2檢測到變化并產(chǎn)生高輸出。但由于輸入D2比輸入D0或D1具有更高的優(yōu)先級,因此優(yōu)先編碼器輸出二進制“2”(10)碼,以此類推,當VIN超過3伏時,產(chǎn)生二進制“3”(11)碼輸出。顯然,當VIN在每個參考電壓水平之間降低或變化時,每個比較器將輸出一個HIGH或LOW條件到編碼器,編碼器反過來產(chǎn)生一個相對于VIN在00到11之間的2位二進制代碼。
這一切都很好,但是優(yōu)先編碼器不能作為4到2位設備使用,如果我們使用商用的編碼器,如TTL 74LS148或其CMOS 4532等效的8位設備,則不會使用六個二進制位。但是一個簡單的編碼器電路可以用數(shù)字前或門和信號二極管矩陣制成,如圖所示。
使用二極管的2位ADC
這里比較器的輸出在被饋送到二極管之前使用異或門進行編碼。兩個外部下拉電阻用于輸出和地(0V),以確保低狀態(tài),并在二極管反向偏置時阻止輸出浮動。
因此,與前面的電路一樣,取決于VIN的值確定哪個比較器產(chǎn)生輸出信號HIGH(或LOW)到產(chǎn)生高輸出的異或門,如果一個輸入或另一個輸入是HIGH,但不是兩個,(布爾表達式是Q = A.B + A.B)。這些前或門也可以使用組合邏輯與或與非門來構建。
這兩種4對2轉換器設計的問題是,這個簡單的2位A/D轉換器的分辨率是1伏,因為正如我們所看到的,VIN處的模擬輸入電壓必須改變1伏特才能使編碼器改變其輸出代碼。提高輸出分辨率的一種方法是使用更多的比較器將其增加到3位a /D轉換器。
3位模數(shù)轉換器
上面的并行ADC將0到3伏范圍內(nèi)的模擬輸入電壓轉換為2位二進制代碼。由于3位數(shù)字邏輯系統(tǒng)可以產(chǎn)生2^3 = 8個不同的數(shù)字輸出,因此模擬輸入電壓可以與8個參考電壓電平進行比較,每個電壓電平等于參考電壓的八分之一(V/8)。因此,我們現(xiàn)在可以測量0.5(4/8)伏的分辨率,并且需要23 - 1比較器來輸出在000(0)和111(7)之間的3位二進制代碼,如圖所示。
3位模擬數(shù)字轉換電路
這將為模擬輸入的所有八個可能值提供一個3位輸出代碼:
這里“X”是一個“不關心”,這是一個邏輯“0”或邏輯“1”的輸入條件。然后我們可以看到,通過增加ADC的分辨率,不僅增加了輸出二進制位的數(shù)量,而且增加了比較器的數(shù)量和所需的電壓水平。
因此,4位分辨率需要15個(2^4 - 1)比較器,8位分辨率需要255個(2^8 - 1)比較器,而10位模數(shù)轉換器需要1023個比較器,等等。因此,對于這種類型的模數(shù)轉換器電路,輸出位數(shù)要求越高,電路就越復雜。
然而,這種類型的并行或閃存A/D轉換器的優(yōu)點是它的實時轉換率相對較快,如果只需要幾個二進制位就可以在數(shù)字顯示器上產(chǎn)生讀出來顯示模擬輸入信號的電壓值,則可以很容易地作為項目的一部分構建。
除了從傳感器或換能器獲取模擬輸入信號并使用模數(shù)轉換器將其轉換為數(shù)字二進制代碼作為輸入接口電路的一部分外,我們還可以使用數(shù)模轉換器將二進制代碼轉換為等效的模擬量,用于輸出接口以控制電機或執(zhí)行器,或通常用于音頻應用。
評論
查看更多