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

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

51單片機電子鐘制作-升級版

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2011年08月23日   【字體:

         經(jīng)過兩天熬夜的艱苦奮戰(zhàn),在原程序基礎上進行升級,添加按鍵多功能操作

          新增功能:1.  K1模式轉換,可自由切換:主界面顯示,時間調整,鬧鐘設置,溫度上下限設定等。等                           2.  K2選定需要調整的位數(shù)。

             切換至時間調整時,通過K3-"加",K4-"減"按鍵調整數(shù)值。

             切換至鬧鐘設置時,通過K3-"加",K4-"減"按鍵調整數(shù)值。

             切換至溫度上下限設定時,通過K3-"加",K4-"減"按鍵調整數(shù)值。

準備擴展的新功能:鬧鐘音樂,喇叭開啟和關閉,。

 操作說明:

         開機進入主界面,顯示時鐘和溫度。按下K1時,進入模式選擇,(有時間調整,鬧鐘設置,溫度上下限設定等),當K1按下四次后,長響一聲,回到主界面。

          當K1(模式選擇鍵)按下第一次,選擇在時間調整時,按下K2,選定需要調整的位數(shù),選定的位數(shù)會一秒鐘不停的閃爍。然后按下K3 “加”或者K4 “減”按鍵,進行數(shù)值的加減,當K2按到五次時,返回時間調整界面。

          再按下K1(模式選擇鍵)按下第二次,進入到下一個模式,鬧鐘設置。按下K2,選定需要調整的位數(shù),選定的位數(shù)會一秒鐘不停的閃爍。然后按下K3 “加”或者K4 “減”按鍵,進行數(shù)值的加減,當K2按到五次時,返回鬧鐘設置界面。

          再按下K1(模式選擇鍵)按下第三次,進入到下一個模式,溫度上下限設定。按下K2,選定需要調整的位數(shù),選定的位數(shù)會一秒鐘不停的閃爍。然后按下K3 “加”或者K4 “減”按鍵,進行數(shù)值的加減,當K2按到五次時,返回溫度上下限設定界面。

          當K1(模式選擇鍵)按下第四次,返回到時鐘和溫度主界面顯示。



 

 

下面是我錄制的一段視頻文件:
 


采用的是stc89c51單片機,代碼為自己原創(chuàng),沒有進行整理和優(yōu)化,有點亂,還有些沒有加注釋說明
完整的源代碼下載地址:http://m.izizhuan.cn/f/dianzz5.rar 


#include"reg51.h"
#define uchar unsigned char 
#define uint unsigned int
 


/****溫度 端口定義******/
  sbit wx5=P2^4;
  sbit wx6=P2^5;
  sbit wx7=P2^6;
  sbit wx8=P2^7;
  sbit DQ=P3^6;

  uint temp, temp1,temp2, xs,H1,H2,L1,L2;             

  uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,
       0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0X9c,0xc6,0x91,0xfc,0XE3};   


/******延時程序*******/ 
 void delay1(uint m)
    {
      uint i,j;
    for(i=m;i>0;i--)
   for(j=110;j>0;j--);
    }


 void delay(unsigned int m)
    {
      while(m--);
     }

 void Init_DS18B20()  
   {
     unsigned char x=0;
     DQ = 1;          //DQ復位 ds18b20通信端口 
     delay(8); //稍做延時
     DQ = 0;          //單片機將DQ拉低
     delay(80); //精確延時 大于 480us
     DQ = 1;          //拉高總線   
     delay(4);
     x=DQ;            //稍做延時后 如果x=0則初始化成功 x=1則初始化失敗
     delay(20);
    }

 


/***********ds18b20讀一個字節(jié)**************/
  uchar ReadOneChar()
   {
     unsigned char i=0;
     unsigned char dat = 0;
     for (i=8;i>0;i--)
     {
      DQ = 0; // 高電平拉成低電平時讀周期開始
      dat>>=1;
      DQ = 1; // 給脈沖信號
      if(DQ)
      dat|=0x80;   // 
      delay(4);
      }
     return(dat);
   }

 

/*************ds18b20寫一個字節(jié)****************/
  void WriteOneChar(unsigned char dat)
  {
   unsigned char i=0;
   for (i=8; i>0; i--)
    {
      DQ = 0;          //從高電平拉至低電平時,寫周期的開始
      DQ = dat&0x01;   //數(shù)據(jù)的最低位先寫入
      delay(5);        //60us到120us延時
      DQ = 1;        
      dat>>=1;         //從最低位到最高位傳入
    }
  }


