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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 幾乎沒有紋波的快速穩(wěn)定同步PWM-DAC濾波器

          幾乎沒有紋波的快速穩(wěn)定同步PWM-DAC濾波器

          作者:W Stephen Woodward,北卡羅來納州Chapel Hill 時(shí)間:2008-09-03 來源:EDN China 收藏

            一種實(shí)現(xiàn)高分辨率數(shù)模轉(zhuǎn)換的廉價(jià)方法是把輸出與精確模擬電壓參考、開關(guān)、模擬濾波結(jié)合起來(參考文獻(xiàn)1)。然而,-DAC設(shè)計(jì)帶來了一個(gè)很大的問題:如何充分抑制開關(guān)的輸出中不可避免的較大AC紋波分量?當(dāng)人們?yōu)镈AC控制使用典型的16比特外設(shè)時(shí),紋波問題變得特別嚴(yán)重。這類高分辨率PWM功能通常具有很長(zhǎng)的周期,這是因?yàn)?6比特計(jì)時(shí)器和比較器較大的216倒計(jì)數(shù)模。這個(gè)情況導(dǎo)致AC頻率分量?jī)H為100Hz或200Hz,速率低。對(duì)于這類低紋波頻率,如果人們采用普通的模擬低通濾波把紋波抑制在16比特,即-96dB噪聲電平,那么DAC穩(wěn)定時(shí)間就可能變?yōu)橐徽牖蚋L(zhǎng)。

          本文引用地址:http://www.ex-cimer.com/article/87665.htm

            圖1中的電路避免了低通濾波的多數(shù)問題,這是由于它在反饋環(huán)路中結(jié)合了差分積分器A1和采樣與保持放大器A2,該環(huán)路與圖2中的PWM周期T2同步工作。如果使積分器時(shí)間常量等于PWM周期時(shí)間,即R1×C1=T2,并且如果采樣電容C2等于保持電容C3,則就能恰好在一個(gè)PWM周期時(shí)間內(nèi)獲取并穩(wěn)定在某個(gè)新DAC值。雖然這個(gè)方法幾乎未使得到的DAC嚴(yán)格地算“高速”,但0.01s穩(wěn)定時(shí)間仍比1s穩(wěn)定時(shí)間好100倍。穩(wěn)定時(shí)間的這種改善沒有對(duì)紋波衰減產(chǎn)生不利影響,這與速度一樣重要。同步的紋波抑制在理論上是無限的,實(shí)踐中的唯一限制就是從S2進(jìn)入C3的非零電荷注入。選擇低注入電荷開關(guān)作為S2,并選擇大約1mF電容作為C3,就很容易帶來微伏級(jí)的紋波振幅。

            可選的反饋分壓器R2/R3借助公共電壓參考,在DAC輸出范圍方面提供了靈活性。例如,如果R2=R3,則5V參考將帶來0V~10V輸出范圍。這種范圍調(diào)整方法的一個(gè)額外優(yōu)點(diǎn)是,輸出紋波獨(dú)立于參考放大。

          參考文獻(xiàn)

          1. Woodward, Steve, “Combine two 8-bit outputs to make one 16-bit DAC,” EDN, Sept30, 2004, pg85.

           

          pwm相關(guān)文章:pwm原理




          關(guān)鍵詞: 濾波器 PWM 微控制器 CMOS

          評(píng)論


          相關(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); })();