wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1233|回復: 3
打印 上一主題 下一主題
收起左側

DS18B20 51單片機冰箱測溫程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:243354 發(fā)表于 2025-5-16 10:42 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
編寫一個冰箱測溫程序,經測試,可以用

#include <reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char

//小板接線
// sbit lcdrs=P2^4;    //液晶接口
// sbit rw=P2^5;            //液晶接口
// sbit lcden=P2^6;  //液晶接口
sbit quanwe=P2^0;
sbit baiwe=P2^1;
sbit shiwe=P2^2;
sbit gewe=P2^3;

sbit Beep=P3^0;
sbit DS=P3^2;               //溫度傳感器接口

sbit K1=P3^6;      //16腳
sbit K2=P3^7;           //17腳
sbit K3=P3^4;    //14腳
sbit K4=P3^5;   //15腳


uchar K1num;
uchar code smgdu[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
bit flag;
uchar Thflag=1;
uchar con;
uchar Th;
uint temp;

//延遲函數
void delayus(uint t)  // 延遲10微秒函數
{
  while(t--);
}

void delayms(uint z)         //延遲1毫秒函數
{
  uint x,y;
        for(x=z;x>0;x--)
          for(y=110;y>0;y--);
}         

//DS18B20溫度函數
void DSreset(void)   //復位
{
  DS=1;                           //總線高電平
  delayus(6);     //延遲66us
  DS=0;                         //拉低總線
  delayus(65);  //保持480-960us
  DS=1;        //釋放總線
  delayus(14);        
  if(DS==0)         //檢測到從件發(fā)出應答信號       
    flag=1;
  else
    flag=0;         //未檢測到從件發(fā)出應答信號
  delayus(20);                 
}                  

bit DSread_bit( )        //讀位函數,主機把總線由高拉低1微秒,釋放,15微秒內檢測并讀取總線電平。
{
   bit Dat;
   DS=0;           //拉低總線
   _nop_( );  //延1微秒
   _nop_( );
   DS=1;         //釋放總線
   _nop_( );
   Dat=DS;        //讀取總線電平
   delayus(10);
   return Dat;         //返出讀取值
}

uchar DSreadByte( )           //讀取8位并組裝1字節(jié)函數
{
    uchar i, j,k;
        k=0;               //K賦初值0
    for(i=0; i<8; i++)
    {
        j=DSread_bit( );
        k=(j<<7)|(k>>1);        //j左移7位與上k,8次后組成1字節(jié)
    }
    return k;
}               

void DSwrite_byte(uchar dat)   //寫1字節(jié)函數
{
  uchar i;
  for(i=1;i<=8;i++)
  {
    DS=0;                 //拉低總線
        _nop_( );          //延1微秒
    DS=dat&0x01;  //總線電平等于需寫入dat的未位,寫1則DS=1,寫0則DS=0
        delayus(6);
        DS=1;        //釋放總線,準備寫入dat的未第2位。
    dat=dat>>1;         //dat右移,未2位移至未位。
   }
   delayus(6);
}         

void tmpconvert(void)  //轉換溫度函數
{
  DSreset();
  delayms(1);
  DSwrite_byte(0xcc);   //跳過ROM指令
  DSwrite_byte(0x44);  //啟動轉換溫度命令
  }

uint read_temperature( )   //讀傳感器溫度值函數
{
  //uint T;
  uchar LSB,MSB;
  float tp;
  DSreset( );  //復位
  DSwrite_byte(0xcc);  //跳過ROM指令
  DSwrite_byte(0xbe); //讀暫存器溫度
  LSB=DSreadByte( );  //讀低8位字節(jié),存入LSB
  MSB=DSreadByte( ); //讀高8位字節(jié),存入MSB
  temp=MSB<<8|LSB;
  if(temp<0)
  {
   temp=temp-1;
   temp=~temp;
   tp=temp;   
   temp=tp*0.0625*10+0.5;
  }
  else
  {
  tp=temp;
  temp=tp*0.0625*10+0.5;  //擴大10倍,顯示百十個。
  }
  return temp;        //返出溫度值
}  


void displaysmg (uint temp)
{
        uchar quan,bai,shi,ge;
        if(Thflag)                   //標志位置1,數碼管顯示測量溫度
         {
           bai=temp/100;
           shi=temp%100/10;
           ge=temp%10;

           quanwe=0;
           baiwe=0;
           shiwe=0;
           gewe=0;
           //P0=smgdu[quan];
           //quanwe=1;
           //delayms(1);
           //quanwe=0;
           P0=smgdu[bai];
           quanwe=1;
           delayms(1);
           quanwe=0;
          
           P0=smgdu[shi]|0x80;
           baiwe=1;
           delayms(1);
           baiwe=0;
       
           P0=smgdu[ge];
           shiwe=1;
           delayms(1);
           shiwe=0;
}
else                    //標志位置0,數碼管顯示設定后溫度
{
       bai=Th/100;
       shi=Th%100/10;
       ge=Th%10;
           quanwe=0;
           baiwe=0;
           shiwe=0;
           gewe=0;

           P0=smgdu[bai];
           quanwe=1;
           delayms(1);
           quanwe=0;
          
           P0=smgdu[shi]|0x80;
           baiwe=1;
           delayms(1);
           baiwe=0;
       
           P0=smgdu[ge];
           shiwe=1;
           delayms(1);
           shiwe=0;
}
}

void keyscan( )           //鍵盤設置函數
{
if(K1==0)              //K1按下
  {
        delayms(10); //消抖
        if(K1==0)
        {
          K1num++;           //K1按下次數判斷
           while(!K1);//松手檢測
           if(K1num==1)                //第1次按下K1
               {
                     Thflag=0;           //標志位置0,顯示設置溫度報警函數
                   }
           if(K1num==2)                  //第2次按下K1
                     {
                           K1num=0;
                           Thflag=1;  //標志位置1,顯示測量溫度
                      }
           }
   }
if(K1num==1)           //第1次按下K1情況下
  {
      if(K2==0)          //K2按下執(zhí)行溫度累加設定
             {
                    delayms(10);
                    if(K2==0)
                     {
                           delayms(10);
                          //while(!K2)
                                   {
                                      Th++;
                                   if(Th==300)
                                      Th=180;
                               displaysmg(Th);        //顯示設定后溫度
                            }
                      }
                 }
         if(K3==0)           //K3按下執(zhí)行溫度累減設定
              {
                    delayms(10);
                    if(K3==0)
                     {
                          delayms(10);
                          //while(!K3)
                            {
                                 Th--;
                                 if(Th==100)
                                    Th=280;
                                 displaysmg(Th);  //顯示設定后溫度
                            }
                          }
                  }
           }
  }

void timerinit( )          //蜂鳴器斷續(xù)發(fā)聲定時器函數
{
  TMOD=0x01;
  TH0=(65536-50000)/256;
  TL0=(65536-50000)%256;
  ET0=1;
  EA=1;
  TR0=0;
  Th=225;
  }

void main()
{                                         
timerinit( );               //定時器初始化函數
while(1)
{
    keyscan( );             //鍵盤設置函數
        tmpconvert();        //溫度轉換函數
        displaysmg(read_temperature( ));  //溫度顯示函數
        if(temp>Th)
         {         
           TR0=1;
         }
        else
        {
         TR0=0;
         Beep=1;
         //TH0=(65536-50000)/256;
    // TL0=(65536-50000)%256;
        }
  }
}
void timet0( )interrupt 1         //定時器中斷,報警斷續(xù)聲函數
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
con++;
if(con==20)
  {
   con=0;
   Beep=!Beep;
}
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:243354 發(fā)表于 2025-5-16 10:45 | 只看該作者
初次寫程序,還沒有用到模塊化程序
回復

使用道具 舉報

板凳
ID:468878 發(fā)表于 2025-5-28 18:41 | 只看該作者
wqf304 發(fā)表于 2025-5-16 10:45
初次寫程序,還沒有用到模塊化程序

這么小規(guī)模的,沒必要模塊化,能用就好。
回復

使用道具 舉報

地板
ID:1118200 發(fā)表于 2025-8-17 15:22 來自觸屏版 | 只看該作者
rsx9583 發(fā)表于 2025-5-28 18:41
這么小規(guī)模的,沒必要模塊化,能用就好。

不錯,好用
回復

使用道具 舉報

5#
無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
欧美另类激情| 自拍偷拍第9页| 国产欧美一区二区精品忘忧草| 91精彩视频在线播放| 日韩精品一区中文字幕| 国产亚洲精品美女久久久久| 久久国产三级| 午夜影院免费看| 免费黄色激情视频| 一区二区传媒有限公司| 色伦专区97中文字幕| 国产成人av一区二区三区在线观看| 羞羞的网站在线观看| av天堂一区二区三区| 成人免费观看cn| 欧美xxxx14xxxxx性爽| 国产三级一区二区| 欧美有码在线| 蜜臀av一区二区三区有限公司| 国产精品欧美一区二区| 一区二区高清免费观看影视大全| 亚洲精品中文字幕99999| 成人精品3d动漫| 激情综合网五月天| 亚洲欧洲国产精品久久| 精品亚洲国产成av人片传媒| 激情综合色综合久久综合| 美女91在线看| 国产伦精品一区二区三区视频小说| 色呦呦一区二区| 国产精品一区二区不卡视频| 欧美日韩国产美| 麻豆视频观看网址久久| 四虎国产精品永久在线国在线 | 中文成人综合网| 国产一区二区三区天码| 羞羞视频网站在线观看| av加勒比在线| 国产一二三四在线| 黄色国产一级视频| 欧美性天天影院| 国产一区二区三区在线免费观看| 一本大道久久a久久精二百| 99精品欧美| 视频二区不卡| 蜜桃极品自拍av| 日本视频在线观看免费| 国产免费视频传媒| 国产欧美亚洲精品| 91麻豆精品国产91久久久久久| 九九九久久久精品| 精品国产午夜| www.8ⅹ8ⅹ羞羞漫画在线看| 黄色小视频免费| 国产成人精品网| 成年人性生活视频| 色就是色欧美| 欧美黑人巨大xxx极品| 欧美天堂在线观看| 成人美女在线视频| 欧美疯狂party性派对| 欧美人与性动交α欧美精品济南到 | 日本在线观看天堂男亚洲 | 成人av在线网| 精品国产中文字幕第一页| 韩国精品视频在线观看| 岛国在线视频网站| 黄色三级电影网站| 丁香久久五月| 国产 日韩 欧美 在线| 国产精品二区视频| 日本 片 成人 在线| 国产精品区免费视频| 国产日韩av在线播放| 2019av中文字幕| 日韩手机在线导航| 18涩涩午夜精品.www| 亚洲综合社区| 无码日韩精品一区二区免费| 日本黄色免费在线| а√天堂在线官网| free性欧美1819hd| 久久国产热视频| 一级爱爱免费视频| 国产精品成人在线视频| 日本激情视频在线| 国产aaa免费视频| 99精彩视频在线观看免费| 久久久国产精品x99av | 国产二区一区| 韩国美女主播一区| 亚洲美女视频网站| 欧美精品久久久久久久久老牛影院| 日本一区二区成人| 国产精品久久久久久久岛一牛影视 | 久久久久久免费网| 久久精品国产99国产精品| 免费成人美女在线观看.| 日韩免费看片| 成功精品影院| 性欧美又大又长又硬| av大片在线观看| 韩国av网站在线| 在线观看高清av| 成年片费网站色大全免费视频| 少妇与大狼拘作爱性a| www.com毛片| 亚洲午夜精品久久久久久浪潮| 国产欧美va欧美va香蕉在| 欧美成人在线影院| 51ⅴ精品国产91久久久久久| 久久久av免费| 91成人在线视频| 亚洲va男人天堂| 日本精品久久中文字幕佐佐木| 久热爱精品视频线路一| 尤物99国产成人精品视频| 欧美一区二区女人| 91 com成人网| 一本一本久久a久久精品综合小说 一本一本久久a久久精品牛牛影视 | 涩涩涩视频在线观看| 国产精品视频一区视频二区| 狠狠操一区二区三区| 成人亚洲精品| 成人羞羞网站| 欧美精品一二| 一本一道久久综合狠狠老精东影业| 精东粉嫩av免费一区二区三区| 国产三级欧美三级日产三级99 | 999久久久| 91久久精品国产91久久性色tv| 日本最新一区二区三区视频观看| 奇米精品在线| 久久精品五月婷婷| 国产亚洲精品美女久久久m| 国产精品视频免费一区| 成年人黄色在线观看| 久久久一二三四| 国产免费色视频| 午夜久久福利视频| 欧美激情国内自拍| 激情av中文字幕| 精品国产乱码久久久久夜深人妻| av最新在线观看| 污污的视频在线免费观看| 五月天免费网站| 91国偷自产中文字幕久久| 99久久久国产精品无码免费| 欧洲精品久久一区二区| 蜜桃视频污在线观看| 天天干天天摸天天操| 欧美色图自拍| 国产精彩视频在线观看免费蜜芽| 国产精品入口免费麻豆| 2025国产精品自拍| 亚洲国产精品一| 欧美性xxxxx极品视频| 日本三级电影免费观看| 成人国产视频在线| 高清电影一区| 久久99精品国产自在现线| 日韩在线理论| 成人精品一区二区三区四区 | 亚洲 欧美 精品| 欧美猛交xxxxx| 欧美视频综合| 九七久久人人| 羞羞答答一区二区| 国产精品亚洲综合一区在线观看| 久久久久久黄色| 日韩一区二区精品| 国产精品免费网站| 欧美污视频网站| 黄色性生活一级片| 国产精品毛片一区二区在线看舒淇 | 狠狠色丁香婷综合久久| 日韩欧美极品在线观看| 欧美黑人xxx| 性生活免费观看视频| 五月婷婷六月丁香激情| 国产精品久久久免费视频| 国产精品自拍在线观看| 伊人电影在线观看| 91视频成人| 久久精品青草| 蜜臀av一级做a爰片久久| 无吗不卡中文字幕| 亚洲国产欧美精品| 久久久视频在线| 国产一二三四五| 手机在线免费看毛片| 亚洲av无码一区二区三区性色| 嫩模私拍啪啪| 电影一区二区三| 青草国产精品| 国产蜜臀97一区二区三区| 精品亚洲国产视频| 亚洲区一区二区三区| 欧美乱大交做爰xxxⅹ小说| www夜片内射视频日韩精品成人| 青青草视频导航| 电影一区电影二区| 中文字幕一区二区三区乱码图片| 精品在线亚洲视频| 欧美丰满美乳xxx高潮www| 51国产成人精品午夜福中文下载 | 一区二区三区四区五区精品视频 | 中国女人内谢69xxxx视频| 国产91在线播放九色| 色妇色综合久久夜夜| 国产深夜视频在线观看| 视频一区在线视频| 中文字幕在线不卡视频| 久久av红桃一区二区小说| 日本a在线免费观看| 日本成人午夜影院| 国产ts变态重口人妖hd| 国产在线一二三| 亚洲精品国产九九九| 在线观看日韩av电影| 国产色婷婷亚洲99精品小说| 久久精品国产69国产精品亚洲| 日本香蕉视频在线观看| x88av在线| 色猫视频免费观看| 91精品国产一区二区在线观看| aaa亚洲精品一二三区| 欧美丰满美乳xxx高潮www| 精品国产免费久久久久久尖叫 | 亚洲老女人视频免费| 一区二区三区丝袜| 久久影院在线观看| av免费播放网址| 人妻与黑人一区二区三区| 国产理论在线| 成人黄页在线观看| 欧美激情国产日韩精品一区18| 成年人三级黄色片| 国产一级免费黄色片| 人人爱人人干婷婷丁香亚洲| 国模娜娜一区二区三区| 国产性猛交xxxx免费看久久| 国产精品久久中文字幕| 蜜臀久久99精品久久久| a一区二区三区| 久久精品一区二区三区不卡牛牛| 91国在线精品国内播放| 亚洲黄色在线网站| 男男gay免费网站| 亚洲精品国产首次亮相| 欧美男生操女生| 在线播放 亚洲| 91在线视频国产| 理论不卡电影大全神| 黄色免费成人| 欧美日韩中文字幕日韩欧美| 91高清视频免费| 国产ts在线播放| 麻豆视频国产| 国产精品乱战久久久| 久久久亚洲欧洲日产国码αv| 亚洲美女黄色片| 爱情岛论坛成人| 国产三级电影| 国产欧美高清视频在线| 欧美久久一二区| www.欧美黄色| 欧美激情性xxxxx| 日韩中出av| 制服.丝袜.亚洲.中文.综合| 精品这里只有精品| 91在线资源站| 99re热精品视频| 欧美日韩免费观看中文| 亚洲人成人77777线观看| 亚洲国产精品无码久久| 日韩在线观看中文字幕| 在线观看av一区| 国产在线观看一区| 天码人妻一区二区三区在线看| 3d玉蒲团在线观看| 久久亚洲春色中文字幕久久久| 国产日韩精品一区二区| 五月婷婷亚洲综合| 国产欧洲在线| 亚洲一区在线观看免费| 国产精品香蕉国产| 草视频在线观看| 成人免费黄色网址| 精品大片一区二区| 国产精品theporn| 9191精品国产综合久久久久久 | www.欧美色| 免费在线稳定资源站| 国产亚洲在线| 日韩不卡中文字幕| 国产亚洲欧美在线视频| 91免费看片| 日韩精选在线| 91.麻豆视频| 少妇黄色一级片| 米奇.777.com| 国产成人综合网| 欧美黑人性生活视频| 日本免费www| 日本亚洲精品| 国产精品一色哟哟哟| 国产精品综合不卡av| 国产精品suv一区二区三区| 午夜激情成人网| 欧亚洲嫩模精品一区三区| 天天干天天干天天干天天干天天干| 永久久久免费浮力影院| 久久中文字幕av| 综合国产在线视频| 欧美亚洲日本一区二区三区 | 国产在线一二区| 久草在线免费福利资源| 99精品国产视频| 情事1991在线| 亚洲欧美一二三区| 99re6热只有精品免费观看| 日韩av网站大全| 国产18无套直看片| 亚洲美女尤物影院| 欧美日韩中文一区| 国内精品久久久久久野外| 欧美日韩国产精品一区二区三区| 99久久免费视频.com| 国产精品77777| 中文字幕精品—区二区日日骚| 播放灌醉水嫩大学生国内精品| 黄色大秀av大片| 国产精品久久久久久久浪潮网站| 精品久久精品久久| 好吊色免费视频| 国产日产欧美一区| 孩娇小videos精品| 美女视频在线免费| 亚洲性无码av在线| 国产麻豆91视频| 另类av一区二区| 91综合免费在线| 亚洲精品视频专区| 青青青爽久久午夜综合久久午夜| 91欧美视频网站| 青青操视频在线观看| 久久久久久久久99精品| 欧美性受xxxxxx黑人xyx性爽| 免费成人在线电影| www.国产一区| 免费又黄又爽又猛大片午夜| 亚洲精品成人无限看| 久久国产精品久久| 国外男同性恋在线看| 国产精品久久久久一区二区三区共| www.精品在线| 超碰一区二区| 久久亚洲精品视频| 狠狠鲁男人天堂| 视频一区欧美精品| 日本三级中文字幕在线观看| 精精国产xxxx视频在线动漫| 亚洲福利一区二区| www.黄色网| 欧美顶级xxxxbbbb| 国产69精品久久99不卡| 国产免费又粗又猛又爽| 国产成人免费9x9x人网站视频 | 黄色综合网址| 欧美老少做受xxxx高潮| 在线视频 91| 男女性色大片免费观看一区二区| 亚洲熟妇无码一区二区三区| 麻豆蜜桃在线观看| 久久欧美在线电影| 女人色在线免费视频| 亚洲一级二级在线| 中文字幕在线观看成人| 在线欧美一区| 日韩av在线播放不卡| 综合久久2023| 国产成人亚洲综合青青| 严阵以待中文社区| 亚洲国产成人一区二区三区| 中国美女乱淫免费看视频| 青青草91久久久久久久久| 亚洲韩国在线| 欧美人与禽性xxxxx杂性| 久久久精品亚洲| 91av日本| 91九色02白丝porn| 人人艹在线视频| 韩日精品视频| 国产va亚洲va在线va| 成人在线爆射| 91丝袜美腿美女视频网站| 亚洲成人男人天堂| 亚洲视频在线观看网站| 国产绿帽一区二区三区|