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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? cortrol.c

?? 在外部環(huán)境中檢測(cè)亮度
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
 else if(display_set_data<10000)
    {B[0]=display_set_data%10;
     B[1]=(display_set_data/10)%10;
     B[2]=(display_set_data/100)%10;
     B[3]=display_set_data/1000;
    }
 if(dis_set_flag==DC)
    {B[0]=23;
     B[1]=22;
	 B[2]=22;
	 B[3]=22;
	 B[4]=17;
	}

 for(i=0;i<5;i++)
 {dp_data=DD[B[i]];
  for(j=8;j>0;j--)
     {  CLK=0;
   	    if(dp_data&0x80)
	       Y=1;
		else Y=0;
	       DATA0=Y;
	       CLK=1;
		   dp_data=dp_data<<1;
     
      }  
	
  }
   STB=0;
   STB=1;
   delay(2);
   STB=0;
 
}
/******************************************定時(shí)器0中斷************************
***函數(shù)名稱(chēng):   time0()                         ****
***函數(shù)功能:  定時(shí)檢測(cè)溫度,濕度,亮度并顯示   ****
*****************************************************************************/
void time0() interrupt 1
{
  uchar key[4]; 
  TH0 = 0xa5;										// 每秒中斷100次   
  TL0 = 0x00;										// 中斷周期: 10mS    
  
  Key_scan();
  if(KeyNumber!=0xff)
    {
  //   kb_data=KeyNumber;
 	 key[kf++]=KeyNumber;
     if(kf>3)
       kf=0;
     time_count=1;
     KeyNumber=0xff;

     }
  else
    { if(time_count==1)
		{kb_data=key[0];
		 keyboard_flag=0;
		 kf=0;
		}
      time_count=0;
     }              
// if(keyflag==0)
 // {
   if(f1==200)
    {TH_F0=1;
     f3=0;
	 TH_F2=0;
     f2++;
     keyflag=0;
   	 }
   if(f2==200)
    {TH_F1=1;
     TH_F0=0;
	 f1=0;
     f3++;
	 }
   if(f3==200)
   {TH_F2=1;
   	f2=0;
	TH_F1=0;
    f1++;
    if(keyflag==1)
	TH_F2=0; 
	}
   // }
// time_count++;
//  LED=1; 
   if(serial_count>6)
     {
     	RT_Flag=1;
     } 
  }
/*****************************************************************************
/********************************鍵盤(pán)掃描中斷程序****************************
***函數(shù)名稱(chēng):  Key_scan() 
***函數(shù)功能:  鍵盤(pán)掃描               
******************************************************************************/  
/*void INTT1()interrupt 2
 {
 
     EX1=0;

    // Key_scan();
	// keyflag=0;
	// keyboard_flag=0;
     
     EX1=1;
  
 }     */
