📄 an_quan_ren zhen.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 + -