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

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 基于狀態(tài)機的電源控制器,設計高靈活性數(shù)字電源

          基于狀態(tài)機的電源控制器,設計高靈活性數(shù)字電源

          作者: 時間:2017-10-14 來源:網絡 收藏
          數(shù)字可用于實現(xiàn)許多很有意思的功能。借助可編程調節(jié)環(huán)路,可在不同工作條件下獲得更佳的環(huán)路特性。與完整系統(tǒng)的數(shù)字連接可實現(xiàn)電壓和電流的精確監(jiān)控。

          此外,數(shù)字還提供高靈活性??梢韵喈斂斓乃俣刃薷牟煌瑓?shù)。這簡化了電路設計過程并加快了系統(tǒng)衍生產品的開發(fā)。

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

          當然,許多電源專家仍然對采用數(shù)字電源有一些抗拒。電源設計人員通常不是經驗豐富的軟件工程師。但在數(shù)字電源項目中,通常會在開發(fā)團隊中增加一名軟件工程師。經驗表明,由電源專家和軟件專家共同開發(fā)電源可能會產生一些復雜問題。

          這兩者之間的交流可能導致誤解,并最終導致項目延期。

          圖形用戶界面(GUI)是這種困境的一種解決方案。因為GUI可簡化數(shù)字電源的編程。許多數(shù)字控制器IC供應商均提供GUI。通常,GUI的設計方式能夠使電源專家直觀地使用它們。圖1顯示了這樣的圖形用戶界面。您可用鼠標選擇電源的不同方面,在屏幕上的不同功能框圖中進行不同的設置。

          許多不同的數(shù)字電源仍然具有明顯的缺點。圖形用戶界面通常會生成一個代碼,該代碼經過編譯后,將在微控制器的內核或DSP上運行。設計人員對生成的代碼的功能可靠性完全負責??赡軙霈F(xiàn)一些錯誤,這些錯誤需要在驗證過程中利用測試矢量找到。對于在圖形用戶界面中進行的所有小更改,都需要重復此驗證過程。

          圖1. 數(shù)字電源圖形用戶界面

          還有一種更方便的方式是選擇基于狀態(tài)機的數(shù)字電源控制器IC。例如,ADI公司的ADP1055就是這樣的器件。圖2顯示了該電路的框圖。數(shù)字邏輯系統(tǒng)的作用與狀態(tài)機相同。電源特性的更改可在圖形用戶界面中進行設置,如圖1所示。這些更改不會為微控制器產生新代碼,只會在狀態(tài)機中設置不同的寄存器狀態(tài)。正是由于這樣的過程,數(shù)字電源的功能仍然由數(shù)字電源控制器IC的數(shù)據(jù)手冊規(guī)定,沒有任何軟件或代碼需要驗證。

          圖形用戶界面和狀態(tài)機的組合可簡化數(shù)字電源領域的首要步驟。此方法深受沒有專屬軟件工程師為電源管理專家提供支持的企業(yè)歡迎。而且,此方法在軟件代碼驗證過程極其繁瑣的領域也深受歡迎。此類領域的一個例子就汽車行業(yè)。

          現(xiàn)在,存在許多基于狀態(tài)機的電源控制器。圖2中的ADP1055設計用于不同拓撲結構的直流隔離電源。但是,它還可用于采用交錯技術的負載點(POL)應用中。

          圖2. 基于狀態(tài)機的ADP1055框圖



          關鍵詞: 電源

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁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); })();