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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于MAX1898的智能充電器設計

          基于MAX1898的智能充電器設計

          作者: 時間:2016-11-18 來源:網絡 收藏
          單片機在控制方面不僅可以在工業(yè)控制方面大展神通,如果用在控制一些很有意思的芯片方面也可以實現實用的功能。比如用單片機控制沖電芯片實現手機的智能充電器設計,基于次參考有關資料學習了基于MAX1898的智能充電器設計。

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

          主要器件:

          1、AT89C52單片機芯片,用于控制充電器芯片。

          2、可提供精確的恒流/恒壓充電,可對所有化學類型的Li+電池進行安全充電的MAX1898。

          3、LM7805提供穩(wěn)定的+5v電壓。

          試驗流程圖:

          試驗電路圖:

          試驗程序代碼:
          //BattCharger.h程序

          #ifndef_BATTCHARGER_H//防止BattCharger.h被重復引用

          #define_BATTCHARGER_H

          #include

          #define uchar unsigned char

          #define uint unsigned int

          sbit GATE = P2^0;

          sbit BP = P2^1;

          uint t_count,int0_count;

          #endif

          //BattCharger.c程序

          #include "BattCharger.h"

          /*定時器0中斷服務子程序*/

          void timer0() interrupt 1 using 1

          {

          TR0 = 0;//停止計數

          TH0 = -5000/256;//重設計數初值

          TL0 = -5000%256;

          t_count++;

          if (t_count>600)//第一次外部中斷0產生后3s

          {

          if (int0_count==1)//還沒有出現第二次外部中斷0,則認為充電完畢

          {

          GATE = 0;//關閉充電電源

          BP = 0;//打開蜂鳴器報警

          }

          else//否則即是充電出錯

          {

          GATE = 1;

          BP = 1;

          }

          ET0 = 0;//關閉T0中斷

          EX0 = 0;//關閉外部中斷0

          int0_count = 0;

          t_count = 0;

          }

          else

          TR0 = 1;//啟動T0計數

          }

          /*外部中斷0服務子程序*/

          void int0() interrupt 0 using 1

          {

          if (int0_count==0)

          {

          TH0 = -5000/256;// 5ms定時

          TL0 = -5000%256;

          TR0 = 1;//啟動定時/計數器0計數

          t_count = 0;//產生定時器0中斷的計數器清零

          }

          int0_count++;

          }

          /*初始化*/

          void init()

          {

          EA = 1;//打開CPU中斷

          PT0 = 1;// T0中斷設為高優(yōu)先級

          TMOD = 0x01;//模式1,T0為16位定時/計數器

          ET0 = 1;//打開T0中斷

          IT0 = 1;//外部中斷0設為邊沿觸發(fā)

          EX0 = 1;//打開外部中斷0

          GATE = 1;//光耦正常輸出電壓

          BP = 1;//關閉蜂鳴器

          int0_count = 0;//產生外部中斷0的計數器清零

          }

          void main()

          {

          /*調用初始化函數*/

          init();

          /*無限循環(huán)*/

          while(1);

          }



          關鍵詞: MAX1898智能充電

          評論


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