|
|
@@ -137,6 +137,14 @@ extern META_DATA_S meta_data ;
|
|
|
extern information_t infomation;
|
|
|
|
|
|
|
|
|
+#if SUPPORT_SELF_LOCK
|
|
|
+ extern uint8_t handle_k_1_status;
|
|
|
+ extern uint8_t handle_k_2_status;
|
|
|
+ extern uint8_t handle_k_3_status;
|
|
|
+ extern uint8_t handle_k_4_status;
|
|
|
+#endif
|
|
|
+
|
|
|
+
|
|
|
eMBErrorCode
|
|
|
eMBRegHoldingCB( UCHAR * pucRegBuffer, USHORT usAddress, USHORT usNRegs, eMBRegisterMode eMode )
|
|
|
{
|
|
|
@@ -281,6 +289,33 @@ eMBRegHoldingCB( UCHAR * pucRegBuffer, USHORT usAddress, USHORT usNRegs, eMBRegi
|
|
|
EE_ACDC_State_ReadReg[i].ACDC_Ele_Upthr_En = false;
|
|
|
}
|
|
|
}
|
|
|
+#if SUPPORT_SELF_LOCK
|
|
|
+ #if (RelaySlaveChaNum >= 1)
|
|
|
+ if(handle_k_1_status == 0)
|
|
|
+ {
|
|
|
+ EE_ACDC_State_ReadReg[0].ACDC_Cha_On_Off_State = 0;
|
|
|
+ }
|
|
|
+ #endif
|
|
|
+ #if (RelaySlaveChaNum >= 2)
|
|
|
+ if(handle_k_2_status == 0)
|
|
|
+ {
|
|
|
+ EE_ACDC_State_ReadReg[1].ACDC_Cha_On_Off_State = 0;
|
|
|
+ }
|
|
|
+ #endif
|
|
|
+ #if (RelaySlaveChaNum >= 3)
|
|
|
+ if(handle_k_3_status == 0)
|
|
|
+ {
|
|
|
+ EE_ACDC_State_ReadReg[2].ACDC_Cha_On_Off_State = 0;
|
|
|
+ }
|
|
|
+ #endif
|
|
|
+ #if (RelaySlaveChaNum >= 4)
|
|
|
+ if(handle_k_4_status == 0)
|
|
|
+ {
|
|
|
+ EE_ACDC_State_ReadReg[3].ACDC_Cha_On_Off_State = 0;
|
|
|
+ }
|
|
|
+ #endif
|
|
|
+
|
|
|
+#endif
|
|
|
memcpy(&Eeprom_Wbuf,&EE_ACDC_State_ReadReg[Chal_num],WusNRegs*2); //将数据由16进制转化为无符号数据存入数组
|
|
|
AT24CxxWrite(Eepr_AC_Sing_State_SmaWAddr+WeeiRegIndex*2,Eeprom_Wbuf, WusNRegs*2); //将数据写入到eeprom中
|
|
|
if((WusNRegs==RelaySlaveChaNum)&&(EE_ACDC_State_ReadReg[0].ACDC_Cha_On_Off_State==true)&&(EE_ACDC_State_ReadReg[0].ACDC_ALLCha_On_State==true))//通过下发的通道数和开关状态可以判断为全开
|