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

          新聞中心

          EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > PXA270的電池充電及電量計量模塊設(shè)計

          PXA270的電池充電及電量計量模塊設(shè)計

          作者: 時間:2010-11-15 來源:網(wǎng)絡(luò) 收藏

          DS2786以百分比的形式給出剩余電量的同時,還給出了電壓、電流和溫度信息。電量計算所需的特性和應(yīng)用參數(shù)存儲在片上EE-PROM中。為了支持在某些對成本比較敏感的場合對電量進行監(jiān)測,DS2786還提供了電流、電壓和溫度的測量數(shù)據(jù)。
          DS2786可以應(yīng)用在手持設(shè)備上,也可安裝在包內(nèi),其典型應(yīng)用如圖2所示。VDD是芯片DS2786的工作電源輸入引腳,而VIN則是所測量電池的電壓輸入引腳。

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

          c.JPG


          通過VPROG引腳可以對芯片內(nèi)部EEPROM里存儲的查找表進行修改。SCL和SDA分別是串行時鐘輸入和串行數(shù)據(jù)輸入/輸出,可以將電量計量數(shù)據(jù)傳遞給PXA270上的I2C接口進行讀取操作。在2個輔助輸入端AN0和ANl,可通過比例計量法提供電池包識別(PACK ID)電阻和熱敏電阻的阻抗計量。
          本系統(tǒng)采用PXA270+LM3658+DS2786組成1個完整的嵌入式系統(tǒng)的電池充電及電量計量模塊。LM3658負責(zé)電池的充電功能和反饋當(dāng)前電池的充電狀態(tài),DS2786負責(zé)提供當(dāng)前電池的剩余電量信息,而PXA270則提供系統(tǒng)的控制和數(shù)據(jù)接收功能。

          d.JPG


          模塊的系統(tǒng)框圖如圖3所示。由于沒有采用USB電源供電,因此將LM3658芯片的CHG-IN引腳直接5 V輸入。BATT端接上電池的正極進行充電。在電池的正極同時接上N溝道的MOSFET管,可以實現(xiàn)對電池的安全保護,防止充電過量,出現(xiàn)電流過大、溫度過高等情況。電池的充電狀態(tài)通過Statl和Stat2引腳將信息輸出到PXA270的GPIO進行讀取操作。DS2786的VDD引腳用5 V外接電壓直接供電。而VIN引腳既可以用電池電壓輸入,也可以用外接5 V電壓輸入。當(dāng)電池電壓輸入VIN的時候,DS2786可以根據(jù)OCV查找表計算電池的剩余電量。當(dāng)電池高速率放電時,通過電流感測電阻R進行庫侖計測量。最終通過SDA和SCL將電量信息輸出給PXA270的I2C接口。

          2 軟件設(shè)計
          本系統(tǒng)中PXA270上面運行的嵌入式操作系統(tǒng)采用微軟公司的Windows CE。Windows CE是實時操作系統(tǒng),支持在多種CPU硬件平臺上運行,并且提供了強大的開發(fā)工具。為了使DS2786在系統(tǒng)中能夠正常地工作,必須對其編寫基于Windows CE 5.O的驅(qū)動程序。



          關(guān)鍵詞: 電池 手機 PDA 數(shù)碼相機 MP3

          評論


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