亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wendu.c

?? 可以將單片機與繼電器以及溫度傳感器結合實現溫度自動控制系統.例如可以用單片機顯示溫度傳感器測到的溫度,還可以在溫度到達一定界限時控制繼電器的通斷以達到控制電路通斷的效果.
?? C
?? 第 1 頁 / 共 2 頁
字號:
    while (i>0) i--;
}

/* 等待應答脈沖 */
void RxWait(void)
{
    uint i;
    while(DQ);
    while(~DQ);         // 檢測到應答脈沖 
    i = 4;
    while (i>0) i--;
}

/* 讀取數據的一位,滿足讀時隙要求 */ 
bit RdBit(void)
{
    uint i;
    bit b;
    DQ = 0;
    i++;
    DQ = 1;
    i++;i++;            // 延時15us以上,讀時隙下降沿后15us,DS18B20輸出數據才有效
    b = DQ;
    i = 8;
    while(i>0) i--;
    return (b);
}

/* 讀取數據的一個字節 */
uchar RdByte(void)
{
    uchar i,j,b;
    b = 0;
    for (i=1;i<=8;i++)
    {
        j = RdBit();
        b = (j<<7)|(b>>1);
    }
    return(b);
}

/* 寫數據的一個字節,滿足寫1和寫0的時隙要求 */
void WrByte(uchar b)
{
    uint i;
    uchar j;
    bit btmp;
    for(j=1;j<=8;j++)
    {
        btmp = b&0x01;
        b = b>>1;       // 取下一位(由低位向高位)
        if (btmp)
    	{
            /* 寫1 */
            DQ = 0;
        	i++;
                        i++;    // 延時,使得15us以內拉高
            DQ = 1;
            i = 8;
            while(i>0) i--; // 整個寫1時隙不低于60us 
       	}
        else
    	{
            /* 寫0 */
            DQ = 0;			
            i = 8;
            while(i>0) i--; // 保持低在60us到120us之間
            DQ = 1;
        	i++;
        	i++;
    	}
    }
}

/* 啟動溫度轉換 */
void convert(void)
{
    TxReset();          // 產生復位脈沖,初始化DS18B20
    RxWait();           // 等待DS18B20給出應答脈沖
    delay2(1);          // 延時
    WrByte(0xcc);               // skip rom 命令
    WrByte(0x44);               // convert T 命令
}

/* 讀取溫度值 */
void RdTemp(void)
{
    TxReset();          // 產生復位脈沖,初始化DS18B20 
    RxWait();           // 等待DS18B20給出應答脈沖
    delay2(1);          // 延時
    WrByte(0xcc);               // skip rom 命令
    WrByte(0xbe);               // read scratchpad 命令
    tplsb = RdByte();           // 溫度值低位字節(其中低4位為二進制的“小數”部分)
    tpmsb = RdByte();           // 高位值高位字節(其中高5位為符號位)		
}

void cmpare(void)
{   
      alert=0;
   if(num[tem1[1]]>d[0]) alert=1;
   else if(num[tem1[1]]==d[0]) 
     {if(num[tem1[2]]>=d[1])  alert=1;
      else alert=0;
      }
    else alert=0;
     
}

tempreture()
{
      uchar i,j;
      lcd_wrcmd(0x80);
       for(i=0;i<15;i++)
       lcd_wrdata(str2[i]);
    
    while(1)
    {
      delay2(1);
      convert();
      delay2(500);
      RdTemp();
      temp1=(tpmsb<<4)|(tplsb>>4);
      temp2=tplsb&0x0f;
/*    for(i=0;i<3;i++)
     {  k=10^(2-i); 
      tem1[i]=temp1/k;
       temp1=temp1%k;
       lcd_wrcmd(0xc0+i);
       lcd_wrdata(num[tem1[i]]); 
       }  
       lcd_wrdata('.');
       temp2=temp2*625;
        for(i=0;i<4;i++)
     { tem2[i]=temp2/(10^(3-i));
       temp2=temp2%(10^(3-i));
       lcd_wrcmd(0xc4+i);
       lcd_wrdata(num[tem2[i]]); 
       } 
       lcd_wrdata(2);
       lcd_wrdata(3);

*/   
         j=getkey();             //返回
         if(j==0)
         {  lcd_wrcmd(1);
           state=1;
           break;
          }

      tem1[0]=temp1/100;
       temp1=temp1%100;
      tem1[1]=temp1/10;
       temp1=temp1%10;
       tem1[2]=temp1;



       temp2=temp2*625;
       tem2[0]=temp2/1000;
       temp2=temp2%1000;
       tem2[1]=temp2/100;
       temp2=temp2%100;
       tem2[2]=temp2/10;
       temp2=temp2%10;
       tem2[3]=temp2;  

       lcd_wrcmd(0xc0);    //顯示當前溫度
      for(i=0;i<3;i++)
       lcd_wrdata(num[tem1[i]]);

       lcd_wrdata('.');

       lcd_wrcmd(0xc4);
      for(i=0;i<4;i++)
        lcd_wrdata(num[tem2[i]]);
        lcd_wrdata(2);
        lcd_wrdata('C'); 
    	  
       lcd_wrcmd(0xcc);    //顯示比較溫度
        for(i=0;i<2;i++)
        lcd_wrdata(d[i]);
        lcd_wrdata(2);
        lcd_wrdata('C'); 

      cmpare();     //比較

     	 
    
        
      }

}
       


