玩轉(zhuǎn)單片機(jī)之對(duì)AD轉(zhuǎn)換的理解
自己學(xué)習(xí)的單片機(jī)也有一段時(shí)間了,剛開(kāi)始接觸單片機(jī)的時(shí)候,就總是強(qiáng)調(diào)AD,單片機(jī)自帶AD不,等一些說(shuō)法,但是自己從來(lái)沒(méi)有仔細(xì)想過(guò)AD的過(guò)程,只是知道是將模擬量轉(zhuǎn)化為數(shù)字量,但是不知道這個(gè)采集過(guò)來(lái)的電壓是2.5V,為什么在數(shù)碼管上顯示為2.5V就是轉(zhuǎn)化成數(shù)字量了,現(xiàn)在來(lái)說(shuō)一下自己的理解,只是自己的主觀(guān)理解,不一定準(zhǔn)確!
所謂模擬量很好理解就是模擬
量是指變量在一定范圍連續(xù)變化的量;也就是在一定范圍(定義域)內(nèi)可以取任意值(在值域內(nèi))。數(shù)字量是分立量,而不是連續(xù)變化量,只能取幾個(gè)分立值,如 三位進(jìn)制數(shù)字變量只能取7個(gè)整數(shù)值0.1.2.3.4.5.6.7。
而不是經(jīng)過(guò)AD通道的話(huà),經(jīng)過(guò)的是普通的IO口,那么模擬信號(hào)只會(huì)在引腳上出現(xiàn)兩種數(shù)字結(jié)果,一個(gè)是1一個(gè)是0,而不能比較準(zhǔn)確的描述出模擬量的數(shù)值,模擬量信號(hào)是一種變量信號(hào),比如果0V--10V,或50MA到100MA,開(kāi)關(guān)信號(hào)是一種通斷信號(hào),比如家里的燈開(kāi)關(guān),數(shù)字信號(hào)是一種連續(xù)的開(kāi)關(guān)信號(hào)或高低電平信號(hào),比如1101----高高低高。一連串的信號(hào)代表數(shù)字信號(hào)。
再繼續(xù)說(shuō)一下AD精度的問(wèn)題,8位AD精度的話(huà)就是將這個(gè)滿(mǎn)電壓值分成 2^8=256份,比方說(shuō)51單片機(jī)采集的電壓范圍是0-5v 那么0v對(duì)應(yīng)的是 0 5v對(duì)應(yīng)的是255.
現(xiàn)在再來(lái)講解一下逐次逼近型 ADC的原理。
一、逐次逼近式AD轉(zhuǎn)換器與計(jì)數(shù)式A/D轉(zhuǎn)換類(lèi)似,只是數(shù)字量由“逐次逼近寄存器SAR”產(chǎn)生。SAR使用“對(duì)分搜索法”產(chǎn)生數(shù)字量,以8位數(shù)字量為例,SAR首先產(chǎn)生8位數(shù)字量的一半,即10000000B,試探模擬量Vi的大小,若Vo>Vi,清除最高位,若Vo