|
@@ -196,7 +196,7 @@ static void slave_read(slave_handle_t *sh, uint32_t addr,int num,uint32_t reg_ty
|
|
|
{
|
|
{
|
|
|
uint32_t *base_addr = (uint32_t *)modbus_single[reg_type].addr;
|
|
uint32_t *base_addr = (uint32_t *)modbus_single[reg_type].addr;
|
|
|
uint32_t step = addr - sh->map->start_registers;
|
|
uint32_t step = addr - sh->map->start_registers;
|
|
|
- base_addr = base_addr + (addr - modbus_single[reg_type].offset);
|
|
|
|
|
|
|
+ base_addr = base_addr + (addr - modbus_single[reg_type].offset) / 2;
|
|
|
uint32_t *map_addr = (uint32_t *)&(sh->map->tab_registers[step]);
|
|
uint32_t *map_addr = (uint32_t *)&(sh->map->tab_registers[step]);
|
|
|
if(num < 126)
|
|
if(num < 126)
|
|
|
{
|
|
{
|
|
@@ -448,6 +448,7 @@ void cascade_slave_write(uint32_t addr, uint16_t val)
|
|
|
||__globalDeviceManage._global_device_info->product_pwr_type == SmartPDU_Tree_AC_One_B
|
|
||__globalDeviceManage._global_device_info->product_pwr_type == SmartPDU_Tree_AC_One_B
|
|
|
)
|
|
)
|
|
|
{
|
|
{
|
|
|
|
|
+ printf("hwllo every one stop time !!!!\n");
|
|
|
ret = g_switch_set_t_ac_start_time_delay(&__globalDeviceManage._globalRelaySampManger,
|
|
ret = g_switch_set_t_ac_start_time_delay(&__globalDeviceManage._globalRelaySampManger,
|
|
|
_globalPowerMangerTemp->product_saddr, (_globalPowerMangerTemp->product_ch_addr - 1) * 3, val / 1000);
|
|
_globalPowerMangerTemp->product_saddr, (_globalPowerMangerTemp->product_ch_addr - 1) * 3, val / 1000);
|
|
|
ret = g_switch_set_t_ac_start_time_delay(&__globalDeviceManage._globalRelaySampManger,
|
|
ret = g_switch_set_t_ac_start_time_delay(&__globalDeviceManage._globalRelaySampManger,
|
|
@@ -518,7 +519,7 @@ void cascade_slave_write(uint32_t addr, uint16_t val)
|
|
|
{
|
|
{
|
|
|
int t_ac_CtrlType=0;
|
|
int t_ac_CtrlType=0;
|
|
|
int nRet = 0;
|
|
int nRet = 0;
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
_globalPowerMangerTemp->product_ch_status = val;
|
|
_globalPowerMangerTemp->product_ch_status = val;
|
|
|
|
|
|
|
|
GlobalTreeACManager *_globalTACManager = NULL;
|
|
GlobalTreeACManager *_globalTACManager = NULL;
|
|
@@ -530,6 +531,25 @@ void cascade_slave_write(uint32_t addr, uint16_t val)
|
|
|
||__globalDeviceManage._global_device_info->product_pwr_type == SmartPDU_Tree_AC_One
|
|
||__globalDeviceManage._global_device_info->product_pwr_type == SmartPDU_Tree_AC_One
|
|
|
||__globalDeviceManage._global_device_info->product_pwr_type == SmartPDU_Tree_AC_One_B))
|
|
||__globalDeviceManage._global_device_info->product_pwr_type == SmartPDU_Tree_AC_One_B))
|
|
|
{
|
|
{
|
|
|
|
|
+ if(_globalPowerMangerTemp->product_ch_type == AC_SINGLE_S_TYPE || _globalPowerMangerTemp->product_ch_type == AC_SINGLE_B_TYPE)
|
|
|
|
|
+ {
|
|
|
|
|
+ if (val == 1)
|
|
|
|
|
+ {
|
|
|
|
|
+ if (_globalPowerMangerTemp->global_over_manager->product_vol_upper_enable == 1)
|
|
|
|
|
+ val |= ENABLE_TAC_V_UP;
|
|
|
|
|
+ if (_globalPowerMangerTemp->global_over_manager->product_vol_lower_enable == 1)
|
|
|
|
|
+ val |= ENABLE_TAC_V_DOWN;
|
|
|
|
|
+ if (_globalPowerMangerTemp->global_over_manager->product_cur_upper_enable == 1)
|
|
|
|
|
+ val |= ENABLE_TAC_A_UP;
|
|
|
|
|
+ if (_globalPowerMangerTemp->global_over_manager->product_pwr_upper_enable == 1)
|
|
|
|
|
+ val |= ENABLE_TAC_W_UP;
|
|
|
|
|
+ if (_globalPowerMangerTemp->global_over_manager->product_pwrcon_upper_enable == 1)
|
|
|
|
|
+ val |= ENABLE_TAC_P_UP;
|
|
|
|
|
+ }
|
|
|
|
|
+ g_switch_set_ac_single_s_chn_ctrl(&__globalDeviceManage._globalRelaySampManger, _globalPowerMangerTemp->product_saddr,
|
|
|
|
|
+ (_globalPowerMangerTemp->product_ch_addr- 1), val);
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
unsigned short phsts=0;
|
|
unsigned short phsts=0;
|
|
|
list_for_each_entry(_globalTACManager, &_globalPowerMangerTemp->list_Tree_AC, list_Tree_AC)
|
|
list_for_each_entry(_globalTACManager, &_globalPowerMangerTemp->list_Tree_AC, list_Tree_AC)
|
|
|
{
|
|
{
|
|
@@ -549,7 +569,6 @@ void cascade_slave_write(uint32_t addr, uint16_t val)
|
|
|
}else{
|
|
}else{
|
|
|
phsts=0;
|
|
phsts=0;
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
nRet= g_switch_set_t_ac_phchn_ctrl(&__globalDeviceManage._globalRelaySampManger,
|
|
nRet= g_switch_set_t_ac_phchn_ctrl(&__globalDeviceManage._globalRelaySampManger,
|
|
|
_globalTACManager->product_saddr,
|
|
_globalTACManager->product_saddr,
|
|
|
_globalTACManager->product_ch_addr - 1,
|
|
_globalTACManager->product_ch_addr - 1,
|