//*****************************鍵盤(pán)掃描函數(shù)*********************************************************
//*******函數(shù)名稱(chēng):Key_scan                   *********
//*******函數(shù)功能:掃描鍵盤(pán),并取得鍵值       *********
//*******修改參數(shù):KeyNumber                  *********
//**************************************************************************************************
void Key_scan()
{
  uchar i,j,pin1;
   for(i=0;i<4;i++)
    {for(j=0;j<4;j++)
	   {P2=0XFF&(~(0X01<<(3-i)));
	    pin1=P2;
	//	delay1(10);
		if(((pin1>>(4+j))&0x01)==0)
          {KeyNumber=i+j*4;
		  
		   }
        }
	 }     
 //   P2=0XF0;
//	LED=0;

}
//**************************************************************************************************** 
//******************************************按鍵查詢處理函數(shù)  ****************************************
//*******函數(shù)名稱(chēng):key_deal                                              ******************                                          
//*******函數(shù)功能:查詢按鍵,若是設(shè)置溫度,濕度鍵,就調(diào)用設(shè)置處理函數(shù)    ******************
//****************************************************************************************************  
void key_deal(void)
{
  switch(kb_data)
  {case  3:  keycost_deal(TEMP);
         
              break;
   case  7:  keycost_deal(HUMI);
              break;
   default:   break;

      
  }
 
}
//===================================================================================================
//==========================================按鍵處理函數(shù)=============================================
//********函數(shù)名稱(chēng):keycost_deal                                 ******
//********函數(shù)功能:設(shè)置溫濕度控制參數(shù)值,處理,顯示             ******
//********入口參數(shù):TEMP,HUMI,溫濕度標(biāo)志                         ******
//********出口參數(shù):無(wú)                                           ******
//********修改參數(shù): L_Temp_set, H_Temp_set,L_Hum_set,H_Hum_set ******
//===================================================================================================
void keycost_deal(unsigned char TH_flag)
 { unsigned char KD1=0,KD2=0,KD3=0,keydata=0xff;
   uchar i;
   char DDC;
   keyflag=1;
   for(i=0;i<2;i++)
   { if(TH_flag==HUMI)
      i=1;
	 DDC=1;
     Display_set(0,i); 
     keyboard_flag=1;
     while(keyboard_flag==1);
	 keydata=key_switch(kb_data); 
     if(kb_data==0x0D)                                        //按下“-”號(hào)
          {DDC=DDC*(-1);
		   Display_set(0,DC);
		   keyboard_flag=1;
		 //  KeyNumber=0xff;
		   }
	 else if(kb_data==0x0E)                                   //按下"返回"鍵
	       return;
//=======================第一次數(shù)字鍵============================================	
     while(keyboard_flag==1);
	 keydata=key_switch(kb_data); 
	 if(keydata>=0&&keydata<=9)                     
	      {KD1=keydata;
		   Display_set((keydata*DDC),i);
         
          }
     else if(keydata==0x0E)                                   //按下"返回"鍵
          return;
	 else 
	      {error_bell();                                      //蜂鳴器報(bào)錯(cuò)誤信號(hào)
		   return;
		   }
//=======================第二次數(shù)字鍵============================================
	 keyboard_flag=1;
     while(keyboard_flag==1);
	 keydata=key_switch(kb_data); 
	 
     if(keydata>=0&&keydata<=9)
		 {
			Display_set(((KD1*10+keydata)*DDC),i);
			// F++;
			KD2=keydata;
		//	KeyNumber=0xff;
		 
		  }
	 else if(kb_data==0x0F)                                //有“個(gè)”位時(shí)按下"確定"鍵
          {if(i==0)
		     {if(TH_flag==TEMP)
			    { L_Temp_set=KD1*DDC;
				  keydata=0xff;
                // KeyNumber=0xff;
                 continue;
				 }
		
			  }
		   	else if(i==1)
		     {if(TH_flag==TEMP)
			    { H_Temp_set=KD1*DDC;
                  return;
				 }
			  if(TH_flag==HUMI)
			    {  H_Hum_set=KD1*DDC;
                  return;
				 }
			  }
			}
	   else if(kb_data==0x0E)                              //按下"返回"鍵
          return;
	   else 
	      {error_bell();                                   //蜂鳴器報(bào)錯(cuò)誤信號(hào)
		   return;
		   }
//=======================第三次數(shù)字鍵============================================		   
	   keyboard_flag=1;
       while(keyboard_flag==1);
       keydata=key_switch(kb_data);  
       
	    if(kb_data==0x0F)                                  //有“十”位數(shù)據(jù)時(shí)按下"確定"鍵
          {
          	if(i==0)
		     {
				if(TH_flag==TEMP)
				{ 
					L_Temp_set=(KD1*10+KD2)*DDC;
					keydata=0xff;
			    //	KeyNumber=0xff;
					continue;
				}
			 }       
				
				
		   else if(i==1)
				{
					if(TH_flag==TEMP)
					{ 
						H_Temp_set=(KD1*10+KD2)*DDC;
							return;
					}
					if(TH_flag==HUMI)
					{  
						H_Hum_set=(KD1*10+KD2)*DDC;
							return;
					}
				}
			}
	   else if(keydata>=0&&keydata<=9)
			{   if(DDC==-1)
			      {error_bell(); 
				   return;
				   }
				Display_set(((KD1*100+KD2*10+keydata)*DDC),i);
			//	F++;
				KD3=keydata;
				keyboard_flag=1;
			//	KeyNumber=0xff;
			}
	   else if(kb_data==0x0E)                                   //按下"返回"鍵
          return;
	   else 
	      {error_bell();
		   return;
		   }
       keyboard_flag=1;
       while(keyboard_flag==1);
       if(kb_data==0x0F)                                       //有“百”位數(shù)據(jù)時(shí)按下"確定"鍵
          {if(i==0)
		     {if(TH_flag==TEMP)
			    { L_Temp_set=(KD1*100+KD2*10+KD3)*DDC;
				  keydata=0xff;
                 // KeyNumber=0xff;
                  continue;
				 }
			  }
		   	else if(i==1)
		     {if(TH_flag==TEMP)
			    { H_Temp_set=(KD1*100+KD2*10+KD3)*DDC;
                  return;
				 }
			  if(TH_flag==HUMI)
			    {  H_Hum_set=(KD1*100+KD2*10+KD3)*DDC;
                  return;
				 }
			  }
			}
	   else if(kb_data==0x0E)                                   //按下"返回"鍵
          return;
	   else 
	      {error_bell();                                        //蜂鳴器報(bào)錯(cuò)誤信號(hào)
		   return;
		   }
 	 }		  
      
  }              