/**************讀取ds18b20當前溫度************/
void ReadTemperature()
  {
    unsigned char a=0;
    unsigned  b=0;
    unsigned  t=0;

    Init_DS18B20();
    WriteOneChar(0xCC);   // 跳過讀序號列號的操作
    WriteOneChar(0x44);   // 啟動溫度轉換 
    delay(1);            // this message is wery important
    Init_DS18B20();
    WriteOneChar(0xCC);   //跳過讀序號列號的操作
    WriteOneChar(0xBE);   //讀取溫度寄存器等(共可讀9個寄存器) 前兩個就是溫度
    delay(1);
    a=ReadOneChar();      //讀取溫度值低位  
    b=ReadOneChar();      //讀取溫度值高位    
    temp1=b<<4;           //高8位中后三位數(shù)的值 
    temp1+=(a&0xf0)>>4;   //低8位中的高4位值加上高8位中后三位數(shù)的值   temp1室溫整數(shù)值
    temp2=a&0x0f;         //小數(shù)的值
    temp=((b*256+a)>>4);  //當前采集溫度值除16得 實際溫度值    zhenshu    
    xs=temp2*0.0625*10;   //小數(shù)位,若為0.5則算為5來顯示  xs小數(shù)    xiaoshu
   }

 

 

 

////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
/****時鐘 端口定義******/
  sbit wx1=P2^0;
  sbit wx2=P2^1;
  sbit wx3=P2^2;
  sbit wx4=P2^3;


  uchar  qian,bai,shi,ge,miao1,miao2,count1,count2;
  uchar  n1,n2,z1,z2;//設置鬧鐘變量
  uchar code table1[]={0xc0,0xcf,0xa4,0x86,0x8b,
       0x92,0x90,0xc7,0x80,0x82};


  

  ////////////////////////////////////////////
  /***************按鍵調時程序***************/ 

   sbit K1=P3^0;
   sbit K2=P3^1;
   sbit K3=P3^2;
   sbit K4=P3^3;


   sbit BEEP=P3^7;    //// 定義蜂鳴器口

   uchar K1num,K2num,K3num,K4num,K5num,K6num,K7num;


   

  //////////////////////////////////////////
    /**********報警聲音**************/

   bi(uint t)
   {
      int c,n;
      for(c=0;c<t;c++)
      {
      for(n=0;n<50;n++);
      BEEP=~BEEP;      //按位取反BEEP
      }
   return(t);
   }

 


  ///////////////////////////////////////////////
/********定時器初始化*************/ 

  void init1()
    {
      TMOD=0x01; //定義定時器0,工作方式1  
      TH0=(65536-50000)/256;   //高8位  
      TL0=(65536-50000)%256;   //低8位  
      EA=1;     //開全局中斷  
      ET0=1;    
      TR0=1;    //打開定時器   
     }

 ///////////////////////////////////////////////  
/***********定時器中斷函數(shù)************/ 


  void timer0() interrupt 1
   {  
     TH0=50;
     TL0=50;
     count1++; 
   if( count1==19 ) {count1=0; miao1++;//LED1=~LED1;                   
   if( miao1==10 ) { miao1=0;  miao2++; }
   if( miao2== 6 ) { miao2=0;     ge++; }
   if(    ge==10 ) {    ge=0;    shi++; }
   if(   shi== 6 ) {   shi=0;    bai++; }
   if(   bai==10 ) {   bai=0;   qian++; }
   if(  qian== 3 ) {  qian=0;     }
   if(qian==2&&bai==4){qian=0;bai=0;    }} 
   }                 

  
  
  
   void init2()
    {
      TMOD=0x01; //定義定時器0,工作方式1  
      TH1=(65536-50000)/256;   //高8位  
      TL1=(65536-50000)%256;   //低8位  
      EA=1;     //開全局中斷  
      ET1=1;    
      TR1=1;    //打開定時器   
     }

 ///////////////////////////////////////////////  
/***********定時器中斷函數(shù)************/ 
  void timer1() interrupt 3
   {  
     TH1=50;
     TL1=50;
     count2++; 
   if( count2==120 ) {count2=0;  }}                       

 


