單片機屬于數(shù)字芯片內(nèi)部只有0和1表示的。無法表達一個模擬量。電壓值 模擬量是隨意變化的。數(shù)字量就2種變化沒有變化表示。
如果是一個8位 D/A芯片
1 1 1 1 1 1 1
一、D/A轉換器的原理
工作原理: Vref
工作原理:I0 最后有個2R
有此圖可以看出D7---D0 ) 2的7次方
若Rfb 這塊是一個電壓轉換我們先不管。只要知道就是電流轉成電壓就行了。其實內(nèi)部就是電阻的分流再轉換成電壓產(chǎn)生一個變化的過程。流壓轉換就是一個成正比的關系就很簡單了。好了咱們再看看D/A的性能指標:
1、分辨率
分辨率與輸入數(shù)字量的位數(shù)有確定的關系,可以表示成F/2的N次冪 這個寫不上去 。FS 表示滿量程輸入值,N
為二進制位數(shù)。對于5V 的滿量程,采用8位的DAC時,分辨率為5V/256 = 19.5mv;當采用12位的DAC
時,分辨率為5V/4096 = 1.22mv
.顯然,位數(shù)越多分辨率越高。當然位數(shù)越多對制作芯片的工藝要求越高,轉換時間越慢,呵呵。也是制作上的瓶頸位數(shù)又高轉換還快是相當不容易的,尤其是A/D
2、線性度
線性度(也稱為非線性誤差)是實際轉換特性曲線與理想直線特性之間的最大偏差常以相對于滿量程的百分數(shù)表示。如+/- 1%是指實際輸出值與理論值之差在滿刻度的 +/- 1%以內(nèi)。當然線性度越好,D/A的性能越好。
3、絕對精度和相對精度
絕對精度:(簡稱精度)是指在整個刻度范圍內(nèi),任一輸入數(shù)碼所對應的模擬量實際輸出值與理論值之間的最大誤差。絕度精度是由DAC的增益誤差(當輸入數(shù)碼為全1時,實際輸出值與理想輸出值值之差)、零點誤差(數(shù)碼輸入為全0時,DAC的非零輸出值)、非線性誤差和噪聲等引起的。絕對精度(即最大誤差)應小于1個LSB。
相對精度 :相對精度與絕對精度表示同一個含義,用最大誤差相對于滿刻度的百分比表示。(跟線性度差不多)。
4、建立時間
建立時間是指輸入的數(shù)字量發(fā)生滿刻度變化時,輸出模擬信號達到滿刻度值的+/-
1/2LSB所需的時間。是描述D/A轉換速率的一個動態(tài)指標。(+/- 1/2LSB
電流輸出型DAC的建立時間短。電壓輸出型DAC的建立時間主要決定放大器的響應時間根據(jù)建立時間的長短,可以將DAC分成超高速(<1us)、高速(10~1us)、中速(100~10us)、低速(>= 100 us)幾檔。
DAC0832是使用非常普遍的8位D/A轉換器,由于其片內(nèi)有輸入數(shù)據(jù)寄存器,故可以直接與單片機接口。DAC0832以電流形式輸出,當需要轉換為電壓輸出時,可外接運算放大器。屬于該系列的芯片還有DAC0830/DAC0831,它們可以相互代換。DAC0832主要特性:
- 分辨率8位
- 電流建立時間1us
- 數(shù)據(jù)輸入可采用雙緩沖、單緩沖或直通方式
- 輸出電流線性度可在滿量程下調(diào)節(jié)
- 邏輯電平輸入與TTL電平兼容
- 單一電源供電(+5v
~ +15v) - 低功耗,20mW
目前我這里是直通方式,下圖為DAC0832內(nèi)部結構及引腳
一、單緩沖
當DAC0832芯片的片選信號,寫信號及傳送控制信號的引腳全部接地,允許輸入鎖存信號ILE引腳接+5V時,DAC0832芯片就處于直通工作方式,數(shù)字量一旦輸入,就直接進入DAC寄存器,進行D/A轉換。