//=================================================================================

//****************************鍵值轉(zhuǎn)換函數(shù)******************************************
//*****函數(shù)名稱(chēng):key_switch                         **********
//*****函數(shù)功能:把實(shí)際鍵值轉(zhuǎn)換成鍵盤(pán)上標(biāo)識(shí)的鍵值   **********
//**********************************************************************************
uchar key_switch(unsigned char key_d)
 {unsigned char  key_cost;
  switch(key_d)
  {case 0: key_cost=7;break;
   case 1: key_cost=8;break;
   case 2: key_cost=9;break;
   case 3: key_cost=0x10;break;
   case 4: key_cost=4;break;
   case 5: key_cost=5;break;
   case 6: key_cost=6;break;
   case 7: key_cost=0x11;break;
   case 8: key_cost=1;break;
   case 9: key_cost=2;break;
   case 0X0A: key_cost=3;break;
   case 0X0B: key_cost=0X12;break;
   case 0X0C: key_cost=0X00;break;
   case 0X0D: key_cost=0X0D;break;
   case 0X0E: key_cost=0X0E;break;
   case 0X0F: key_cost=0X0F;break;
   default: break;
  }
  return key_cost;
 }

//=============================================================================================================//
//***************************************************************************************************
//******************************讀溫濕度數(shù)據(jù)*******************************************
//****函數(shù)功能:調(diào)用I2C讀寫(xiě)函數(shù)計(jì)算出溫濕度值                          ****************
//****入口參數(shù):TEMP,HUMI,溫度標(biāo)志,濕度標(biāo)志                          ****************
//****出口參數(shù):TH_value,測(cè)量溫度值,測(cè)量的濕度值                     ****************
//***************************************************************************************************
signed int measure(unsigned char mode)
 {  unsigned int TH_H,TH_L,sum;
 	unsigned int i;
	signed int TH_value,rh_lin;
	const float xdata T1=+0.01f;              // for 14 Bit @ 5V
    const float xdata T2=+0.00008f;           // for 14 Bit @ 5V    
    float xdata t_C;                          // t_C   : 溫度 

   	s_transstart();                                     //傳輸開(kāi)始
 	switch(mode)
 	 {case TEMP: error+=s_write_byte(MEASURE_TEMP);     //發(fā)送測(cè)溫度命令    
 	             break;
 	  case HUMI: error+=s_write_byte(MEASURE_HUM1);     //發(fā)送測(cè)濕度命令    
 	  	         break;
 	  default:   break;
 	 }
 
  for(i=0;i<65535;i++)                                  //等待溫濕度值準(zhǔn)備      
   {if(IO0PIN & TH_DATA==0)
   	  break;
    }
      
  if(TH_DATA)
    error=error+1;
  TH_H=s_read_byte(noACK);                              //讀溫濕度值高位    
  TH_L=s_read_byte(ACK);                                //讀溫濕度值低位  
  TH_H=TH_H<<8; 
  sum=TH_H+TH_L;
   t_C=sum*0.01 - 40;
  if(mode)
	{
		rh_lin=((-4)+(0.0405*sum)+(sum*sum*(-2.8E-6)));  	//計(jì)算濕度值   
    TH_value=(t_C-25)*(T1+T2*sum)+rh_lin;              //計(jì)算溫度濕度 [%RH]   
    if(TH_value>100)TH_value=100;                      //濕度范圍:0.1-100之間   
  }
  else
    TH_value=(-40)+(0.01*sum);                          //計(jì)算溫度值    
 
  return TH_value;	
 // LED=0;  	
}

//============================================================================

  void s_transstart()                     //SHT11I2C啟動(dòng)  
  {
   TH_DATA=1; TH_SCK=0;                
   delay(1);
   TH_SCK=1; 
   delay(1);
   TH_DATA=0;
   delay(1);
   TH_SCK=0; 
   delay(1);
   TH_SCK=1;
   delay(1);
   TH_DATA=1;           
   delay(1);
   TH_SCK=0;  
  }
 
//============================================================================

