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

📄 an_quan_ren zhen.h

📁 嵌入式单片机开发,嵌入式单片机开发,嵌入式单片机开发
💻 H
字号:
// an quan ren zhen-
unsigned char renzhen_use_minute;
unsigned char renzhen_use_second;
unsigned char renzhen_use_hour;
unsigned char num_ren_zhen_minute;
unsigned char num_ren_zhen_second;
void init_renzhen()
{
	num_ren_zhen_minute=0;
	num_ren_zhen_second=0;
	clr_4_dot();
}


unsigned char renzhen_ok()
{unsigned char value;
unsigned int i;
union k1 {
                  unsigned char s[2];
                  unsigned int   w;
                  }d0;
union k2 {
                  unsigned char s[4];
                  unsigned long   w;
                  }d1;
value=0;
// i
d0.s[0]=RAM[R_KW_Z+2];
d0.s[1]=RAM[R_KW_Z+3];
// cos
d1.s[0]=RAM[R_COS_Z];
d1.s[1]=RAM[R_COS_Z+1];
d1.s[2]=RAM[R_COS_Z+2];
d1.s[3]=RAM[R_COS_Z+3];
 if(cossub<=d1.w)
      if(d1.w<=cosadd)
      		{// max
        		if(imaxsub<=d0.w)
            			if(d0.w<=imaxadd)           
           				value=status_imax;
// ib
       		 if(ibsub<=d0.w)
           			if(d0.w<=ibadd)          
           				value=status_ib;
      		}
// imax5l
if(cossub5l<=d1.w)
           if(d1.w<=cosadd5l)
                  {
                     if(imaxsub5l<=d0.w)
                         	if(d0.w<=imaxadd5l)            
           		         	value=status_imax5l;
						// ib5l
                    	if(ibsub5l<=d0.w)
                        		if(d0.w<=ibadd5l)           
           		       		value=status_ib5l;
           	  	}

return value;
}




void set_renzhen_status(unsigned char l)
{
	switch(l)
  		{
  			case status_imax:  
  					renzhen_imax=1;
                               	break;
   			case status_ib:      
   					renzhen_ib=1;
                               	break;
   			case status_imax5l:  
   					renzhen_imax5l=1;
                               	break;
   			case status_ib5l:   
   					renzhen_ib5l=1;
                               	break;
  		}
}


  	

