esp网页监控面板框架已成,通讯解决

This commit is contained in:
2025-10-29 00:05:05 +08:00
parent c1436f00f0
commit 3db2af8d2f
22 changed files with 13811 additions and 12266 deletions

View File

@@ -129,10 +129,37 @@ void Power_Ctrl_Loop_1ms(void)
timer_counter_1ms %= (1 * 500);
}
typedef union
{
uint8 send[4];
float data;
}tmp_float_data;
float Power_Vot_Protect_Send_Parser(void)
{
tmp_float_data protect_status;
for(uint8 i = 0; i < POWER_OUT_NUM; i++)
{
protect_status.send[0] |= (power_outs[i].status.voltage_protect_triggered >= power_outs[i].config.protect_trigger_cycles) << i;
}
for(uint8 i = 0; i < POWER_OUT_NUM; i++)
{
protect_status.send[1] |= (power_outs[i].status.current_protect_triggered >= power_outs[i].config.protect_trigger_cycles) << i;
}
for(uint8 i = 0; i < POWER_OUT_NUM; i++)
{
protect_status.send[2] |= (power_outs[i].status.power_protect_triggered >= power_outs[i].config.protect_trigger_cycles) << i;
}
for(uint8 i = 0; i < INA226_NUM; i++)
{
protect_status.send[3] |= (ina226[i].result.alert_flag) << i;
}
return protect_status.data;
}
void Power_Status_Upload(void)
{
VOFA_Set_JustFloat_Data(0, power_outs[0].status.voltage_V);
VOFA_Set_JustFloat_Data(1, power_outs[0].status.current_A);
VOFA_Set_JustFloat_Data(2, power_outs[1].status.voltage_V);
@@ -154,8 +181,42 @@ void Power_Status_Upload(void)
VOFA_Set_JustFloat_Data(18,ina226[1].result.voltage_V);
VOFA_Set_JustFloat_Data(19,ina226[1].result.current_A);
VOFA_Set_JustFloat_Data(22,vofa_last_data);
VOFA_Send_Datas(27);
VOFA_Set_JustFloat_Data(20,power_outs[0].status.power_W);
VOFA_Set_JustFloat_Data(21,power_outs[0].status.energy_J);
VOFA_Set_JustFloat_Data(22,power_outs[0].status.quantity_C);
VOFA_Set_JustFloat_Data(23,power_outs[1].status.power_W);
VOFA_Set_JustFloat_Data(24,power_outs[1].status.energy_J);
VOFA_Set_JustFloat_Data(25,power_outs[1].status.quantity_C);
VOFA_Set_JustFloat_Data(26,power_outs[2].status.power_W);
VOFA_Set_JustFloat_Data(27,power_outs[2].status.energy_J);
VOFA_Set_JustFloat_Data(28,power_outs[2].status.quantity_C);
VOFA_Set_JustFloat_Data(29,power_outs[3].status.power_W);
VOFA_Set_JustFloat_Data(30,power_outs[3].status.energy_J);
VOFA_Set_JustFloat_Data(31,power_outs[3].status.quantity_C);
VOFA_Set_JustFloat_Data(32,power_outs[4].status.power_W);
VOFA_Set_JustFloat_Data(33,power_outs[4].status.energy_J);
VOFA_Set_JustFloat_Data(34,power_outs[4].status.quantity_C);
VOFA_Set_JustFloat_Data(35,power_outs[5].status.power_W);
VOFA_Set_JustFloat_Data(36,power_outs[5].status.energy_J);
VOFA_Set_JustFloat_Data(37,power_outs[5].status.quantity_C);
VOFA_Set_JustFloat_Data(38,power_outs[6].status.power_W);
VOFA_Set_JustFloat_Data(39,power_outs[6].status.energy_J);
VOFA_Set_JustFloat_Data(40,power_outs[6].status.quantity_C);
VOFA_Set_JustFloat_Data(41,power_outs[7].status.power_W);
VOFA_Set_JustFloat_Data(42,power_outs[7].status.energy_J);
VOFA_Set_JustFloat_Data(43,power_outs[7].status.quantity_C);
VOFA_Set_JustFloat_Data(44,ina226[0].result.power_W);
VOFA_Set_JustFloat_Data(45,ina226[0].result.energy_J);
VOFA_Set_JustFloat_Data(46,ina226[0].result.quantity_C);
VOFA_Set_JustFloat_Data(47,ina226[1].result.power_W);
VOFA_Set_JustFloat_Data(48,ina226[1].result.energy_J);
VOFA_Set_JustFloat_Data(49,ina226[1].result.quantity_C);
float protect_status = Power_Vot_Protect_Send_Parser();
VOFA_Set_JustFloat_Data(50,protect_status);
VOFA_Set_JustFloat_Data(51,vofa_last_data);
VOFA_Send_Datas(52);
}