char s_write_byte(unsigned char value)// 寫(xiě)字節(jié) 檢查ack應(yīng)答 
{ 
unsigned char xdata i,error=0; 
for (i=0x80;i>0;i/=2)                  //shift bit for masking
{ if (i & value) TH_DATA=1;            //masking value with i , write to SENSI-BUS
    else TH_DATA=0; 
    TH_SCK=1;                          //clk for SENSI-BUS
    TH_SCK=1;
    TH_SCK=0;
}
TH_DATA=1;//disp();                         //release DAT-line
TH_SCK=1; //disp();                          //clk #9 for ack 
error=TH_DATA; //disp();                     //check ack (DAT will be pulled down by SHT11)
TH_SCK=0;        
return error;                     //error=1 in case of no acknowledge
}

//======================================================================= 

 unsigned char s_read_byte(uchar ack)    // 讀字節(jié) 檢查ack應(yīng)答(if ack=1) 
{ 
uchar xdata i,val=0;
TH_DATA=1;                               //release DAT-line
for (i=0x80;i>0;i/=2)                    //shift bit for masking
{ TH_SCK=1;                              //clk for SENSI-BUS
    if (TH_DATA) val=(val | i);          //read bit 
    //disp();
    TH_SCK=0;                     
}
TH_DATA=!ack;                            //in case of "ack==1" pull down DAT-Line
TH_SCK=1; //disp();                           //clk #9 for ack
//disp();                                //pulswith approx. 5 us 
TH_SCK=0;//disp();                            
TH_DATA=1;                               //release DAT-line
return val;
}
//=========================================================================================
//=============================延時(shí)函數(shù)========================================  
void delay1(unsigned char d1)
{ 
  uchar j,k;
  for(;d1>0;d1--)
   {for(j=50;j>0;j--)
     {for(k=0;k>0;k--);
	 }
	}

}
void delay(unsigned int i)
{ 
 for(;i>0;i--)
	 ;
}

//*************************************蜂鳴器函數(shù)*******************************
void bell(void)
 {BELL=0;
  delay(0x8fff);
  BELL=1;
 }
void error_bell(void)
 { char  k;
   for(k=4;k>0;k--)
	{bell();
	delay(0x9fff);
	 }
  }