void  MODE() //模式選擇
{
//正常顯示 時鐘和溫度   
if( K1num==0 )       
      { 
     TR0=1;TR1=0;  //打開定時器0,關閉定時器1

  wx1=1; P0=table[qian]; delay1(2);wx1=0;  //時十位 
   if( count1<9.5 )  //時分之間的小數(shù)點閃爍,定時器0小于0.5秒,小數(shù)點亮
    {
  wx2=1; P0=table[bai]+0X80;  delay1(2); wx2=0; //時個位打開小數(shù)點
  wx3=1; P0=table1[shi]+0X80; delay1(2); wx3=0; //分十位+小數(shù)點
    }
      else    //定時器0大于0.5秒,小數(shù)點滅
    {
  wx2=1; P0=table[bai];       delay1(2); wx2=0;  //時個位關閉小數(shù)點
  wx3=1; P0=table1[shi];      delay1(2); wx3=0;  //分十位關閉小數(shù)點
    }   
  wx4=1; P0=table1[ge];       delay1(2); wx4=0;  //分個位    
  wx5=1; P0=table[temp/10];   delay1(2); wx5=0;  //溫度十位
        wx6=1; P0=table[temp%10];   delay1(2); wx6=0;  //溫度個位
  wx7=1; P0=table[12];        delay1(2); wx7=0;  //溫度℃
        wx8=1; P0=table[13];        delay1(2); wx8=0;  //溫度℃ 

    if((n1==qian)&&(n2==bai)&&(z1==shi)&&(z2=ge)) { bi(2000);}
    if((H1==temp/10)&(H2==temp%10))           { bi(1000); }
    if((L1==temp/10)&(L2==temp%10))           { bi(500); }
  }

//時間調整顯示
if((K1num==1 )&&(K2num==0))
    {
     TR1=0; 
     wx1=1; P0=table[qian];      delay1(2); wx1=0;   //時十位 
  wx2=1; P0=table[bai]+0X80;  delay1(2); wx2=0;   //時個位,小數(shù)點停止不動
  wx3=1; P0=table1[shi]+0X80; delay1(2); wx3=0;   //分十位,小數(shù)點停止不動
  wx4=1; P0=table1[ge];       delay1(2); wx4=0;   //分個位  
  wx5=1; P0=0xBF;             delay1(2); wx5=0; //-
  wx6=1; P0=0x92;             delay1(2); wx6=0;   //s 
  wx7=1; P0=0x87;             delay1(2); wx7=0;   //t  
  wx8=1; P0=0xBF;             delay1(2); wx8=0; //-
  }
if((K1num==1 )&&(K2num==1))
    {
     TR1=1; 
 if (count2<60)
    {wx1=1; P0=table[qian];      delay1(2); wx1=0; }  //時十位       
  else {wx1=1; P0=0xff;             delay1(2); wx1=0; }  //時十位 
  wx2=1; P0=table[bai]+0X80;  delay1(2); wx2=0;    //時個位,小數(shù)點停止不動
  wx3=1; P0=table1[shi]+0X80; delay1(2); wx3=0;    //分十位,小數(shù)點停止不動
  wx4=1; P0=table1[ge];       delay1(2); wx4=0;    //分個位  
  wx5=1; P0=0xBF;             delay1(2); wx5=0;  //-
  wx6=1; P0=0x92;             delay1(2); wx6=0;    //s 
  wx7=1; P0=0x87;             delay1(2); wx7=0;    //t  
  wx8=1; P0=0xBF;             delay1(2); wx8=0;  //-
   }
if((K1num==1 )&&(K2num==2))
    {
     TR1=1;  
     wx1=1; P0=table[qian];      delay1(2); wx1=0;   //時十位       
 if (count2<60)
    {wx2=1; P0=table[bai]+0X80; delay1(2); wx2=0; }  //時個位,小數(shù)點停止不動 
  else {wx2=1; P0=0xff;            delay1(2); wx2=0; }
  wx3=1; P0=table1[shi]+0X80; delay1(2); wx3=0;   //分十位,小數(shù)點停止不動
  wx4=1; P0=table1[ge];       delay1(2); wx4=0;   //分個位  
  wx5=1; P0=0xBF;             delay1(2); wx5=0; //-
  wx6=1; P0=0x92;             delay1(2); wx6=0;   //s 
  wx7=1; P0=0x87;             delay1(2); wx7=0;   //t  
  wx8=1; P0=0xBF;             delay1(2); wx8=0; //-
   }
if((K1num==1 )&&(K2num==3))
    {
     TR1=1;
     wx1=1; P0=table[qian];      delay1(2); wx1=0;   //時十位       
  wx2=1; P0=table[bai]+0X80;  delay1(2); wx2=0;   //時個位,小數(shù)點停止不動
 if (count2<60)
    {wx3=1; P0=table1[shi]+0X80; delay1(2); wx3=0; } //分十位,小數(shù)點停止不動
  else {wx3=1; P0=0xff;             delay1(2); wx3=0; }
  wx4=1; P0=table1[ge];       delay1(2); wx4=0;   //分個位  
  wx5=1; P0=0xBF;             delay1(2); wx5=0; //-
  wx6=1; P0=0x92;             delay1(2); wx6=0;   //s 
  wx7=1; P0=0x87;             delay1(2); wx7=0;   //t  
  wx8=1; P0=0xBF;             delay1(2); wx8=0; //-
    }
if((K1num==1 )&&(K2num==4))
    {
     TR1=1; 
     wx1=1; P0=table[qian];      delay1(2); wx1=0;  //時十位       
  wx2=1; P0=table[bai]+0X80;  delay1(2); wx2=0;  //時個位,小數(shù)點停止不動
  wx3=1; P0=table1[shi]+0X80; delay1(2); wx3=0;  //分十位,小數(shù)點停止不動
 if (count2<60)
    {wx4=1; P0=table1[ge];       delay1(2); wx4=0; }//分個位
  else {wx4=1; P0=0xff;             delay1(2); wx4=0; }  
  wx5=1; P0=0xBF;             delay1(2); wx5=0; //-
  wx6=1; P0=0x92;             delay1(2); wx6=0;   //s 
  wx7=1; P0=0x87;             delay1(2); wx7=0;   //t  
  wx8=1; P0=0xBF;             delay1(2); wx8=0; //-
  }


//鬧鐘調整顯示
if(( K1num==2 )&&(K3num==0))
    {
     TR1=0;   
     wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //-
  wx3=1; P0=table1[n1];       delay1(2); wx3=0; //時十位
  wx4=1; P0=table1[n2];       delay1(2); wx4=0;  //時個位 
  wx5=1; P0=0x8E;             delay1(2); wx5=0; //F
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
  wx7=1; P0=table[z1];        delay1(2); wx7=0;   //分十位  
  wx8=1; P0=table[z2];     delay1(2); wx8=0; //分個位
    }
if (( K1num==2 )&&(K3num==1))
        {
  TR1=1;
  wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //-
 if (count2<60)
    {wx3=1; P0=table1[n1];       delay1(2); wx3=0;} //時十位
  else {wx3=1; P0=0xff;      delay1(2); wx3=0;}
  wx4=1; P0=table1[n2];       delay1(2); wx4=0;  //時個位 
  wx5=1; P0=0x8E;             delay1(2); wx5=0; //F
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
  wx7=1; P0=table[z1];        delay1(2); wx7=0;   //分十位  
  wx8=1; P0=table[z2];     delay1(2); wx8=0; //分個位
  }
if(( K1num==2 )&&(K3num==2))
        {
  TR1=1;
  wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //-
     wx3=1; P0=table1[n1];       delay1(2); wx3=0; //時十位
 if(count2<60)
  {wx4=1; P0=table1[n2];       delay1(2); wx4=0;}  //時個位 
 else{wx4=1; P0=0xff;       delay1(2); wx4=0;}
     wx5=1; P0=0x8E;             delay1(2); wx5=0; //F
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
  wx7=1; P0=table[z1];        delay1(2); wx7=0;   //分十位  
  wx8=1; P0=table[z2];     delay1(2); wx8=0; //分個位
  }
if (( K1num==2 )&&(K3num==3))
        {
  TR1=1;
  wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //-
     wx3=1; P0=table1[n1];       delay1(2); wx3=0; //時十位
  wx4=1; P0=table1[n2];       delay1(2); wx4=0;  //時個位 
     wx5=1; P0=0x8E;             delay1(2); wx5=0; //F
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
 if(count2<60)
  {wx7=1; P0=table[z1];        delay1(2); wx7=0;}   //分十位 
    else{wx7=1; P0=0xff;        delay1(2); wx7=0;}   
  wx8=1; P0=table[z2];     delay1(2); ;wx8=0; //分個位
  }
if (( K1num==2 )&&(K3num==4))
        {
  TR1=1;
  wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //-
     wx3=1; P0=table1[n1];       delay1(2); wx3=0; //時十位
  wx4=1; P0=table1[n2];       delay1(2); wx4=0;  //時個位 
     wx5=1; P0=0x8E;             delay1(2); wx5=0; //F
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
     wx7=1; P0=table[z1];        delay1(2); wx7=0;   //分十位 
  if(count2<60)  
  {wx8=1; P0=table[z2];     delay1(2); wx8=0;} //分個位
 else{wx8=1; P0=0xff;     delay1(2); wx8=0;}
  }

     
//溫度調整顯示
if( (K1num==3)&&(K4num==0) )
    {
     TR1=0;   
     wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //-
  wx3=1; P0=table1[H1];       delay1(2); wx3=0; //時十位
  wx4=1; P0=table1[H2];       delay1(2); wx4=0;  //時個位 
  wx5=1; P0=0xC7;             delay1(2); wx5=0; //L
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
  wx7=1; P0=table[L1];        delay1(2); wx7=0;   //分十位  
  wx8=1; P0=table[L2];     delay1(2); wx8=0; //分個位
    }

if( (K1num==3)&&(K4num==1) )
    {
     TR1=1;   
     wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //-
  if(count2<60)
  {wx3=1; P0=table1[H1];       delay1(2); wx3=0;} //時十位
  else
  {wx3=1; P0=0xff;       delay1(2); wx3=0;}
  wx4=1; P0=table1[H2];       delay1(2); wx4=0;  //時個位 
  wx5=1; P0=0xC7;             delay1(2); wx5=0; //L
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
  wx7=1; P0=table[L1];        delay1(2); wx7=0;   //分十位  
  wx8=1; P0=table[L2];     delay1(2); wx8=0; //分個位
    }    

if( (K1num==3)&&(K4num==2) )
    {
     TR1=1;   
     wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //-
  wx3=1; P0=table1[H1];       delay1(2); wx3=0; //時十位
 if(count2<60) 
  {wx4=1; P0=table1[H2];      delay1(2); wx4=0;}  //時個位
 else {wx4=1; P0=0xff;           delay1(2); wx4=0;}  
  wx5=1; P0=0xC7;             delay1(2); wx5=0; //L
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
  wx7=1; P0=table[L1];        delay1(2); wx7=0;   //分十位  
  wx8=1; P0=table[L2];     delay1(2); wx8=0; //分個位
    } 
    
if( (K1num==3)&&(K4num==3) )
    {
     TR1=1;   
     wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //- 
  wx3=1; P0=table1[H1];       delay1(2); wx3=0; //時十位
  wx4=1; P0=table1[H2];       delay1(2); wx4=0;  //時個位 
  wx5=1; P0=0xC7;             delay1(2); wx5=0; //L
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //- 
 if(count2<60)
  {wx7=1; P0=table[L1];        delay1(2); wx7=0;}   //分十位 
     else {wx7=1; P0=0xff;        delay1(2); wx7=0;}   
  wx8=1; P0=table[L2];     delay1(2); wx8=0; //分個位
    }          

if( (K1num==3)&&(K4num==4) )
    {
     TR1=1;   
     wx1=1; P0=0x89;             delay1(2); wx1=0;   //H 
  wx2=1; P0=0xBF;             delay1(2); wx2=0; //- 
  wx3=1; P0=table1[H1];       delay1(2); wx3=0; //時十位
  wx4=1; P0=table1[H2];       delay1(2); wx4=0;  //時個位 
  wx5=1; P0=0xC7;             delay1(2); wx5=0; //L
  wx6=1; P0=0xBF;             delay1(2); wx6=0;   //-  
  wx7=1; P0=table[L1];        delay1(2); wx7=0;   //分十位
 if(count2<60)     
  {wx8=1; P0=table[L2];     delay1(2); wx8=0;} //分個位
 else{wx8=1; P0=0xff;     delay1(2); wx8=0;}
    }

 

 


//喇叭開啟關閉顯示
if( (K1num==4)&&(K5num==0) )
    {
     TR1=0;   
     wx1=1; P0=0x92;             delay1(2); wx1=0;   //S 
  wx2=1; P0=0x8C;             delay1(2); wx2=0; //P
  wx3=1; P0=0x81;             delay1(2); wx3=0; //A
  wx4=1; P0=0xF0;             delay1(2); wx4=0;  //C 
  wx5=1; P0=0xBF;             delay1(2); wx5=0; //-
  wx6=1; P0=0xF7;             delay1(2); wx6=0;   //_ 
  wx7=1; P0=0xF7;             delay1(2); wx7=0;   //_  
  wx8=1; P0=0xBF;             delay1(2); wx8=0; //-
    }
    
if( (K1num==4)&&(K5num==1) )
    {
     TR1=1;   
     wx1=1; P0=0x92;             delay1(2); wx1=0;   //S 
  wx2=1; P0=0x8C;             delay1(2); wx2=0; //P
  wx3=1; P0=0x81;             delay1(2); wx3=0; //A
  wx4=1; P0=0xF0;             delay1(2); wx4=0;  //C 
  wx5=1; P0=0xBF;             delay1(2); wx5=0; //-
  wx6=1; P0=0xC0;             delay1(2); wx6=0;   //o 
  wx7=1; P0=0x8E;             delay1(2); wx7=0;   //F  
  wx8=1; P0=0x8E;             delay1(2); wx8=0; //F
    }
    
if( (K1num==4)&&(K5num==2) )
    {
     TR1=1;   
     wx1=1; P0=0x92;             delay1(2); wx1=0;   //S 
  wx2=1; P0=0x8C;             delay1(2); wx2=0; //P
  wx3=1; P0=0x81;             delay1(2); wx3=0; //A
  wx4=1; P0=0xF0;             delay1(2); wx4=0;  //C 
  wx5=1; P0=0xBF;             delay1(2); wx5=0; //-
  wx6=1; P0=0xC0;             delay1(2); wx6=0;   //o 
  wx7=1; P0=0xC8;             delay1(2); wx7=0;   //n  
  wx8=1; P0=0xBF;             delay1(2); wx8=0; //-
    }                           
   }  
  

 

 

 