void anquan_renzhen_mode()
{unsigned char l;
union k1 {
                  unsigned char s[2];
                  unsigned int   w;
                  }d0;
union k2 {
                  unsigned char s[4];
                  unsigned long   w;
                  }d1;
unsigned int addr;
// second
// an quan  que ren
if(progfunction_security==yes)
	if(RSTATUS_RUN==TEST)
		{
			shiduan_onetimeprog=0;
			cuofengvalue_onetimeprog=0;
           		cuofengshiduan_onetimeprog=0;
           		priceyuyue_onetimeprog=0;
           		cuofengshiduan_switch_onetimeprog=0;
          		cuofengvalue_switch_onetimeprog=0;	
		}
	
if(renzhen_use_second!=RSOFT_RTC_SECOND)
	{
		renzhen_use_second=RSOFT_RTC_SECOND;
      		l=renzhen_ok();
      		if(status_renzhen_use!=l)
 	 		{
 	 			status_renzhen_use=l;
          			num_ren_zhen_second=0;
			}
     		else
 	    		{
 	    			num_ren_zhen_second=num_ren_zhen_second+1;
             			if(num_ren_zhen_second>10)
         	   			{
         	   				num_ren_zhen_second=0;
                   				set_renzhen_status(status_renzhen_use);
					}
 	     		}
       	l=renzhen_imax+renzhen_ib+renzhen_imax5l+renzhen_ib5l;
       	if((l>2)&&(progfunction_security==yes))
  			{ 
  				RSTATUS_RUN=TEST;
          			RLOCK_90DAY_TIMER=0;
          			RSTATUS_TEST_TIMER=48*60;
          			move_int_to_fm(RSTATUS_TEST_TIMER,FM_STATUS_TEST_TIMER);
          			move_int_to_fm(RLOCK_90DAY_TIMER,FM_LOCK_90DAY_TIMER);
          			move_int_to_fm(0,FM_TIMER_DEMANGCLFM_LOCK);          
         		 	data_addr.addri=FM_LOCK_CUOFENGSHIDUAN;
          			for(l=0;l<5;l++)
 	        			wr_data[l]=0;
          			write(FM,5);  
           			shiduan_onetimeprog=0;
           			cuofengvalue_onetimeprog=0;
           			cuofengshiduan_onetimeprog=0;
           			priceyuyue_onetimeprog=0;
           			cuofengshiduan_switch_onetimeprog=0;
          			cuofengvalue_switch_onetimeprog=0;
          			copyrunstatus();         
//           			RFLAG_DEMANGCLR_LOCK=0;
           			clr_4_dot();
				// changed by zhanglong ---->start
				//clr_had_jiaoshi();
				// changed by zhanglong ---->end
          		 }
     		}
// minute
	if(renzhen_use_minute!=RSOFT_RTC_MINUTE)
 		{
 			renzhen_use_minute=RSOFT_RTC_MINUTE;
			//  mima chu li
  			for(l=0;l<10;l++)
   				{
   				  addr=R_PASSWORD_LOCK_TIME_0+2*l;
   				  d0.s[0]=RAM[addr];
        			  d0.s[1]=RAM[addr+1];
        			  if(d0.w!=0) d0.w=d0.w-1;
                              RAM[addr]=d0.s[0];
                              RAM[addr+1]=d0.s[1];
   	                      }
                     copy_ram_to_fm(R_PASSWORD_LOCK_TIME_0,20,FM_PASSWORD_LOCK_TIME_0);
			// ren zhen
			l=renzhen_imax+renzhen_ib+renzhen_imax5l+renzhen_ib5l;
			if(l==0) 
				num_ren_zhen_minute=0;
			if(l!=0)
 				{
 					num_ren_zhen_minute=num_ren_zhen_minute+1;
   					if(num_ren_zhen_minute>14)
   						{
   							num_ren_zhen_minute=0;
   	 						clr_4_dot();
         					}
				}
			// RUN CHANGE TEST STATUS
			if(RSTATUS_TEST_TIMER!=0) 
				RSTATUS_TEST_TIMER=RSTATUS_TEST_TIMER-1;
			move_int_to_fm(RSTATUS_TEST_TIMER,FM_STATUS_TEST_TIMER);
			if(RSTATUS_TEST_TIMER==0)
       			if(RSTATUS_RUN==TEST) 
   	        			{
   	        				RSTATUS_RUN=RUN;
                 				shiduan_onetimeprog=0;
						cuofengvalue_onetimeprog=0;
           					cuofengshiduan_onetimeprog=0;
           					priceyuyue_onetimeprog=0;
           					cuofengshiduan_switch_onetimeprog=0;
          					cuofengvalue_switch_onetimeprog=0;
                 				copyrunstatus();  	
                  				clr_4_dot();  
          				}   
		}
	// hour
	if(renzhen_use_hour!=RSOFT_RTC_HOUR)
		{
			renzhen_use_hour=RSOFT_RTC_HOUR;
 			if(RLOCK_90DAY_TIMER!=0) 
				RLOCK_90DAY_TIMER=RLOCK_90DAY_TIMER-1;
 			move_int_to_fm(RLOCK_90DAY_TIMER,FM_LOCK_90DAY_TIMER);
			if(RLOCK_90DAY_TIMER==0)
				if(RSTATUS_RUN==LOCK_90DAY) 
					{
						RSTATUS_RUN=RUN;
	          				shiduan_onetimeprog=0;
					}
 			copyrunstatus();  
		}
	if(progfunction_security==yes)
      		{
//        		 if(RSTATUS_RUN==TEST)
//	         		{//err_mima_anquan=0;//  question
//                  			RFLAG_DEMANGCLR_LOCK=0;
//                  			RTIMER_DEMANGCLR_LOCK=0;
//		  		 }
         		if(RSTATUS_RUN==LOCK_DEED)
	         		{
	         			clr_mima_enable();        
                 		}
        	}
	else
		 RSTATUS_RUN=RUN;
}



































⌨️ 快捷键说明

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