/*tempreture()
{ uchar i;
lcd_wrcmd(offset+0x00);
    for(i=0;i<4;i++)   
     {
       lcd_wrdata(d[i]);    
      } 
} */



input()
{     
       uchar i,j,cnt=0;  // 假如將cnt定義成全局變量,當退出這個界面時,cnt仍然保存原來的值        
       lcd_wrcmd(0x80);  //會出現光標亂跳的錯誤
       lcd_wrcmd(0xce);
       lcd_wrdata(2);
       lcd_wrdata('C');
       lcd_wrcmd(0x81);
       for(i=0;i<13;i++)lcd_wrdata(am[i]);
       lcd_wrcmd(0x0f);
       lcd_wrcmd(0xc0);
       while(1)                  //按鍵處理
       { 
           i=getkey();
           
            if(i==0)
            {
                 state=1;
                 lcd_wrcmd(0x0c);
                 lcd_wrcmd(1);
                 lcd_wrcmd(0x80);
            	 break;
        	}
            else if(i==2)
    		{
                cnt=0;      			 					 
                lcd_wrcmd(0xc0);
                for(j=0;j<=10;j++)
                lcd_wrdata(' ');
                lcd_wrcmd(0xc0);    
    		}
            else if(i<16)
           {     cnt++;
                 if(cnt<=2)
        		 	
                 {     lcd_wrcmd(0xc0+cnt-1);
                       lcd_wrdata(table[i]);
                        d[cnt-1]=table[i];
                       	
                 }	
            	 			 
                 else
        		 {	 
                     cnt=0;					 					 
                     lcd_wrcmd(0xc0);
                     for(j=0;j<=3;j++)
                         lcd_wrdata(' ');
                     lcd_wrcmd(0xc0);
                 }
            }
    	}
     
}