//////////////////////////////////////////////////////////////////////////////////// 
///////////////////按鍵功能設置///////////////////////////////////////////////////// 
//////////////////////////////////////////////////////////////////////////////////// 
  void keycan()
  {
  /**********模式選擇***********/
  if( K1==0  )  { K1num++; delay(5);
  if( K1==0  )  { while(!K1); bi(350);
  if(K1num==5)  { K1num=0;bi(650);TR0=1;TR1=0;} } }
             
  if(K1num!=0) 
    {
  if( K2==0  )  { K2num++; K3num++; K4num++; K5num++; delay(5);
     if( K2==0  )  { while(!K2);bi(100); TR1=1;
  {
  if(K2num==5)  { K2num=0;bi(400);TR1=0;}
  if(K3num==5)  { K3num=0;bi(400);TR1=0;} 
  if(K4num==5)  { K4num=0;bi(400);TR1=0;} 
  if(K5num==3)  { K5num=0;bi(400);TR1=0;} }}}  }
   
   if(K1num!=0)  //加
    {
  if( K3==0 )  { delay(5);
  if( K3==0 )  { while(!K3); bi(100);
  if((K1num==1)&&(K2num==1)) { qian++; if(qian==3 ) qian=0; }      
        if((K1num==1)&&(K2num==2)) {  bai++; if( bai==10)  bai=0; }
     if((K1num==1)&&(K2num==3)) {  shi++; if( shi==6 )  shi=0; }
     if((K1num==1)&&(K2num==4)) {   ge++; if(  ge==10)   ge=0; } 
  if((K1num==2)&&(K3num==1)) {   n1++; if(  n1==3 )   n1=0; }
  if((K1num==2)&&(K3num==2)) {   n2++; if(  n2==10)   n2=0; }
  if((K1num==2)&&(K3num==3)) {   z1++; if(  z1==6 )   z1=0; }
  if((K1num==2)&&(K3num==4)) {   z2++; if(  z2==19)   z2=0; }
  if((K1num==3)&&(K4num==1)) {   H1++; if(  H1==10)   H1=0; }
  if((K1num==3)&&(K4num==2)) {   H2++; if(  H2==10)   H2=0; }
  if((K1num==3)&&(K4num==3)) {   L1++; if(  L1==10)   L1=0; }
  if((K1num==3)&&(K4num==4)) {   L2++; if(  L2==10)   L2=0; }
  if((K1num==4)&&(K5num==1)) {   BEEP=0; }                                  
     }  }
               
   if( K4==0 )  { delay(5);
   if( K4==0 )  { while(!K4); bi(100);
  if((K1num==1)&&(K2num==1)) { qian--; if(qian==-1) qian=2; }      
        if((K1num==1)&&(K2num==2)) {  bai--; if( bai==-1)  bai=9; }
     if((K1num==1)&&(K2num==3)) {  shi--; if( shi==-1)  shi=5; }
     if((K1num==1)&&(K2num==4)) {   ge--; if(  ge==-1)   ge=9; }
  if((K1num==2)&&(K3num==1)) {   n1--; if(  n1==-1)   n1=2; }
  if((K1num==2)&&(K3num==2)) {   n2--; if(  n2==-1)   n2=9; }
  if((K1num==2)&&(K3num==3)) {   z1--; if(  z1==-1)   z1=5; }
  if((K1num==2)&&(K3num==4)) {   z2--; if(  z2==-1)   z2=9; }
  if((K1num==3)&&(K4num==1)) {   H1--; if(  H1==-1)   H1=9; }
  if((K1num==3)&&(K4num==2)) {   H2--; if(  H2==-1)   H2=9; }
  if((K1num==3)&&(K4num==3)) {   L1--; if(  L1==-1)   L1=9; }
  if((K1num==3)&&(K4num==4)) {   L2--; if(  L2==-1)   L2=9; }
  if((K1num==4)&&(K5num==2)) {   bi(); }   
    }
   } 
  }
    }

 

 