//*****************************************************************************


  

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
尤物视频一区二区| 精品欧美乱码久久久久久| 亚洲午夜精品网| 在线播放视频一区| 国产高清精品网站| 日本人妖一区二区| 日韩不卡在线观看日韩不卡视频| 亚洲自拍偷拍欧美| 久久综合色之久久综合| 亚洲黄色片在线观看| 亚洲香蕉伊在人在线观| 性久久久久久久久| 在线亚洲欧美专区二区| 久久99精品一区二区三区| eeuss鲁片一区二区三区| 欧美午夜精品久久久久久超碰 | 国产精品成人免费在线| 婷婷综合在线观看| 91久久精品国产91性色tv| 亚洲成人黄色小说| 精品国产亚洲在线| 久久久久国产一区二区三区四区| 国产精品国产三级国产aⅴ原创| 亚洲综合一区二区三区| 91麻豆国产香蕉久久精品| 色老汉一区二区三区| 亚洲国产精品综合小说图片区| 91蝌蚪porny九色| 色婷婷精品久久二区二区蜜臂av | 91精品国产欧美一区二区成人| 2020日本不卡一区二区视频| 久久综合久久综合久久| 中文字幕一区二区三区在线不卡 | 亚洲精品一区二区三区蜜桃下载| 91高清视频免费看| 国产欧美日产一区| 亚洲色图欧洲色图| 亚洲三级免费电影| 欧美在线不卡一区| 一区二区三区日韩精品| 欧美日韩视频在线第一区 | 久久精品av麻豆的观看方式| 国产盗摄女厕一区二区三区| 色婷婷精品久久二区二区蜜臀av| 日韩欧美一二区| 亚洲人成在线观看一区二区| 久久er精品视频| 色呦呦日韩精品| 欧美精品丝袜中出| 国产精品久久久久影院老司| 香蕉成人伊视频在线观看| 91欧美激情一区二区三区成人| 极品少妇xxxx精品少妇偷拍| 国产午夜一区二区三区| 国产午夜精品久久久久久免费视 | 国产精品免费久久久久| 欧美精品一区二区三区蜜桃| 日韩欧美成人一区二区| 欧美日韩欧美一区二区| 日韩影视精彩在线| 中文字幕一区二区三区精华液| 91精品国产aⅴ一区二区| 久久青草国产手机看片福利盒子| 日本欧美在线看| 91麻豆精品国产91久久久使用方法 | 国产欧美日韩综合精品一区二区| 成人黄色大片在线观看| 国产一区二区三区香蕉| 免费一区二区视频| 亚洲不卡av一区二区三区| 亚洲免费色视频| 夜色激情一区二区| 一区二区成人在线视频| 亚洲精品国产a| 99re热视频这里只精品| 亚洲日本在线观看| 久久蜜桃一区二区| 国产精品免费视频一区| 国产女人aaa级久久久级| 亚洲国产精品精华液2区45| 国产片一区二区| 一区二区三区高清| 成人一区二区三区中文字幕| 国产一区亚洲一区| 亚洲人成人一区二区在线观看| 精品视频在线免费看| 韩国成人精品a∨在线观看| 国产欧美日韩三级| 亚洲国产高清aⅴ视频| 欧美xxxx在线观看| 国产亚洲欧美在线| 日韩av电影天堂| 91麻豆免费在线观看| 亚洲乱码国产乱码精品精的特点| 91在线视频免费91| 亚洲精品成人天堂一二三| 91久久免费观看| 一区二区三区高清不卡| 欧美剧在线免费观看网站 | 26uuu亚洲| 国产在线视视频有精品| 国产精品久久久久久久岛一牛影视| 99久久99久久精品国产片果冻| 一区二区成人在线视频| 日韩丝袜情趣美女图片| 成人黄色软件下载| 亚洲制服丝袜在线| 精品视频一区二区不卡| 成人一区在线看| 91丨九色丨黑人外教| 亚洲五月六月丁香激情| 欧美va亚洲va国产综合| 成人深夜视频在线观看| 一级精品视频在线观看宜春院| 欧美日韩不卡一区| 成人午夜视频福利| 精品国偷自产国产一区| 成人91在线观看| 日本va欧美va精品发布| 国产精品欧美经典| 91精品在线一区二区| 国产91精品露脸国语对白| 樱花影视一区二区| 久久久蜜臀国产一区二区| 欧美日韩国产123区| av高清久久久| 免费精品视频在线| 国产精品天干天干在线综合| 91精品国产综合久久精品麻豆 | 久久er99热精品一区二区| 日韩精品一区二区三区蜜臀| 91丨九色丨蝌蚪丨老版| 国产成人免费视频| 久久精品国产99国产精品| 一区二区三区欧美久久| 国产视频一区在线播放| 色婷婷精品久久二区二区蜜臂av | 91成人在线免费观看| 韩国三级电影一区二区| 舔着乳尖日韩一区| 亚洲在线成人精品| 综合色中文字幕| 中文字幕在线观看一区| 国产日韩视频一区二区三区| 日韩午夜精品视频| 91精品国产综合久久福利软件 | 在线亚洲免费视频| 9人人澡人人爽人人精品| 国产福利电影一区二区三区| 韩国v欧美v日本v亚洲v| 狠狠狠色丁香婷婷综合激情| 毛片一区二区三区| 婷婷综合五月天| 亚洲成人久久影院| 一区二区三区不卡视频在线观看| 最新不卡av在线| 99久久伊人精品| 日韩电影在线一区| 一区二区三区鲁丝不卡| 亚洲另类春色校园小说| 欧美岛国在线观看| 69久久夜色精品国产69蝌蚪网| 不卡的电视剧免费网站有什么| 日韩电影在线观看电影| 欧美激情艳妇裸体舞| 欧美成人a∨高清免费观看| 91精品国产手机| 欧美日韩成人综合天天影院| 91成人免费在线| 欧美一级高清大全免费观看| 六月婷婷色综合| 精品一区精品二区高清| 国产精品538一区二区在线| 国产主播一区二区| 成人动漫精品一区二区| 日本高清不卡一区| 日韩欧美一区二区不卡| 欧美一级精品在线| 日韩黄色一级片| 日韩国产欧美在线播放| 六月丁香综合在线视频| 免费成人在线播放| 国产成人午夜视频| 色综合久久综合中文综合网| 99精品视频在线观看| 欧美色图12p| 国产清纯在线一区二区www| 亚洲欧洲一区二区三区| 日韩高清在线一区| 成人激情午夜影院| 欧美三区在线观看| 国产免费成人在线视频| 亚洲图片欧美综合| 成人看片黄a免费看在线| 欧美色图在线观看| 一区精品在线播放| 黄色成人免费在线| 欧美美女直播网站| 日韩理论片在线| 精品国产一区久久|