////////////////////////////////////////////////////////////////////////////////////
menu()
{
     uchar i,ii,cnt=1;

     lcd_wrcmd(0x83);
     for(i=0;i<10;i++)
         lcd_wrdata(str4[i]);
     lcd_wrcmd(0xc3);
     i=0;
     while(str5[i]!='\0')
     {
        lcd_wrdata(str5[i]);
        i++;
     }
     lcd_wrcmd(0x80);
     lcd_wrdata('-');
     lcd_wrdata('>');


     while(1)
     {
         ii=getkey();
       ///////////////////////////翻屏///////////////////////////////
         if(ii==2)        
         {   cnt++;
             if(cnt==5) cnt=1;
             if(cnt==1)
        	 {
                 //////////////////////
                 // ->1: FREQENCY
                 //	  2: PHASE
                 /////////////////////
                 lcd_wrcmd(1);//clear
                 lcd_wrcmd(0x83);        //frequency
                 for(i=0;i<10;i++)
                     lcd_wrdata(str4[i]);

                 lcd_wrcmd(0xc3);       //phase
                 i=0;
                  while(str5[i]!='\0')
                  {
                       lcd_wrdata(str5[i]);
                       i++;
                  }
                  lcd_wrcmd(0x80);
                  lcd_wrdata('-');
                  lcd_wrdata('>');      	     
        	 }

             else if(cnt==2)
        	 {
                 //////////////////////
                 //     1: FREQENCY
                 //   ->2: PHASE
                 /////////////////////
                 lcd_wrcmd(1);//clear

                 lcd_wrcmd(0x83);        //frequency
                 for(i=0;i<10;i++)
                     lcd_wrdata(str4[i]);

                 lcd_wrcmd(0xc3);       //phase
                 i=0;
                  while(str5[i]!='\0')
                  {
                       lcd_wrdata(str5[i]);
                       i++;
                  }
                  lcd_wrcmd(0xc0);
                  lcd_wrdata('-');
                  lcd_wrdata('>');
        	 }
             else if(cnt==3)
        	 { 

                 //////////////////////
                 //     2: PHASE
                 //  -> 3: Amplitude 
                 /////////////////////
                 lcd_wrcmd(1);

                 lcd_wrcmd(0xc3);           //Amplitude 
                 for(i=0;i<8;i++)
                     lcd_wrdata(str6[i]);        

                  lcd_wrcmd(0x83);
                  i=0;
                  while(str5[i]!='\0')      //phase
                  {
                       lcd_wrdata(str5[i]);
                       i++;
                  }
                  lcd_wrcmd(0xc0);
                  lcd_wrdata('-');
                  lcd_wrdata('>');
        	 }
             else if(cnt==4)
        	 {

                 //////////////////////
                 //     3: Amplitude 
                 //	 -> 4: HELP
                 /////////////////////
                 lcd_wrcmd(1);
                 lcd_wrcmd(0x83);           //setting
                 for(i=0;i<8;i++)
                     lcd_wrdata(str6[i]);        
                 lcd_wrcmd(0xc3);
                 for(i=0;i<7;i++)
                     lcd_wrdata(str7[i]);   //help				
                 lcd_wrcmd(0xc0);
                 lcd_wrdata('-');
                 lcd_wrdata('>'); 
        	 }
    		 
            		 		    
    	 }
/////////////////////////OK進入///////////////////////////////////////
         else if(ii==0)
    	 {
             if(cnt==1)
        	 {
                 state=2;
                 lcd_wrcmd(1);
            	 break;
        	  }
              else if(cnt==2)
        	  {
                  state=3;
                  lcd_wrcmd(1);
            	  break;
        	  }
              else if(cnt==3)
        	  {
                  state=4;
                  lcd_wrcmd(1);
            	  break;
              }				    
              else if(cnt==4)     //help
        	  {
                  state=5;
                  lcd_wrcmd(1);
            	  break;
        	  }
         }
////////////////////////快捷鍵///////////////////////////////////////////
         else if(ii==15)
    	 {
              state=2;
              lcd_wrcmd(1);
              break;
    	 }
         else if(ii==11)
    	 {
              state=3;
              lcd_wrcmd(1);
              break;
    	 }
         else if(ii==7)
    	 {
              state=4;
              lcd_wrcmd(1);
              break;
    	 }
         else if(ii==3)
    	 {
               state=5;
              lcd_wrcmd(1);
               break;
         }    


     }




}


help()
{
    uchar i,ii;
    lcd_wrcmd(0x80);
    for(i=0;i<16;i++)
    {
        lcd_wrdata(he[i]);
    }
    while(1)
    {
        ii=getkey();
        if(ii!=0xff)
    	{
            lcd_wrcmd(1);
            state=1;
            break;
    	 }
    	
        
    }

}


