單片機實現(xiàn)低成本A/D轉(zhuǎn)換
(3)電阻、電容不穩(wěn)定導致的誤差:當電阻R1、R2或電容C1的值發(fā)生變化時,也會使C1電容的電壓上升至門嵌電壓時間發(fā)生變化,這也將影響A/D轉(zhuǎn)換結果。
(4)單片機I/O腳的輸入阻抗:如果單片機的I/O腳輸入阻抗較低,相當于使RC值發(fā)生變化,也會影響A/D轉(zhuǎn)換結果。
(5)單片機的門嵌電壓:對于不同的單片機,其門嵌電壓可能略有相同,這也會導致測量誤差。
A/D轉(zhuǎn)換誤差的解決辦法:
(1)對VDD造成的誤差,只能通過提高VDD電壓精度來解決,VDD的電壓最好能穩(wěn)定在2%范圍內(nèi),普通的7805就有2%的穩(wěn)壓精度。
(2)對單片機內(nèi)部的定時器產(chǎn)生的誤差,可以增加RC值,從而使C1電容上電壓上升時間延長,計數(shù)器測得的值較大,誤差會較小。不過R值若太大,受I/O口輸入阻抗影響也會較大。
(3)R1、C1選用精度較高較穩(wěn)定的電阻、電容,或增加一個微調(diào)電阻器來解決。
(4)若單片機I/O腳輸入阻抗較低,可以減小R1、R2電阻,增加C1電容來解決。
4、A/D轉(zhuǎn)換速度及提高辦法:
由于該A/D轉(zhuǎn)換是通過被測值經(jīng)過一個電阻對電容充電使電壓到達門嵌電壓后測量充電時間來得到A/D轉(zhuǎn)換值的,因此其A/D轉(zhuǎn)換速度會比較慢,它適用于對A/D轉(zhuǎn)換速度要求不高的產(chǎn)品中,其A/D轉(zhuǎn)換速度取決于以下幾個方面:
(1)RC值:當RC值太大時,測量速度會較慢,減小RC值可以提高A/D轉(zhuǎn)換速度,但由于計數(shù)時間較短,測量誤差會增大。
(2)被測電壓值的大小:由于C1上的電壓U是由小到大逐漸加大的,當被測電壓值較小時,U電壓上升到門嵌值的時間就越長,完成A/D轉(zhuǎn)換的速度就越慢。反之被測電壓越高,測量速度越快。
由上所述,A/D轉(zhuǎn)換的速度可以通過減小RC值來提高。若單片機帶有外部電平變換中斷,其A/D轉(zhuǎn)換的精度還可以得到提高。
5、輸入電壓的測量范圍:
A/D轉(zhuǎn)換的輸入電壓測量范圍為單片機門嵌電壓至單片機的電源電壓(VDD),若需要提高被測電壓范圍,可將輸入電壓通過電阻分壓后進行測量,但其A/D轉(zhuǎn)換的誤差會受分壓電阻影響。
6、單片機的A/D轉(zhuǎn)換應用實例:
下圖為采用PIC12C508實現(xiàn)A/D轉(zhuǎn)換的應用實例,圖中用4個發(fā)光二極管來作相應的電壓值范圍指示。其電壓測量范圍為1.4V至2.55V,其測量精度為10mV。
該應用實例與原程序可參考MICROCHIP公司的單片機應用筆記,該文件可從MICROCHIP網(wǎng)站上下載。
評論