///////////////////////////////////////////// 
////////////////
/////////////////////////////////////////////////////////////
/***********主函數(shù)********************/
////////////////////////////////////////////////////////////
 void main()
 { 
    BEEP=0;
    init1();
 init2();
    qian=0;bai=6;shi=3;ge=0;miao2=0;miao1=0,H1=H2=L1=L2=2,n1=n2=z1=z2=1;
    while(1)
     {         
       ReadTemperature();
    keycan();
       MODE();
    
     }
  }


關閉窗口

相關文章

99在线欧洲视频| 成人久久久精品乱码一区二区三区| 六九午夜精品视频| 2020av在线| 国内老司机av在线| 先锋成人av| 日本在线视频中文有码| 中文在线字幕免费观看| av黄色在线观看| 日韩a在线观看| 深夜福利视频在线免费观看| 调教在线观看| 在线一级视频| 亚洲高清毛片一区二区| 黄色国产在线观看| 亚洲中文字幕一区| 精品视频站长推荐| 久久精品老司机| 中文幕无线码中文字蜜桃| 亚洲观看黄色网| 国产精品无码在线| 久久视频精品在线观看| 成人免费视频入口| 黄色a级片在线观看| 麻豆一区产品精品蜜桃的特点| 麻豆视频在线免费看| 国产亚洲精品码| 国产精品va无码一区二区三区| 天天干在线播放| 一区二区三区免费在线视频| 亚洲国产精品久久久久久6q| 性感美女视频一二三| 精品国产高清a毛片无毒不卡| 国产红桃视频| h七七www色午夜日本| 中文字幕视频在线免费| 91ph在线| 这里有精品可以观看| 欧美成人三级| 亚洲人成网亚洲欧洲无码| 视频小说一区二区| 欧美国产91| 日本美女一区二区三区视频| 国产99精品国产| 国产精品你懂的| 欧美日韩激情美女| 5858s免费视频成人| 日韩精品在线影院| 九九热精品视频国产| 国产精品久久久91| 九九热久久66| 91视频 - 88av| 岛国av在线免费| 好男人香蕉影院| 麻豆天美蜜桃91| 国产乱码在线观看| 国语对白中文字幕| 色综合小说天天综合网| 免费在线观看污视频| 午夜视频免费在线| 欧美四级剧情无删版影片| h版电影在线播放视频网址| 亚洲а∨精品天堂在线| 成人在线视频亚洲| 国产亚洲久久| 欧美伊人影院| 国产精品99久久久久久宅男| ㊣最新国产の精品bt伙计久久| 欧洲激情一区二区| 亚洲人成网站免费播放| 日本国产一区二区三区| 免费电影一区| 午夜免费一区二区| 国精产品久拍自产在线网站| 日韩欧美一级大片| 精品一区二区观看| 一级二级在线观看| 美女的胸无遮挡在线观看| 在线综合色站| 一本色道久久综合| 国产清纯美女被跳蛋高潮一区二区久久w| 午夜激情久久久| 亚洲免费视频一区二区| 国产精品爽黄69| 伊人久久大香线蕉成人综合网| 中国黄色片一级| 91高清免费观看| 天天操天天射天天舔| 色视频网站在线观看| 欧美性video| 三级小说欧洲区亚洲区| 日韩不卡手机在线v区| 亚洲精品国产精品乱码不99| 精品国产乱码久久久久久闺蜜 | 久久一二三国产| 91久久国产最好的精华液| 亚洲图片在线综合| 成人免费观看网址| av动漫免费看| 麻豆疯狂做受xxxx高潮视频| 五月婷婷丁香六月| 日本我和搜子同居的日子高清在线| 三级网站视频在在线播放| 欧美日韩性在线观看| 成人午夜在线播放| 欧美日韩精品一区二区| 1000部国产精品成人观看| 亚洲激情在线观看视频免费| 国产日韩视频在线观看| 丰满少妇被猛烈进入高清播放| 久久精品亚洲a| 欧美乱大交xxxxx免费| 成人影视在线播放| 偷窥自拍亚洲色图精选| 国产精品自拍网站| 精品视频在线免费观看| 国产成人+综合亚洲+天堂| 日韩极品视频在线观看 | 国产大学生av| 国产裸体永久免费无遮挡| 免费黄色av电影| 成人污污视频| 精品一区二区三区蜜桃| 欧美亚一区二区| 国产精品99一区| 女性隐私黄www网站视频| 日本少妇裸体做爰| 福利视频网站导航| 电影在线观看一区二区| 日韩中文字幕亚洲一区二区va在线| 精品成人av一区| 欧美一级在线亚洲天堂| 成年人黄色片视频| 做爰无遮挡三级| 一级一片免费视频| 天海翼精品一区二区三区| 93久久精品日日躁夜夜躁欧美| 亚洲第一精品夜夜躁人人躁| 鲁丝一区鲁丝二区鲁丝三区| 日韩乱码人妻无码中文字幕久久| 欧美最猛性xxxx免费| 色呦呦呦在线观看| 日韩一级在线| 欧美在线色视频| 成人免费视频网站入口| 国产精品久久久免费观看| 亚洲欧美日韩色图| 国产精品原创| 另类小说欧美激情| 亚洲精品一区二区三区四区高清| 久久久久se| 国语对白在线播放| av网址观看| 盗摄系列偷拍视频精品tp| xfplay精品久久| 日韩在线中文字| 老子影院午夜伦不卡大全| 在线观看免费国产视频| 色偷偷免费视频| 国产欧美日韩精品一区二区三区| 亚洲男人的天堂在线观看| 777午夜精品福利在线观看| 岛国毛片在线播放| 天堂av手机版| 蜜臀久久精品| 丰满亚洲少妇av| 日韩有码在线电影| 成人毛片视频网站| 亚洲成人av综合| av有码在线观看| 国产精品一色哟哟哟| 亚洲香蕉成人av网站在线观看| av动漫在线播放| 91国内精品久久久| 特级丰满少妇一级aaaa爱毛片| 欧美日韩影视| 亚洲人成人一区二区三区| 欧美喷水一区二区| 欧美亚洲一级二级| 日韩黄色a级片| 亚洲私人影吧| 国产日韩1区| 精品粉嫩超白一线天av| wwwwww欧美| 国内毛片毛片毛片毛片| 国产理论在线| 91免费版在线| 欧美在线中文字幕| 先锋资源av在线| eeuss性xxxxxx电影| 日韩久久精品| 欧美剧情片在线观看| 亚洲资源视频| 国产人妻精品一区二区三区| 色黄视频在线观看| 久久精品一二三| 国产精品福利小视频| 欧美激情久久久久久久| 特黄国产免费播放| 日韩天堂av| 亚洲午夜精品久久久久久性色| 国产又大又黄又粗又爽| fpee性欧美| 午夜欧洲一区| 欧美婷婷六月丁香综合色| 一区二区免费在线观看| 国产三级三级在线观看| 三级成人黄色影院| 成人欧美一区二区三区小说| 国产成人av一区二区三区| 久久亚洲天堂网| 手机在线免费av| 久久青草欧美一区二区三区| 成人性生交大片免费观看嘿嘿视频| 成人观看免费视频| 色综合久久久久综合一本到桃花网| 久久av中文字幕片| 97在线观看免费| jizz日本在线播放| 国产小视频在线| 国内精品久久久久影院一蜜桃| 久久久久久久国产精品| 亚洲精品一区二区三区影院忠贞| 无线免费在线视频| 国产电影一区二区三区| 国产精品欧美日韩| 日韩av黄色片| 在线观看网站免费入口在线观看国内 | 久久久久久福利| 激情视频在线观看| av亚洲精华国产精华| 国产一区二区香蕉| 少妇高潮av久久久久久| sese综合| 欧美日韩国产专区| 青草视频在线观看视频| 国产精彩自拍| 欧美日韩国产高清| 久久天堂av综合合色| 国产又粗又黄又猛| 无遮挡的视频在线观看| 国产欧美精品一区二区色综合朱莉| 国产传媒一区二区| 亚洲精品国产片| 美女一区2区| 亚洲国产私拍精品国模在线观看| 午夜大片在线观看| 自拍av在线| 9久草视频在线视频精品| 97视频资源在线观看| 国产老妇伦国产熟女老妇视频 | 狠狠色狠狠色综合日日小说| 欧美一级中文字幕| 岳张嘴把我的精子吞下去| 亚洲午夜91| 国内久久久精品| 国产www在线| 国产精品中文| 欧美成人性战久久| 国产精品久久久久久亚洲色| av在线资源站| 国产精品久久久久久户外露出| 日韩影院一区| 国产精品第八页| 一本色道久久综合| 国产成人精品日本亚洲| 超碰在线免费97| 亚洲午夜精品| 亚洲精品成人久久电影| 中文字幕一区二区三区人妻电影| 免费观看在线黄色网| 亚洲精品成人天堂一二三| 欧美午夜性视频| 国产午夜在线| 久久久国产精品午夜一区ai换脸 | 亚洲a视频在线观看| 成人久久综合| 久久久久久久久久国产| 亚州国产精品视频| 日韩欧美中文字幕一区二区三区| 日韩成人激情在线| 日日碰狠狠添天天爽| 在线视频超级| 日韩一区二区在线看| 30一40一50老女人毛片| 福利影院在线看| 欧美日韩一级视频| 亚洲美女精品视频| 天天操天天干天天舔| 色婷婷亚洲mv天堂mv在影片| 麻豆国产va免费精品高清在线| 五月婷婷开心网| 国产丝袜一区| 中文欧美在线视频| www毛片com| 亚洲精品456| 色综合久综合久久综合久鬼88| 免费看日批视频| 国模吧精品视频| 久久久久久91| 91国内精品视频| 欧美成人国产| 国产人妖伪娘一区91| 亚洲欧美综合在线观看| 久久成人一区| 国产一级精品aaaaa看| 多人欧美交性姿势| 成人av免费在线观看| 黄黄视频在线观看| 亚洲男男gay视频| 亚洲视频在线一区观看| 少妇激情一区二区三区| eeuss影院www在线观看| 欧美日韩一区二区免费视频| 野战少妇38p| 中文一区一区三区高中清不卡免费 | 91网页在线看| 国产精品国产三级国产| 亚洲成人av免费看| 在线观看的网站你懂的| 3atv在线一区二区三区| 天天操夜夜操av| 老司机精品在线| 午夜精品在线视频| 先锋av资源站| 国产乱子轮精品视频| 黄色a级在线观看| 尤物视频在线观看| 91福利小视频| 99国产精品免费| 成人爽a毛片| 日本午夜人人精品| 午夜国产一级| 成人国产一区二区三区精品| 久久婷婷五月综合色国产香蕉| 调教视频免费在线观看| 欧美精品九九99久久| 日韩网站在线播放| 久久国产精品美女| 98精品国产高清在线xxxx天堂| 性高潮久久久久久久久久| 国产精品一卡二卡在线观看| 草b视频在线观看| 快射av在线播放一区| 亚洲精品久久久久久久久| 国产高清中文字幕| 国产综合激情| 亚洲国产高清国产精品| 日韩三级电影网| 91精品国产免费| 亚洲中文字幕无码爆乳av| 亚洲高清网站| 欧美亚州在线观看| 青青草视频免费在线观看| 制服丝袜av成人在线看| 国产无套粉嫩白浆内谢| 狠狠入ady亚洲精品| 欧美婷婷久久| 日韩a在线看| 日韩精品高清在线| 日韩av一卡二卡三卡| 在线观看爽视频| 欧美大秀在线观看| 四虎国产成人免费观看| 中文字幕av在线一区二区三区| 日本天堂在线播放| aiss精品大尺度系列| 亚洲www视频| 白白色在线发布| 91精品国产色综合久久不卡电影| 精品一区二三区| 精品亚洲成a人| 天天综合狠狠精品| 老司机午夜在线| 伊人亚洲福利一区二区三区| 成人影院午夜久久影院| 国产精品免费视频网站| 欧美另类z0zx974| 91精品国产调教在线观看| 欧美日韩中文国产一区发布 | 亚洲爆乳无码专区| 欧美成人毛片| 亚洲最大福利网站| 又黄又爽在线观看| 欧美变态口味重另类| 性一交一乱一乱一视频| caoporn国产一区二区| 精品人妻二区中文字幕| 国产一区二区三区91| 日韩欧美一区二区三区四区五区 | 国产精品人成在线观看免费| 一区二区精品免费| 色777狠狠狠综合伊人| 日韩第一页在线观看| missav|免费高清av在线看| 欧美精品久久久久久久久| 天干天干啦夜天天天视频| 在线观看国产一区二区| 6—12呦国产精品| 日本一区二区三区四区 |