久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

自制高精度控制電熱水瓶

作者:佚名   來源:本站原創   點擊數:  更新時間:2012年10月26日   【字體:

    最近因需要買了一個電熱水瓶,使用中發現,水溫根本上沒有達到沸騰,里面溫控器就跳開了,而且水溫稍一下降,溫控器又很快閉合,再次進入煮水狀態,這樣水不斷處于冷卻-加熱-冷卻狀態,這樣不但浪費電,長期飲用此水,對身體也是有害的。剛好最近在學單片機編程,于是打算自己寫個程序,用單片機來控制水溫,可以達到十分精確的沸騰溫度。說干就干,馬上拆開電熱水瓶,發現里面電路極其簡單,只是用個KSD301溫控器來控制水溫,仔細觀察發現電源還直接加到另一組加熱絲,測量其阻值有600歐左右,粗略計算達到80W,也就是說,在溫控器跳開后,此加熱絲仍耗電80W來保持水溫,這樣是很浪費電的。于是把原電路拆掉,接通電源到主加熱絲,加入1/3水,直接通電加熱到水沸騰,用溫度計測量底部原溫控器感溫點,溫度有96度,一直沸騰下去,還是96度,也就是說,只要水沸騰,此處溫度就是96度了。于是,根據此數據寫了一個溫控程序,設定下限溫度50度,上限溫度96度,并且具備提示功能,就是水要是沸騰了,熱水瓶會”滴“一聲提醒我們水已經煮好,這個就是單片機的優勢,可以實現智能控制!上面我還采用三個數碼管直接顯示水溫,在水溫達到設定時,繼電器跳開,常閉觸點接通副加熱器進行恒溫加熱,不過這次不是連續通電,而是加熱3秒,停止1秒,并且是半波交流電,這樣耗電是很低的,又可以進行保溫,同時使熱水瓶耗電降到最低,真正環保啊!好了,下面附上C程序,監于時間關系,我就先不傳上電路圖了,其實電路倒是 簡單,不會很復雜!單片機采用AT89C2051,水溫傳感用DS18B20,用DS18B20成本稍高,但程序容易設計,而且也比較準確!

#include <reg2051.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit GW=P3^0;
sbit SW=P3^1;
sbit BW=P3^2;
sbit DQ=P3^3;
sbit JDQ=P3^4;
sbit BAW=P3^5;
sbit FMQ=P3^7;
bit K;
code uchar NUM[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
uchar temp_value;
uchar sec;
uchar TH=96,TL=50;
void delay(uchar a)
{
 while(a--);
}
void INIT()
{
 TMOD=0x01;
 TH0=0x3c;
 TL0=0xb0;
 TR0=1;
 }
void init_DS18B20()
{
 uchar b=0;
 DQ=1;
 delay(8);
 DQ=0;
 delay(100);
 DQ=1;
 delay(14);
 b=DQ;
 delay(20);
}
uchar read()
{
 uint i, dat=0;
 for(i=8;i>0;i--)
 {
  DQ=1;
  _nop_();_nop_();
  dat>>=1;
  DQ=0;
  _nop_();_nop_();_nop_();_nop_();
  DQ=1;
  _nop_();_nop_();_nop_();_nop_();
  if(DQ)
  dat|=0x80;
  delay(12);
  }
  DQ=1;
  return(dat);
}
void write(uchar dat)
{
 uchar d=0;
 for(d=8;d>0;d--)
 {
  DQ=1;
  _nop_();_nop_();
  DQ=0;
  delay(1);
  DQ=dat&0x01;
  delay(12);
  dat=dat/2;
  }
  DQ=1;
  delay(2);
}
void ReadTemp()
{
 uint a=0;
 uint b=0;
 init_DS18B20();
 write(0xCC);    
 write(0x44); 
 delay(100); 
       
 init_DS18B20();
 write(0xCC);  
 write(0xBE);  
 delay(100);
 a=read(); 
 b=read(); 
  
 temp_value=((b<<8)|a)*0.0625;          
}
 void display (uchar num0,uchar num1,uchar num2)
{ 
  P1=NUM[num0];
  GW=0;
  delay(200);
  GW=1;
  P1=NUM[num1];
  SW=0;
  delay(200);
  SW=1;
  
  P1=NUM[num2];
  BW=0;
  delay(200);
  BW=1;
}
void wenkong()
{
   if(temp_value<TL)
  {
   JDQ=1;
   K=0;
   }
   if(temp_value>=TH)
   {
    JDQ=0;
    }
}
main() 
{ 
 uchar a,b,c,t;
 INIT();
 K=0;
 if(sec==0)
 FMQ=0;
 BZ: if(sec>=1)
 FMQ=1;
 if(temp_value>=TH&K==0)
 {
  sec=0;
  FMQ=0;
  if(sec==3)
  FMQ=1;
  K=!K;
 }
 while(1)
 {
      if(TF0==1)
     {
     TF0=0;
   TH0=0x3c;
      TL0=0xb0;
   t++;
       }
    if(t==20)
    {
     t=0;
     sec++;
  BAW=0;
     }
    if(sec==4)
    {
       sec=0;
    BAW=1;
    }
    ReadTemp();
  a=temp_value%10; 
     b=temp_value/10%10;
  c=temp_value/100%10;
  display(a,b,c);
   wenkong();
   goto BZ;
 }
}
關閉窗口

相關文章

主站蜘蛛池模板: 精品久久国产老人久久综合 | 超碰97免费观看 | 综合色站导航 | 欧美在线不卡 | 国产精品久久久久一区二区三区 | 九九久久久 | 亚洲一区在线日韩在线深爱 | 色综合天天综合网国产成人网 | 欧美日韩黄 | 中文字幕 国产 | 涩涩视频网站在线观看 | 日韩一区二区av | 亚州中文字幕 | 成人精品国产一区二区4080 | 国产性生活一级片 | 国产精品一区一区三区 | 99精品一区二区三区 | 亚洲男女视频在线观看 | 久久久网| h肉视频| 亚洲入口| 91麻豆精品国产91久久久久久久久 | 波多野结衣av中文字幕 | 成人网av| 久草中文在线观看 | www..99re| 欧美黄在线观看 | 欧美日韩在线综合 | 亚洲一区成人 | 一级黄色毛片免费 | 美女爽到呻吟久久久久 | 久久久久久久一区二区三区 | 国产日韩欧美 | 国产综合精品 | 亚洲一区二区免费视频 | 欧区一欧区二欧区三免费 | 欧美日韩亚洲一区 | 久久精品一区二区视频 | 欧美日韩午夜精品 | 一级做a爰片久久毛片 | 91免费版在线观看 |