📄 xuliang.h
字号:
rcurrent_price_huacha=0;
RCURRENT_KVA_F_PRICE_BUFFER_NUM=0;
RCURRENT_KVA_R_PRICE_BUFFER_NUM=0;
RCURRENT_KVAR_F_PRICE_BUFFER_NUM=0;
RCURRENT_KVAR_R_PRICE_BUFFER_NUM=0;
RCURRENT_KVAR_1_PRICE_BUFFER_NUM=0;
RCURRENT_KVAR_2_PRICE_BUFFER_NUM=0;
RCURRENT_KVAR_3_PRICE_BUFFER_NUM=0;
RCURRENT_KVAR_4_PRICE_BUFFER_NUM=0;
}
}
void ram_7byte_exchanged(addr1,addr2)
unsigned int addr1,addr2;
// cuo fengyong
// exchange
{unsigned char l,k;
for(l=0;l<7;l++)
{
k=RAM[addr1+l];
RAM[addr1+l]=RAM[addr2+l];
RAM[addr2+l]=k;
}
// for(l=0;l<7;l++)
// a[l]=RAM[addr1+l];
// for(l=0;l<7;l++)
// RAM[addr1+l]=RAM[addr2+l];
// for(l=0;l<7;l++)
//RAM[addr2+l]=a[l];
};
void xuliang_mode()
{unsigned int a1,a2,a3;
unsigned char use_xuliangzhouqi;
unsigned char use_huacha;
unsigned char l,l1,l2,l3,l4,value,l10;
unsigned long sum;
// when xuliangzhouqi change----reset xuliang
//cuo fen ji cufeng chao xian-------------------------->start
if((progfunction_cuofeng==yes)&&(arm_cuofeng==1))
pulseset_withvaluetime(0x14,5550);// high level
else
pulseset_withvaluetime(0x14,0);
if((progfunction_cuofeng==yes)&&(status_cuofeng_price==1))
pulseset_withvaluetime(0x13,5550);
else
pulseset_withvaluetime(0x13,0);
//cuo fen ji cufeng chao xian-------------------------->end
if(xuliangmode_use_xuliangzhouqi!=RAM[R_XULIANGZHOUQI])
{
xuliangmode_use_xuliangzhouqi=RAM[R_XULIANGZHOUQI];
init_xuliang();
}
// huacha---err---->true
if(1==thevalueisbcd1to60(RAM[R_HUACHA]))
use_huacha=value_hex_from_bcd(RAM[R_HUACHA]);
else
use_huacha=1;
// xuliangzhouqi err---->true
if(1==thevalueisbcd1to60(RAM[R_XULIANGZHOUQI]))
use_xuliangzhouqi=value_hex_from_bcd(RAM[R_XULIANGZHOUQI]);
else
use_xuliangzhouqi=15;
// one minute start---------------------------------------------------->
if( XULIANG_MINUTE!=RSOFT_RTC_MINUTE)
{
XULIANG_MINUTE=RSOFT_RTC_MINUTE;
// xuliang mo chong------------->start
//if(xuliang_mochong_use_time==(use_xuliangzhouqi-1)) xuliangzhouqi_pulse();
if(xuliang_mochong_use_time<use_xuliangzhouqi)
xuliang_mochong_use_time=xuliang_mochong_use_time+1;
if(RAM[R_KWPLUS_MODE]==kva_pulse_mode0)// xuliang zhou qi mochong
if(xuliang_mochong_use_time>=use_xuliangzhouqi)
{
xuliang_mochong_use_time=0;
xuliangzhouqi_pulse();
}
// xuliang mo chong------------->end
// ddddd wu gong zu he fan shi ---------------changed start
// zheng xiang
if(rcurrent_use_mode_f_kvarh_count!=RAM[R_KVARHMODE_F])
{
rcurrent_use_mode_f_kvarh_count=RAM[R_KVARHMODE_F];
RCURRENT_KVAR_F_BUFFER_ADDR=0;
RCURRENT_KVAR_F_BUFFER_NUM=0;
RCURRENT_KVAR_F_PRICE_BUFFER_NUM=0;
}
// FAN XIANG
if(rcurrent_use_mode_r_kvarh_count!=RAM[R_KVARHMODE_R])
{
rcurrent_use_mode_r_kvarh_count=RAM[R_KVARHMODE_R];
RCURRENT_KVAR_R_BUFFER_ADDR=0;
RCURRENT_KVAR_R_BUFFER_NUM=0;
RCURRENT_KVAR_R_PRICE_BUFFER_NUM=0;
}
// ddddd wu gong zu he fan shi ---------------changed end
// store num_pulse per minute ------------------------------------->start
// zhen xiang you gong ---------->start
// pulse=|use_value-int_value|
//a1=RCURRENT_MINUTE_KVA_F;
//if(a1<RCURRENT_USE_MINUTE_KVA_F)
// a2=(0xffff-RCURRENT_USE_MINUTE_KVA_F)+1+a1;// zero crossing
//else
// a2=a1-RCURRENT_USE_MINUTE_KVA_F;
//RCURRENT_USE_MINUTE_KVA_F=a1;
if(kw_fz_numsecond==0)
{
a2=0;
}
else
{
a2=(kw_fz_perminute+30)/60;//kw_fz_numsecond;
}
kw_fz_numsecond=0;
kw_fz_perminute=0;
// addr
if(RCURRENT_KVA_F_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_KVA_F_BUFFER_ADDR=0;
else
RCURRENT_KVA_F_BUFFER_ADDR=RCURRENT_KVA_F_BUFFER_ADDR+1;
// place num pulses per minute to buffer
RCURRENT_KVA_F_BUFFER[RCURRENT_KVA_F_BUFFER_ADDR]=a2;// int
// num +1
if(RCURRENT_KVA_F_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVA_F_BUFFER_NUM=RCURRENT_KVA_F_BUFFER_NUM+1;
if(RCURRENT_KVA_F_PRICE_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVA_F_PRICE_BUFFER_NUM=RCURRENT_KVA_F_PRICE_BUFFER_NUM+1;
// check
if(RCURRENT_KVA_F_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVA_F_BUFFER_NUM=use_xuliangzhouqi;
if(RCURRENT_KVA_F_PRICE_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVA_F_PRICE_BUFFER_NUM=use_xuliangzhouqi;
// zhen xiang you gong --------------------------------->end
// fan xiang you gong--------------------------------->start
//a1=RCURRENT_MINUTE_KVA_R;
//if(a1<RCURRENT_USE_MINUTE_KVA_R)
// a2=(0xffff-RCURRENT_USE_MINUTE_KVA_R)+1+a1;
//else
// a2=a1-RCURRENT_USE_MINUTE_KVA_R;
//RCURRENT_USE_MINUTE_KVA_R=a1;
if(kw_rz_numsecond==0)
{
a2=0;
}
else
{
a2=(kw_rz_perminute+30)/60;//kw_fz_numsecond;
}
kw_rz_numsecond=0;
kw_rz_perminute=0;
// addr
if(RCURRENT_KVA_R_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_KVA_R_BUFFER_ADDR=0;
else
RCURRENT_KVA_R_BUFFER_ADDR=RCURRENT_KVA_R_BUFFER_ADDR+1;
RCURRENT_KVA_R_BUFFER[RCURRENT_KVA_R_BUFFER_ADDR]=a2;
// num +1
if(RCURRENT_KVA_R_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVA_R_BUFFER_NUM=RCURRENT_KVA_R_BUFFER_NUM+1;
if(RCURRENT_KVA_R_PRICE_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVA_R_PRICE_BUFFER_NUM=RCURRENT_KVA_R_PRICE_BUFFER_NUM+1;
// check
if(RCURRENT_KVA_R_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVA_R_BUFFER_NUM=use_xuliangzhouqi;
if(RCURRENT_KVA_R_PRICE_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVA_R_PRICE_BUFFER_NUM=use_xuliangzhouqi;
// fan xiang you gong--------------------------------->end
// zhen xiang WU gong------------------------------->start
a1=RCURRENT_MINUTE_KVAR_F;
if(a1<RCURRENT_USE_MINUTE_KVAR_F)
a2=(0xffff-RCURRENT_USE_MINUTE_KVAR_F)+1+a1;
else
a2=a1-RCURRENT_USE_MINUTE_KVAR_F;
RCURRENT_USE_MINUTE_KVAR_F=a1;
// addr
if(RCURRENT_KVAR_F_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_KVAR_F_BUFFER_ADDR=0;
else
RCURRENT_KVAR_F_BUFFER_ADDR=RCURRENT_KVAR_F_BUFFER_ADDR+1;
// place
RCURRENT_KVAR_F_BUFFER[RCURRENT_KVAR_F_BUFFER_ADDR]=a2;
// num +1
if(RCURRENT_KVAR_F_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVAR_F_BUFFER_NUM=RCURRENT_KVAR_F_BUFFER_NUM+1;
if(RCURRENT_KVAR_F_PRICE_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVAR_F_PRICE_BUFFER_NUM=RCURRENT_KVAR_F_PRICE_BUFFER_NUM+1;
// check
if(RCURRENT_KVAR_F_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVAR_F_BUFFER_NUM=use_xuliangzhouqi;
if(RCURRENT_KVAR_F_PRICE_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVAR_F_PRICE_BUFFER_NUM=use_xuliangzhouqi;
// zhen xiang WU gong------------------------------->end
// FAN xiang WU gong------------------------------->start
a1=RCURRENT_MINUTE_KVAR_R;
if(a1<RCURRENT_USE_MINUTE_KVAR_R)
a2=(0xffff-RCURRENT_USE_MINUTE_KVAR_R)+1+a1;
else
a2=a1-RCURRENT_USE_MINUTE_KVAR_R;
RCURRENT_USE_MINUTE_KVAR_R=a1;
// addr
if(RCURRENT_KVAR_R_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_KVAR_R_BUFFER_ADDR=0;
else
RCURRENT_KVAR_R_BUFFER_ADDR=RCURRENT_KVAR_R_BUFFER_ADDR+1;
//place
RCURRENT_KVAR_R_BUFFER[RCURRENT_KVAR_R_BUFFER_ADDR]=a2;
// num +1
if(RCURRENT_KVAR_R_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVAR_R_BUFFER_NUM=RCURRENT_KVAR_R_BUFFER_NUM+1;
if(RCURRENT_KVAR_R_PRICE_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVAR_R_PRICE_BUFFER_NUM=RCURRENT_KVAR_R_PRICE_BUFFER_NUM+1;
// check
if(RCURRENT_KVAR_R_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVAR_R_BUFFER_NUM=use_xuliangzhouqi;
if(RCURRENT_KVAR_R_PRICE_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVAR_R_PRICE_BUFFER_NUM=use_xuliangzhouqi;
// FAN xiang WU gong------------------------------->end
// 1 WU gong------------------------------------>start
a1=RCURRENT_MINUTE_KVAR_1;
if(a1<RCURRENT_USE_KVAR_1)
a2=(0xffff-RCURRENT_USE_KVAR_1)+1+a1;
else
a2=a1-RCURRENT_USE_KVAR_1;
RCURRENT_USE_KVAR_1=a1;
// addr
if(RCURRENT_KVAR_1_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_KVAR_1_BUFFER_ADDR=0;
else
RCURRENT_KVAR_1_BUFFER_ADDR=RCURRENT_KVAR_1_BUFFER_ADDR+1;
// place
RCURRENT_KVAR_1_BUFFER[RCURRENT_KVAR_1_BUFFER_ADDR]=a2;
// num +1
if(RCURRENT_KVAR_1_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVAR_1_BUFFER_NUM=RCURRENT_KVAR_1_BUFFER_NUM+1;
// if(RCURRENT_KVAR_1_PRICE_BUFFER_NUM<use_xuliangzhouqi)
// RCURRENT_KVAR_1_PRICE_BUFFER_NUM=RCURRENT_KVAR_1_PRICE_BUFFER_NUM+1;
// check
if(RCURRENT_KVAR_1_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVAR_1_BUFFER_NUM=use_xuliangzhouqi;
// if(RCURRENT_KVAR_1_PRICE_BUFFER_NUM>use_xuliangzhouqi)
// RCURRENT_KVAR_1_PRICE_BUFFER_NUM=use_xuliangzhouqi;
// 1 WU gong------------------------------------>end
// 2 WU gong--------------------------------->start
a1=RCURRENT_MINUTE_KVAR_2;
if(a1<RCURRENT_USE_KVAR_2)
a2=(0xffff-RCURRENT_USE_KVAR_2)+1+a1;
else
a2=a1-RCURRENT_USE_KVAR_2;
RCURRENT_USE_KVAR_2=a1;
// addr
if(RCURRENT_KVAR_2_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_KVAR_2_BUFFER_ADDR=0;
else
RCURRENT_KVAR_2_BUFFER_ADDR=RCURRENT_KVAR_2_BUFFER_ADDR+1;
//place
RCURRENT_KVAR_2_BUFFER[RCURRENT_KVAR_2_BUFFER_ADDR]=a2;
// num +1
if(RCURRENT_KVAR_2_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVAR_2_BUFFER_NUM=RCURRENT_KVAR_2_BUFFER_NUM+1;
// if(RCURRENT_KVAR_2_PRICE_BUFFER_NUM<use_xuliangzhouqi)
// RCURRENT_KVAR_2_PRICE_BUFFER_NUM=RCURRENT_KVAR_2_PRICE_BUFFER_NUM+1;
// check
if(RCURRENT_KVAR_2_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVAR_2_BUFFER_NUM=use_xuliangzhouqi;
// if(RCURRENT_KVAR_2_PRICE_BUFFER_NUM>use_xuliangzhouqi)
// RCURRENT_KVAR_2_PRICE_BUFFER_NUM=use_xuliangzhouqi;
// 2 WU gong--------------------------------->end
// 3 WU gong---------------------------------->start
a1=RCURRENT_MINUTE_KVAR_3;
if(a1<RCURRENT_USE_KVAR_3)
a2=(0xffff-RCURRENT_USE_KVAR_3)+1+a1;
else
a2=a1-RCURRENT_USE_KVAR_3;
RCURRENT_USE_KVAR_3=a1;
// addr
if(RCURRENT_KVAR_3_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_KVAR_3_BUFFER_ADDR=0;
else
RCURRENT_KVAR_3_BUFFER_ADDR=RCURRENT_KVAR_3_BUFFER_ADDR+1;
// place
RCURRENT_KVAR_3_BUFFER[RCURRENT_KVAR_3_BUFFER_ADDR]=a2;
// num +1
if(RCURRENT_KVAR_3_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVAR_3_BUFFER_NUM=RCURRENT_KVAR_3_BUFFER_NUM+1;
// if(RCURRENT_KVAR_3_PRICE_BUFFER_NUM<use_xuliangzhouqi)
// RCURRENT_KVAR_3_PRICE_BUFFER_NUM=RCURRENT_KVAR_3_PRICE_BUFFER_NUM+1;
// check
if(RCURRENT_KVAR_3_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVAR_3_BUFFER_NUM=use_xuliangzhouqi;
// if(RCURRENT_KVAR_3_PRICE_BUFFER_NUM>use_xuliangzhouqi)
// RCURRENT_KVAR_3_PRICE_BUFFER_NUM=use_xuliangzhouqi;
// 3 WU gong---------------------------------->end
// 4 WU gong---------------------------------->start
a1=RCURRENT_MINUTE_KVAR_4;
if(a1<RCURRENT_USE_KVAR_4)
a2=(0xffff-RCURRENT_USE_KVAR_4)+1+a1;
else
a2=a1-RCURRENT_USE_KVAR_4;
RCURRENT_USE_KVAR_4=a1;
// addr
if(RCURRENT_KVAR_4_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_KVAR_4_BUFFER_ADDR=0;
else
RCURRENT_KVAR_4_BUFFER_ADDR=RCURRENT_KVAR_4_BUFFER_ADDR+1;
// place
RCURRENT_KVAR_4_BUFFER[RCURRENT_KVAR_4_BUFFER_ADDR]=a2;
// num +1
if(RCURRENT_KVAR_4_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_KVAR_4_BUFFER_NUM=RCURRENT_KVAR_4_BUFFER_NUM+1;
// if(RCURRENT_KVAR_4_PRICE_BUFFER_NUM<use_xuliangzhouqi)
// RCURRENT_KVAR_4_PRICE_BUFFER_NUM=RCURRENT_KVAR_4_PRICE_BUFFER_NUM+1;
// check
if(RCURRENT_KVAR_4_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_KVAR_4_BUFFER_NUM=use_xuliangzhouqi;
// if(RCURRENT_KVAR_4_PRICE_BUFFER_NUM>use_xuliangzhouqi)
// RCURRENT_KVAR_4_PRICE_BUFFER_NUM=use_xuliangzhouqi;
// 4 WU gong---------------------------------->end
// cuo feng add---------------------------------> start
// a1=RCURRENT_MINUTE_CUOFENG;
// if(a1<RCURRENT_USE_MINUTE_CUOFENG)
// a2=(0xffff-RCURRENT_USE_MINUTE_CUOFENG)+1+a1;
// else
// a2=a1-RCURRENT_USE_MINUTE_CUOFENG;
// RCURRENT_USE_MINUTE_CUOFENG=a1;
if(kw_cuofeng_numsecond==0)
{
a2=0;
}
else
{
a2=(kw_cuofeng_perminute+30)/60;//kw_fz_numsecond;
}
kw_cuofeng_numsecond=0;
kw_cuofeng_perminute=0;
// addr
if(RCURRENT_CUOFENG_BUFFER_ADDR>=(use_xuliangzhouqi-1))
RCURRENT_CUOFENG_BUFFER_ADDR=0;
else
RCURRENT_CUOFENG_BUFFER_ADDR=RCURRENT_CUOFENG_BUFFER_ADDR+1;
// place
RCURRENT_CUOFENG_BUFFER[RCURRENT_CUOFENG_BUFFER_ADDR]=a2;
// num +1
if(RCURRENT_CUOFENG_BUFFER_NUM<use_xuliangzhouqi)
RCURRENT_CUOFENG_BUFFER_NUM=RCURRENT_CUOFENG_BUFFER_NUM+1;
// check
if(RCURRENT_CUOFENG_BUFFER_NUM>use_xuliangzhouqi)
RCURRENT_CUOFENG_BUFFER_NUM=use_xuliangzhouqi;
// cuo feng add ------------------------------------------->end
// stor num_pulse per minute ---------------------------------------------->end
// pei zhi function 程序配制功能实现AAAAAAA------------>START
if(progfunction_kva_f==no)
RCURRENT_KVA_F_BUFFER_NUM=0;
if(progfunction_kva_f_price==no)
RCURRENT_KVA_F_PRICE_BUFFER_NUM=0;
if(progfunction_kva_r==no)
RCURRENT_KVA_R_BUFFER_NUM=0;
if(progfunction_kva_r_price==no)
RCURRENT_KVA_R_PRICE_BUFFER_NUM=0;
if(progfunction_kvar_f ==no)
RCURRENT_KVAR_F_BUFFER_NUM=0;
if(progfunction_kvar_f_price==no)
RCURRENT_KVAR_F_PRICE_BUFFER_NUM=0;
if(progfunction_kvar_r==no)
RCURRENT_KVAR_R_BUFFER_NUM=0;
if(progfunction_kvar_r_price==no)
RCURRENT_KVAR_R_PRICE_BUFFER_NUM=0;
if(progfunction_kvar_1==no)
RCURRENT_KVAR_1_BUFFER_NUM=0;
//if(progfunction_kvar_1_price==no)
// RCURRENT_KVAR_1_PRICE_BUFFER_NUM=0;
if(progfunction_kvar_2==no)
RCURRENT_KVAR_2_BUFFER_NUM=0;
//if(progfunction_kvar_2_price==no)
// RCURRENT_KVAR_2_PRICE_BUFFER_NUM=0;
if(progfunction_kvar_3==no)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -