|
|
@@ -692,8 +692,8 @@ int main(void)
|
|
|
#if SUPPORT_EIGHT_LIGHT
|
|
|
Relayx_Onoff_state(7,RELAY_ON);
|
|
|
#endif
|
|
|
- //Fwdgt_Init();
|
|
|
-
|
|
|
+ Fwdgt_Init();
|
|
|
+static uint8_t write_iic_flash = 0;
|
|
|
while(1)
|
|
|
{
|
|
|
|
|
|
@@ -838,6 +838,7 @@ int main(void)
|
|
|
|
|
|
if(Get1SecFlag()) //判断1s标志状态
|
|
|
{
|
|
|
+ write_iic_flash++;
|
|
|
LEDFlicker2();
|
|
|
Clr1SecFlag(); //清除1s标志
|
|
|
//read_adc_val();//定时读取ADC的数据
|
|
|
@@ -867,12 +868,22 @@ int main(void)
|
|
|
}
|
|
|
|
|
|
//将耗电量实时写入Eeprom
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if(write_iic_flash == 90)
|
|
|
+ {
|
|
|
+ write_iic_flash = 0;
|
|
|
+ for(i = 0;i < DCPDU_active_chn;i++)
|
|
|
+ {
|
|
|
+ temp0 = 4*i;
|
|
|
Eeprom_Rbuf[ERom_TotalWh1_Addr + temp0] = DCPDU_Modbus_Reg[temp0 + Mb_Dbuff_P1Output_Addr + 3] >> 24;
|
|
|
Eeprom_Rbuf[ERom_TotalWh1_Addr + temp0 + 1] = DCPDU_Modbus_Reg[temp0 + Mb_Dbuff_P1Output_Addr + 3] >> 16;
|
|
|
Eeprom_Rbuf[ERom_TotalWh1_Addr + temp0 + 2] = DCPDU_Modbus_Reg[temp0 + Mb_Dbuff_P1Output_Addr + 3] >> 8;
|
|
|
Eeprom_Rbuf[ERom_TotalWh1_Addr + temp0 + 3] = DCPDU_Modbus_Reg[temp0 + Mb_Dbuff_P1Output_Addr + 3];
|
|
|
AT24CxxWrite(ERom_TotalWh1_Addr + temp0,(Eeprom_Rbuf + ERom_TotalWh1_Addr + temp0),4);
|
|
|
}
|
|
|
+ }
|
|
|
#if (SUPPORT_IM1253E == 0)
|
|
|
DCPDU_Modbus_Reg[Mb_Dbuff_KWhInput_Addr] = kWh_in;
|
|
|
DC_BASE[3] = DCPDU_Modbus_Reg[Mb_Dbuff_KWhInput_Addr];
|
|
|
@@ -932,7 +943,7 @@ int main(void)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- DCPDU_Modbus_Reg[temp0 + Mb_Dbuff_P1Output_Addr + 1] = DC_I_calfunction(adc_Avg_value[i]);//输出电流
|
|
|
+ DCPDU_Modbus_Reg[temp0 + Mb_Dbuff_P1Output_Addr + 1] = DC_I_calfunction(adc_Avg_value[i],i);//输出电流
|
|
|
|
|
|
|
|
|
if(Load_conn_end_flag)//负载加载以后再检测电流
|