⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 button.c

📁 SDU的字库
💻 C
📖 第 1 页 / 共 2 页
字号:
			 
			 break;
		 case 7:
			 cur_time_cach[2]+=0x10;												 //时
//			 temp=(cur_time_cach[2]>>4)&0x03;
			 if(((cur_time_cach[2]>>4)&0x03)>2) cur_time_cach[2]&=0x0f;                                     
			 v_Set1302( cur_time_cach );
			 break;
		 case 8:
			 cur_time_cach[2]++;
//			 temp=cur_time_cach[2]&0x0f;
			 if((cur_time_cach[2]&0x0f)>9) cur_time_cach[2]&=0xf0;                                     
			 v_Set1302( cur_time_cach );
			 break;
		 case 9:
			 cur_time_cach[1]+=0x10;
//			 temp=(cur_time_cach[1]>>4)&0x0f;
			 if(((cur_time_cach[1]>>4)&0x0f)>5) cur_time_cach[1]&=0x0f;                                     //分
			 v_Set1302( cur_time_cach );
			 break;
		 case 10:
			 cur_time_cach[1]++;
//			 temp=cur_time_cach[1]&0x0f;
			 if((cur_time_cach[1]&0x0f)>9) cur_time_cach[1]&=0xf0;                                     
			 v_Set1302( cur_time_cach );
			 break;
		 case 11:
			 cur_time_cach[0]+=0x10;
//			 temp=(cur_time_cach[0]>>4)&0x0f;
			 if(((cur_time_cach[0]>>4)&0x0f)>5) cur_time_cach[0]&=0x0f;                                     //秒
			 v_Set1302( cur_time_cach );
			 break;
		 case 12:
			 cur_time_cach[0]++;
