<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 如何利用乘法DAC和運算放大器提供可編程增益

          如何利用乘法DAC和運算放大器提供可編程增益

          作者: 時間:2013-10-16 來源:網(wǎng)絡(luò) 收藏

          電路功能與優(yōu)勢

          本電路利用乘法提供增益功能。最大增益值和溫度系數(shù)由外部電阻設(shè)置,增益的分辨率由的分辨率設(shè)置。

          如何利用乘法DAC和運算放大器提供可編程增益

          圖1:采用電流輸出增益電路(原理示意圖)

          電路描述

          圖1所示電路就是推薦用來提高電路增益的方法。R1、R2和R3應(yīng)具有相似的溫度系數(shù),但不必與DAC的溫度系數(shù)相匹配。在要求增益大于1的電路中,推薦使用這種方法。增益為:

          VOUT = ?Gain × VIN × (D/2N)

          其中D為載入DAC數(shù)字字的小數(shù)表示,n為位數(shù): D = 0 to 255 (8位 AD5426); D = 0 to 1023 (10位 AD5432); and D = 0 to 4095 (12位 AD5443)。該電路的主要優(yōu)勢就是能夠解決增益溫度系數(shù)誤差問題。外部電阻的溫度系數(shù)需要匹配,但不必與DAC梯形電阻的溫度系數(shù)相匹配。

          之所以需要電阻R1,是因為R1加上DAC的輸入阻抗必須等于總反饋電阻,即RFB + R2||R3。DAC的輸入阻抗為RFB,因此

          R1 + RFB = RFB + R2||R3

          R1 = R2||R3

          R1和R2的值必須適當(dāng)選擇,這樣對于給定的電源電壓,輸出電壓才不會超過的輸出范圍。另外還應(yīng)注意,的偏置電流乘以總反饋電阻(RFB + R2||R3),即可產(chǎn)生相應(yīng)的失調(diào)電壓。因此,R1和R2的值不能太大,否則將對總輸出失調(diào)電壓產(chǎn)生顯著影響。

          運算放大器的輸入失調(diào)電壓要乘以電路的可變增益(由于存在DAC的代碼相關(guān)輸出阻抗)。由于放大器的輸入電壓出現(xiàn)失調(diào),因而兩個相鄰數(shù)字小數(shù)之間的噪聲增益變化會使輸出電壓產(chǎn)生步進變化。此輸出電壓變化與兩個代碼間所需的輸出變化相疊加,引起差分線性誤差;如果該誤差足夠大,可能會導(dǎo)致DAC非單調(diào)。AD8065 借助其低輸入失調(diào)電壓和低偏置電流特性可解決這一問題。

          常見變化

          OP1177 是另一款適合該電流電壓轉(zhuǎn)換電路的優(yōu)秀運算放大器,它同樣具有低失調(diào)電壓和超低偏置電流特性。至于基準(zhǔn)電壓的選擇,輸入電壓會受所選運算放大器的軌到軌電壓限制,增益則同樣由電阻R2和R3設(shè)置。



          關(guān)鍵詞: DAC 運算放大器 可編程

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();