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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 基于PIC12F內(nèi)置比較器的倍壓梯

          基于PIC12F內(nèi)置比較器的倍壓梯

          作者: 時間:2012-05-25 來源:網(wǎng)絡(luò) 收藏

          本設(shè)計中的電路用一只Microchip公司的F10微控制器驅(qū)動一個倍壓梯,一只引腳輸出狀態(tài),一只引腳輸入您提供的一個觸發(fā)信號(圖1)。當(dāng)觸發(fā)這個信號時,軟件接通MOSFET,將倍壓器輸出端接至一個負載。微控制器有一個0.6V啟動點的比較器。電路將輸出電壓衰減并反饋給這個比較器。

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


          圖1,此電路將3V電壓提升為一個穩(wěn)壓V,并通過軟件控制,將倍增電壓連接到一個負載上

          代碼清單1給出了控制器的軟件,當(dāng)內(nèi)部比較器指示輸出電壓已達到上限時,軟件使振蕩器停振,驅(qū)動倍壓器。本電路用在無線監(jiān)控器設(shè)計中,可增加電壓、功率,以及小功率定時發(fā)射機的距離。它可以提供V~15V電壓,9mA~11mA電流。

          一旦加電,處理就開始了。控制器限制其在引腳4上的Port3輸入。當(dāng)其為邏輯高時,邏輯為真,軟件代碼在Port4和5(分別在引腳3和引腳4上)生成互補的PWM輸出。

          這些振蕩為梯形網(wǎng)絡(luò)充電??刂破髟赑ort2/引腳5狀態(tài)線上輸出一個低,表示正在充電中。選擇R1和R2的比率,使得當(dāng)輸出電壓達到所需值時,梯形網(wǎng)絡(luò)的中點為0.6V。當(dāng)輸出達到最終值時,控制器將狀態(tài)引腳置于三態(tài)模式,20kΩ電阻將引腳上拉至電源電壓軌。引腳5上的Port2于是變成輸入端。

          當(dāng)此引腳被拉低時,微控制器使引腳6上的Port1為高,通過Q2使P溝道MOSFET導(dǎo)通,并將C4上的輸出電壓加到負載上。同時,引腳6上的Port1為高,將輸出電容C4的下腳從地轉(zhuǎn)換到電源軌,并在電壓梯的輸出端增加幾伏電壓。


          圖2,在微控制器里設(shè)置這些配置位,軟件代碼才能正常工作

          程序用一個50%占空比的700μsPWM脈沖,驅(qū)動引腳2和引腳3上的互補輸出??梢孕薷能浖a改變這些參數(shù)??刂破饔?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/內(nèi)置">內(nèi)置的4MHz振蕩器,支持一個用戶可選的參考模塊。代碼繼續(xù)監(jiān)控使能引腳、C4的電壓反饋,以及在向負載放電期間泵的運行。必須在處理器配置時設(shè)置某些位,才能讓代碼正常工作(圖2)。

          更多資訊請關(guān)注:21ic模擬頻道



          關(guān)鍵詞: PIC 12F 12 內(nèi)置

          評論


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