//			 temp=cur_time_cach[0]&0x0f;
			 if((cur_time_cach[0]&0x0f)>9) cur_time_cach[0]&=0xf0;                                     
			 v_Set1302( cur_time_cach );
			 break;

		default:
			 time_set_flag=0;
			 break;

	 }
	 disappear_time = 0;
	 disappear_sw = 1;			 // 启动消隐程序(在定时器中)	
	 sheding_time = 0;
	 sheding_sw = 1;		     // 进入设定状态

   }
   if( button_code == 4 )				  //--------------key4-------------时间-
   {
     button_code = 0;
	 
	switch(time_set_flag)
	 {
//		char temp;
		case 0:
			 cur_time_cach[6]-=0x10;
//			 temp=(cur_time_cach[6]>>4)&0x0f;
			 if(((cur_time_cach[6]>>4)&0x0f)>9) cur_time_cach[6]&=0x9f;                                     //年
			 v_Set1302( cur_time_cach );
			 break;
		case 1:
			 cur_time_cach[6]--;
//			 temp=cur_time_cach[6]&0x0f;
			 if((cur_time_cach[6]&0x0f)>9) cur_time_cach[6]&=0xf9;                                     
			 v_Set1302( cur_time_cach );
			 break;
		case 2:
			 cur_time_cach[4]-=0x10;
//			 temp=(cur_time_cach[4]>>4)&0x0f;
			 if(((cur_time_cach[4]>>4)&0x0f)>1) cur_time_cach[4]&=0x9f;                                     //月
			 v_Set1302( cur_time_cach );
			 break;
		case 3:
			 cur_time_cach[4]--;
//			 temp=cur_time_cach[4]&0x0f;
			 if((cur_time_cach[4]&0x0f)>9) cur_time_cach[4]&=0xf9;                                     
			 v_Set1302( cur_time_cach );
			 break;
		case 4:
			 cur_time_cach[3]-=0x10;
//			 temp=(cur_time_cach[3]>>4)&0x0f;
			 if(((cur_time_cach[3]>>4)&0x0f)>3) cur_time_cach[3]&=0x3f;                                     //日
			 v_Set1302( cur_time_cach );
			 break;
		case 5:
			 cur_time_cach[3]--;
//			 temp=cur_time_cach[3]&0x0f;	 
			 if((cur_time_cach[3]&0x0f)>9) cur_time_cach[3]&=0x39;                                     
			 v_Set1302( cur_time_cach );
			break;
		 case 6:
			 cur_time_cach[5]--;
			 if(cur_time_cach[5]>7) cur_time_cach[5]&=0x01;                         //星期
			 v_Set1302( cur_time_cach );
			 break;
		 case 7:
			 cur_time_cach[2]-=0x10;
//			 temp=(cur_time_cach[2]>>4)&0x0f;
			 if(((cur_time_cach[2]>>4)&0x0f)>2) cur_time_cach[2]&=0x2f;                                     //时
			 v_Set1302( cur_time_cach );
			 break;
		 case 8:
			 cur_time_cach[2]--;
//			 temp=cur_time_cach[2]&0x0f;
			 if((cur_time_cach[2]&0x0f)>9) cur_time_cach[2]&=0x29;                                     
			 v_Set1302( cur_time_cach );
			 break;
		 case 9:
			 cur_time_cach[1]-=0x10;
//			 temp=(cur_time_cach[1]>>4)&0x0f;
			 if(((cur_time_cach[1]>>4)&0x0f)>5) cur_time_cach[1]&=0x5f;                                     //分
			 v_Set1302( cur_time_cach );
			 break;
		 case 10:
			 cur_time_cach[1]--;
//			 temp=cur_time_cach[1]&0x0f;
			 if((cur_time_cach[1]&0x0f)>9) cur_time_cach[1]&=0x59;                                     
			 v_Set1302( cur_time_cach );
			 break;
		 case 11:
			 cur_time_cach[0]-=0x10;
//			 temp=(cur_time_cach[0]>>4)&0x0f;
			 if(((cur_time_cach[0]>>4)&0x0f)>5) cur_time_cach[0]&=0x5f;                                     //秒
			 v_Set1302( cur_time_cach );
			 break;
		 case 12:
			 cur_time_cach[0]--;
//			 temp=cur_time_cach[0]&0x0f;
			 if((cur_time_cach[0]&0x0f)>9) cur_time_cach[0]&=0x59;                                     
			 v_Set1302( cur_time_cach );
			 break;

		default:
			 time_set_flag=0;
			 break;

	 }
     disappear_time = 0;
	 disappear_sw = 1;			 // 启动消隐程序(在定时器中)	
	 sheding_time = 0;
	 sheding_sw = 1;		     // 进入设定状态
   }
 } 
 if( menu_code == 3 )	  /*-----------------梯号设置-----------*/
  { 
   if( button_code == 1 )
   { 
     button_code = 0; 
	 disappear_row23();
     menu_code++;if(menu_code>5) menu_code = 0;	
     
	 disappear_time = 0;
	 disappear_sw = 1;		     // 启动消隐程序(在定时器中)
	 dis_back();
   }
   if( button_code == 2 )
   { 
     button_code = 0;
     floor_flag++; if(floor_flag>4) floor_flag = 0;					  //确定
	 switch(floor_flag)
	 {
		
		case 0:
			 
			 disappear_time = 0;
			 disappear_sw = 1;			 // 启动消隐程序(在定时器中)	 
			 dis_floor_seting(0x31);
			 break;
		case 1:			 
			 disappear_time = 0;
			 disappear_sw = 1;			 // 启动消隐程序(在定时器中)	 
			 dis_floor_seting(0x32);
			 break;
		case 2:			 
			 disappear_time = 0;
			 disappear_sw = 1;			 // 启动消隐程序(在定时器中)	 
			 dis_floor_seting(0x33);
			 break;
		case 3:			 
			 disappear_time = 0;
			 disappear_sw = 1;			 // 启动消隐程序(在定时器中)	 
			 dis_floor_seting(0x34);
			 break;
		case 4:			 
			 disappear_time = 0;
			 disappear_sw = 1;			 // 启动消隐程序(在定时器中)	 
			 dis_floor_seting(0x35);
			 break;
		default:
			 time_set_flag=0;
			 break;
	 sheding_time = 0;
	 sheding_sw = 1;		     // 进入设定状态
   }
   }
   if( button_code == 3 )
   { 
     switch(floor_flag)
	 {
		 case 0:
			   ini_t_h[0]++;
			   if(ini_t_h[0]>0x2c)
			   ini_t_h[0]=0;
//			   dis_number(ini_t_h);
			   break;
		 case 1:
			   ini_t_h[1]++;										
			   if(ini_t_h[1]>0x2c)
			   ini_t_h[1]=0;	
//			   dis_number(ini_t_h);								 
			   break;
		 case 2:													 
			   ini_t_h[2]++;
			   if(ini_t_h[2]>0x2c)
			   ini_t_h[2]=0;	   
//			   dis_number(ini_t_h);
			   break;
		 case 3:													
			   ini_t_h[3]++;
			   if(ini_t_h[3]>0x2c)
			   ini_t_h[3]=0;	
//			   dis_number(ini_t_h);	   
			   break;
		 case 4:													 
			   ini_t_h[4]++;
			   if(ini_t_h[4]>0x2c)
			   ini_t_h[4]=0;
//			   dis_number(ini_t_h);
			   break;
		  default :
			   floor_flag=0;
			   break;

	 }
//	 dis_number(ini_t_h);
//	 ISendStr(4,0,ini_t_h,5);		 
	 for(i=0;i<5;i++)
	   {
	    ISendByte((0x400+i),ini_t_h[i]);  //写数据到24c16  
		Delay_ms(2);
		}  
//	   ISendByte(0x400,ini_t_h[0]);  //写数据到24c16
//	   Delay_ms(2);
//	   ISendByte(0x401,ini_t_h[1]);  //写数据到24c16
//	   Delay_ms(2);
//	   ISendByte(0x402,ini_t_h[2]);  //写数据到24c16
//	   Delay_ms(2);
//	   ISendByte(0x403,ini_t_h[3]);  //写数据到24c16
//	   Delay_ms(2);
//	   ISendByte(0x404,ini_t_h[4]);  //写数据到24c16
 	 disappear_time = 0;
	 disappear_sw = 1;			 // 启动消隐程序(在定时器中)				
	 sheding_time = 0;
	 sheding_sw = 1;		     // 退出
	 
   }
   if( button_code == 4 )
   {
     switch(floor_flag)
	 {
		 case 0:
			   ini_t_h[0]--;
			   if(ini_t_h[0]<0)
			   ini_t_h[0]=0x2c;
//			   dis_number(ini_t_h); 
//			   ISendByte(0x400,ini_t_h[0]);  //写数据到24c16
			   break;
		 case 1:
			   ini_t_h[1]--;
			   if(ini_t_h[1]<0)
			   ini_t_h[1]=0x2c;	
//			   dis_number(ini_t_h); 
//			   ISendByte(0x401,ini_t_h[1]);  //写数据到24c16	   
			   break;
		 case 2:
			   ini_t_h[2]--;
			   if(ini_t_h[2]<0)
			   ini_t_h[2]=0x2c;
//			   dis_number(ini_t_h); 
//			   ISendByte(0x402,ini_t_h[2]);  //写数据到24c16		   
			   break;
		  case 3:
			   ini_t_h[3]--;
			   if(ini_t_h[3]<0)
			   ini_t_h[3]=0x2c;
//			   dis_number(ini_t_h); 
//			   ISendByte(0x403,ini_t_h[3]);  //写数据到24c16
			   break;
		  case 4:
			   ini_t_h[4]--;
			   if(ini_t_h[4]<0)
			   ini_t_h[4]=0x2c;
//			   dis_number(ini_t_h); 
//			   ISendByte(0x404,ini_t_h[4]);  //写数据到24c16
			   break;
		  default :
			   floor_flag=0;
			   break;

   }  
   for(i=0;i<5;i++)
	   {
	    ISendByte((0x400+i),ini_t_h[i]);  //写数据到24c16  
		Delay_ms(2);
		} 
//	   ISendByte(0x400,ini_t_h[0]);  //写数据到24c16
//	   Delay_ms(2);
//	   ISendByte(0x401,ini_t_h[1]);  //写数据到24c16
//	   Delay_ms(2);
//	   ISendByte(0x402,ini_t_h[2]);  //写数据到24c16
//	   Delay_ms(2);
//	   ISendByte(0x403,ini_t_h[3]);  //写数据到24c16
//	   Delay_ms(2);
//	   ISendByte(0x404,ini_t_h[4]);  //写数据到24c16			
   disappear_time = 0;
	 disappear_sw = 1;			 // 启动消隐程序(在定时器中)	
   sheding_time = 0;
   sheding_sw = 1;		     // 进入设定状态
  }
			  
}

