一、DAC的基本原理
將輸入數字量變換成模擬量輸出。 基本思路:將輸入的二進制數按其位權的大小先轉換成與之成正比的電流量(I),然后將該電流再轉換成模擬量電壓輸出(V),即D→I,I→V輸出。
實現數字量—模擬量轉換的電路框圖:
D/A轉換特性圖
三位二進制數字量輸入和模擬量輸出的關系:
圖中輸出模擬量的最小增量VLSB表示輸入數字量中最低位為“1”時的模擬電壓大小。
其特點是只有二種電阻阻值,精度可以做得很高;由于運放的反相輸入端為虛地特性,開關切換時流過支路電流不變,只是流向反相端還是流向地端,所以沒有過渡過程,轉換速很快。
由圖可知;網絡部分的總電阻為R,而流過參考電源VREF的總電流為:,而流過每一個節點的電流依次降低一半,即流過每一個支路的電流依次為:。當輸入二進制數的某一位高電平時,對應支路的電流流向反相端,反之流向地。因此流向反相端的電流有:
又因為:,所以輸出電壓有:
輸入為n位數字量時:
當R=Rf時:
這種D/A轉換器的典型產品是AD7520(10位的一片D/A轉換器)
三、正負模擬量輸出的DAC電路
當正負的數字量輸入時,要求有正負的模擬量出。前面我們介紹過,一個正負數可以用補碼表示。因此,一個用補碼輸入的正、負數,如何轉換成正、負輸出的模擬量呢?
現以一個三位二進制補碼為例加以說明,3位二進制補碼可以表示為從+3到-4之間的任何一個十進制整數。
三位二進制補碼輸入時與之對應的偏移碼和D/A轉換器輸出間的關系表:
能得到雙極性輸出電壓的電路如圖,它是將補碼輸入后,最高位求反,并設置了偏移電路來實現雙極型電壓輸出的。
電路說明:當輸入補碼d2d1d0=000,偏移碼=100時,使=0。因此,應調節RB的值,使IB=IMSB=VB/RB,輸出模擬電壓為0。
而在其它數字量輸入的情況下,輸出模擬量有:
,
式中的Imax為偏移碼全為1時的總電流。
對n位的雙極型D/A轉換電路,則有:
輸出模擬電壓為:
四、集成D/A轉換器DAC0832應用舉例
特點:8位分辨率,與8位微機兼容,價格低,接口簡單,轉換控制容易,電路為R-2R T型電阻網絡結構等。
外形和內部電路如圖:
D7~D0是數字量輸入端,VREF外接參考電壓,可正、可負。IO
UT1和IOUT2是電流輸出端,接運算放大器。內部
DAC0832與8031單片機連接電路:
其中,DAC0832的輸入數字量以及轉換所需的各控制信號都來自單片機8031。
電路進行兩路D/A轉換,實現雙緩沖器的同步方式連接。其工作原理如下:CPU的P0口P0~P7分時向DAC0832(1)和DAC0832(2)送出要轉換的數字量,鎖存在各自的輸入鎖存器中,然后CPU同時向兩片DAC0832發出轉換控制信號,使兩個D/A轉換器輸入寄存器中的數據打入DAC寄存器,實現同步轉換輸出模擬量。由于該DAC是電流型輸出,所以,用運放實現I/V轉換,輸出為模擬電壓信號。電路采用二級運放放大。如果參考電壓VREF為正電壓時,第一級運放輸出0~-5V模擬電壓,而第二級輸出-5V~+5V的模擬電壓。
-
dac
+關注
關注
43文章
2291瀏覽量
190980 -
轉換電路
+關注
關注
2文章
205瀏覽量
30472
原文標題:數/模轉換電路(D/A)
文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論