main()
{
       lcd_bus=0xff;
       lcd_ini();
    while(1)
       {
           if(state==0)        welcome();
           else if(state==1)   menu();
           else if(state==2)   voltage();
           else if(state==3)   tempreture();
           else if(state==4)   input();
           else if(state==5)   help();
       }
           
}
    		



                

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一级高清片| 风间由美一区二区av101| 中文字幕一区av| 国产蜜臀av在线一区二区三区| 一本在线高清不卡dvd| 国产大陆a不卡| 国产成人免费视频| 成人午夜视频福利| 99精品视频在线观看免费| 精品一区二区三区久久| 美女视频一区二区| 极品少妇一区二区| 高清国产午夜精品久久久久久| 中文字幕不卡在线播放| 亚洲国产精品ⅴa在线观看| 亚洲精品一区二区三区99| 久久久亚洲综合| 国产精品青草综合久久久久99| 欧美性生活一区| 91精品蜜臀在线一区尤物| 欧美精品第1页| 亚洲精品一区二区三区精华液| 色综合婷婷久久| 国产欧美日韩中文久久| 国产精品美日韩| 亚洲成人第一页| 久久国产精品99精品国产| 激情综合五月婷婷| 99精品在线免费| 欧美色涩在线第一页| 精品国产伦理网| 亚洲久本草在线中文字幕| 日韩精品一二三区| 大胆亚洲人体视频| 欧美图片一区二区三区| 欧美mv和日韩mv国产网站| 国产精品第五页| 日本视频免费一区| 91色综合久久久久婷婷| 欧美一区在线视频| 一区二区三区日韩在线观看| 免费观看成人av| 99久久伊人精品| 精品国产露脸精彩对白| 一区二区三区中文字幕| 蜜臀va亚洲va欧美va天堂| 99re成人精品视频| 精品国产99国产精品| 亚洲综合在线免费观看| 国产精品99久久久久久似苏梦涵| 日韩国产精品久久| 99精品视频在线免费观看| 欧美日韩国产电影| 国产精品电影院| 国产激情视频一区二区三区欧美| 九九国产精品视频| 欧美性色aⅴ视频一区日韩精品| 成人永久aaa| 精品国产一区二区三区av性色| 日韩免费视频一区| 亚洲成人一区二区| 色综合天天狠狠| 欧美激情在线一区二区| 久久精品国产亚洲a| 欧美高清视频www夜色资源网| 在线视频观看一区| 亚洲欧美综合在线精品| 高清成人免费视频| 久久精品亚洲精品国产欧美| 亚洲成人久久影院| 欧美日韩免费观看一区二区三区| 欧美喷水一区二区| 亚洲国产日韩a在线播放| av午夜精品一区二区三区| 久久久久久免费网| 免费成人你懂的| 3d动漫精品啪啪1区2区免费| 亚洲成人动漫av| 欧美一区二区三区人| 日日夜夜精品视频天天综合网| 国产原创一区二区三区| 亚洲精品一区二区三区精华液 | 天堂一区二区在线免费观看| 色噜噜狠狠成人网p站| 国产精品丝袜91| 99这里只有精品| 亚洲色图欧美在线| 欧洲人成人精品| 亚洲va国产天堂va久久en| 欧美在线不卡一区| 日本在线播放一区二区三区| 日韩一区二区三区电影| 国产露脸91国语对白| 亚洲国产成人一区二区三区| thepron国产精品| 亚洲一区二区精品久久av| 欧美老人xxxx18| 六月丁香综合在线视频| 欧美国产一区在线| 日本乱码高清不卡字幕| 日韩综合一区二区| 久久久不卡影院| 色狠狠桃花综合| 蜜桃精品视频在线| 久久久久97国产精华液好用吗| 亚洲国产精品嫩草影院| 日韩欧美一二三四区| 国产成人亚洲精品青草天美| 中文字幕亚洲精品在线观看| 欧美无人高清视频在线观看| 精品一区二区久久| 中文字幕日韩精品一区 | 精品综合免费视频观看| 中文字幕高清一区| 欧美三级日韩在线| 六月丁香婷婷色狠狠久久| 中文字幕亚洲在| 日韩亚洲欧美在线| 在线观看日韩国产| 国产激情一区二区三区| 午夜日韩在线观看| 国产精品乱子久久久久| 欧美一区二区三区白人| 色噜噜狠狠成人中文综合| 国产一区二区影院| 国产成人精品1024| 日韩成人午夜精品| 亚洲色图视频网站| 久久久久久电影| 日韩一区二区三区在线视频| 91天堂素人约啪| 成人午夜av电影| 激情文学综合插| 日韩av中文字幕一区二区| 亚洲精品国久久99热| 国产欧美日本一区二区三区| 欧美电影免费观看高清完整版在线观看 | 91亚洲国产成人精品一区二三| 久久久亚洲高清| 欧美高清视频www夜色资源网| 亚洲国产乱码最新视频 | 亚洲尤物在线视频观看| 国产无一区二区| 精品久久久久久久久久久久久久久| 日韩精品一二三区| 亚洲国产精品久久人人爱 | 天天色综合天天| 亚洲美女淫视频| 日韩一区欧美一区| 国产精品色呦呦| 国产日韩在线不卡| 国产人久久人人人人爽| 国产视频一区二区在线| 精品久久久久久久人人人人传媒 | 精品在线观看免费| 麻豆精品一区二区三区| 日本免费新一区视频| 青椒成人免费视频| 婷婷久久综合九色国产成人| 亚洲黄色片在线观看| 亚洲一区二区不卡免费| 亚洲国产成人av网| 丝袜亚洲另类欧美| 久久av中文字幕片| 国产精品自拍av| 成人ar影院免费观看视频| 成人app在线观看| 日本精品一级二级| 欧美精选午夜久久久乱码6080| 国内不卡的二区三区中文字幕| 中文字幕日韩精品一区| 亚洲精品国产精品乱码不99 | 麻豆精品视频在线观看免费| 日本不卡的三区四区五区| 九九九久久久精品| 国产成人精品在线看| 99久久精品免费| 欧美日韩精品综合在线| 久久综合色婷婷| 亚洲激情自拍视频| 免费观看在线色综合| 国产成人精品一区二区三区四区| 亚洲综合另类小说| 日精品一区二区三区| 国产精品亚洲专一区二区三区| 天堂一区二区在线| 国产99久久久国产精品| 91久久一区二区| 精品福利av导航| 亚洲一区在线观看免费| 韩国女主播一区| 不卡高清视频专区| 6080日韩午夜伦伦午夜伦| 亚洲国产精品成人综合| 免费看欧美美女黄的网站| 成人av网站在线| 精品国产一区a| 亚洲国产三级在线| 成人网在线免费视频| 日韩免费成人网|