if (menu_code == 4)
  {
  	if( button_code == 1 )
   { 
     button_code = 0; 
	 disappear_row23();
     menu_code++;if(menu_code>5) menu_code = 0;	    
	 disappear_time = 800;
	 disappear_sw = 1;		     // 启动消隐程序(在定时器中)
	 exit();
   }
   if (button_code == 2)				  //出厂状态
   {
    button_code = 0; 
	MB90092_ClearScreen();
	X_position    = 0x04;
	Y_position    = 0x27;
	yy=0;
	xj=10;
	cy=0;
	xx=10;									  
	MB90092_WriteByte(0xC0);               //command 8
	MB90092_WriteByte(X_position);         //屏幕水平开始位置设定	
	MB90092_WriteByte(0xBC);               //command 7
	MB90092_WriteByte(Y_position);         //屏幕垂直开始位置设定  	
	dis_clock_flag=0;	
	dis_calendar_flag = 0;	
	ini_th();
	ISendByte(0x410,X_position);
	Delay_ms(2);
	ISendByte(0x411,Y_position); 
	Delay_ms(2);
	for(i=0;i<5;i++)
	   {
	    ISendByte((0x400+i),ini_t_h[i]);  //写数据到24c16  
		Delay_ms(2);
		} 
	xjyy();	
	xxcy();
	sjrq();
	synchronization = SYN_EXTERNAL;
	MB90092_WriteByte(0xA2|synchronization);  
	MB90092_WriteByte(0x2B);
	sheding_time = 0;
	sheding_sw = 1;		     // 进入设定状态 
	}
	if (button_code == 3)
   {
    button_code = 0; 
	sheding_time = 0;
	sheding_sw = 1;		     // 进入设定状态 
	}
	if (button_code == 4)
   {
    button_code = 0; 
	sheding_time = 0;
	sheding_sw = 1;		     // 进入设定状态 
	}
  }
if( menu_code == 5 )	  /*-----------*/
  { 
	 disappear_time = 900;
	 disappear_sw = 1;		     // 启动消隐程序(在定时器中)
 	 exit();
   
   if( button_code == 1 )
   { 
     button_code = 0; 
     menu_code++;if(menu_code>5) menu_code = 0;	
     
	 disappear_time = 0;
	 disappear_sw = 1;		     // 启动消隐程序(在定时器中)
 	 dis_mode_set();
   }
   if( button_code == 2 )
   { 
     button_code = 0;
   }
   if( button_code == 3 )
   { 
   	  button_code = 0;	 
   }
   if( button_code == 4 )
   {
      button_code = 0;
   }
  }									  
}
void button_doing()
{
 if ( read_button() ) 
  {
   button_func();
 }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -