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

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 基于LPC2131的嵌入式鋰離子電池檢測系統(tǒng)

          基于LPC2131的嵌入式鋰離子電池檢測系統(tǒng)

          作者: 時間:2011-01-17 來源:網(wǎng)絡 收藏

          引言
          隨著電子技術的迅猛發(fā)展,嵌入式系統(tǒng)因其高自動化、響應速度快的優(yōu)點,被廣泛應用于各個領域。ARM處理器作為高性能、低功耗的處理器,是目前最常用的嵌入式微處理器之一。針對產業(yè)的發(fā)展以及國內外檢測設備的現(xiàn)狀,對檢測實行的國家標準和電池檢測方面的一些問題作了深入的研究和分析。根據(jù)電池檢測系統(tǒng)所要達到的性能指標,本文以LPC2131微處理器為核心,基于嵌入μC/OS-II設計了一種嵌入式鋰離子電池檢測系統(tǒng)。

          1 系統(tǒng)硬件設計
          檢測系統(tǒng)由微處理器、信號變換電路、控制電路、液晶顯示屏、上位機等組成,如圖1所示。微處理器選用Philips公司的LPC2131。電池的輸入信號通過信號變換電路傳輸給微處理器,微處理器對采集的信號進行分析、處理,將控制信號傳給控制電路,對電池的各個過程進行控制;同時,將結果送給液晶實時顯示,并將結果傳輸給上位機保存測試結果,以方便數(shù)據(jù)存儲、查詢。

          a.JPG
          1.1 充放電控制電路
          充放電控制電路如圖2所示。采用模擬充電器設計,模擬充電器實現(xiàn)被檢測電池充放電模式的切換、電流和電壓的電信號切換,以及輸入信號的調理。微處理器采集通過變換電路調理的電池輸入信號,對信號進行分析處理后將控制信號傳給控制電路。采用放大器LM324、大功率三極管C3990和TIP142等實現(xiàn)電流的逐級放大,采用繼電器對不同回路進行切換,實現(xiàn)充放電模式及各個測試的切換。K1用于短路測試。
          b.JPG

          當K2接上端、K3接下端時,對電池進行充電測試。微處理器采集被測電池兩端的電壓及通過的電流,將控制指令通過輸出的PWM1脈寬調制信號來控制充放電控制電路。PWM1的輸出通過運放及三極管的逐級放大,最終轉化成被測電池的充電輸入電流。同理,當K2接下端、K3接上端時,對電池進行放電測試。微處理器通過控制PWM2的輸出,實現(xiàn)對被測電池放電電流的控制。
          1.2 液晶顯示模塊
          液晶顯示器件在科研、生產、產品設計等領域正發(fā)揮著越來越重要的作用,該模塊是決定系統(tǒng)使用是否方便的關鍵。本設計中采用內置T6963控制器的 128×128圖形點陣式液晶顯示模塊DM128128。該液晶顯示模塊的驅動系統(tǒng)是由液晶顯示控制器T6963及其周邊電路、行驅動器組、列驅動器組以及液晶驅動的偏壓電路組成。T6963控制器的最大特點是具有獨特的硬件初始設置功能,顯示驅動所需的參數(shù)(如占空比系數(shù)、驅動傳輸?shù)淖止?jié)數(shù)及字符的字體選擇等),均由引腳電平設置。因此,T6963的初始化在上電時就已經基本設置完成,軟件操作的全部精力就可以用于顯示畫面的設計上了。其典型應用如圖3 所示。
          c.JPG


          上一頁 1 2 下一頁

          關鍵詞: 電池

          評論


          相關推薦

          技術專區(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); })();