update
This commit is contained in:
@@ -66,6 +66,7 @@ static char *hmi_proto_string_baudrate[] =
|
||||
};
|
||||
|
||||
|
||||
|
||||
static bsp_uart_t * p_rx_uart = NULL;
|
||||
|
||||
gui_tjc_hmi_t tjc_hmi =
|
||||
@@ -204,21 +205,9 @@ static void gui_tjc_hmi_main_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
}
|
||||
}
|
||||
}break;
|
||||
case 0x02:
|
||||
{
|
||||
|
||||
}break;
|
||||
default:return;
|
||||
}
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer,len);
|
||||
}
|
||||
else if(HMI_PROTO_CMD_SET == cmd)/*<2A><><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x03:/*<2A><>ҳ*/
|
||||
{
|
||||
if(0x01 == p_data[0])
|
||||
if(0x01 == p_data[5])
|
||||
{
|
||||
if(page_num - 1 <= p_tjc_hmi->page.main_index)
|
||||
{
|
||||
@@ -247,25 +236,251 @@ static void gui_tjc_hmi_main_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
len = strlen((char *)hmi_tx_buffer);
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer,len);
|
||||
}
|
||||
else if(HMI_PROTO_CMD_SET == cmd)/*<2A><><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
if(0x01 == p_data[0])
|
||||
{
|
||||
/*01<30><EFBFBD><F2BFAAB7><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
}
|
||||
else
|
||||
{
|
||||
/*00<30>رշ<D8B1><D5B7><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
}
|
||||
}
|
||||
default:return;
|
||||
}
|
||||
len = strlen((char *)hmi_tx_buffer);
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer,len);
|
||||
}
|
||||
}
|
||||
|
||||
/*ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ*/
|
||||
static void gui_tjc_hmi_curr_alarm_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
u16 len = 0,i;
|
||||
/*ÿҳ<C3BF><D2B3>ʾ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>*/
|
||||
#define REAL_ALARM_PAGE_NUM (4)
|
||||
u16 len = 0,i,j,x,y,device_index,ch,index;
|
||||
u8 page_num,remain_alrm_device_num,display_count;
|
||||
u8 alarm_device_count;
|
||||
u8 alarm_device_index[APP_LEAKAGE_SUB_DEVICE_NUM];
|
||||
|
||||
memset(hmi_tx_buffer,0,sizeof(hmi_tx_buffer));
|
||||
|
||||
/*<2A><><EFBFBD>㱨<EFBFBD><E3B1A8><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>*/
|
||||
alarm_device_count = 0;
|
||||
for(i = 0;i<APP_LEAKAGE_SUB_DEVICE_NUM;i++)
|
||||
{
|
||||
if(ENABLE != leakage.sub_device_data[i].flash_data.state)
|
||||
{
|
||||
continue ;
|
||||
}
|
||||
for(ch=0;ch<APP_LEAKAGE_SUB_DEVICE_CH_NUM;ch++)
|
||||
{
|
||||
u16 ch_state = leakage.sub_device_data[i].ch_data[ch].state;
|
||||
if(ch_state & (APP_LEAKAGE_SUB_DEVICE_STATE_TIME_OUT | APP_LEAKAGE_SUB_DEVICE_STATE_OPEN | APP_LEAKAGE_SUB_DEVICE_STATE_LEAKAGE))
|
||||
{
|
||||
alarm_device_index[alarm_device_count] = i;
|
||||
alarm_device_count++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*<2A><><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
page_num = alarm_device_count / REAL_ALARM_PAGE_NUM;
|
||||
remain_alrm_device_num = alarm_device_count % REAL_ALARM_PAGE_NUM;
|
||||
if(remain_alrm_device_num > 0)
|
||||
{
|
||||
page_num++;
|
||||
}
|
||||
|
||||
|
||||
if(HMI_PROTO_CMD_GET == cmd)/*<2A><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><>ȡʵʱ<CAB5><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ*/
|
||||
{
|
||||
|
||||
if(p_tjc_hmi->page.real_alarm_index == page_num - 1 && remain_alrm_device_num > 0)
|
||||
{
|
||||
for(j=0;j<remain_alrm_device_num;j++)
|
||||
{
|
||||
index = p_tjc_hmi->page.real_alarm_index * REAL_ALARM_PAGE_NUM + j;
|
||||
device_index = alarm_device_index[index];
|
||||
x = j;
|
||||
|
||||
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
y = 0;
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"%s",leakage.sub_device_data[index].flash_data.region_name);
|
||||
|
||||
/*<2A>豸ID*/
|
||||
y = 1;
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"%s",leakage.sub_device_data[index].flash_data.modbus_id);
|
||||
|
||||
/*<2A>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>*/
|
||||
y = 2;
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"%s",leakage.sub_device_data[index].flash_data.device_name);
|
||||
|
||||
/*ͨѶ״̬*/
|
||||
y =3;
|
||||
u8 comm_state = 0;
|
||||
for(ch=0;ch<APP_LEAKAGE_SUB_DEVICE_CH_NUM;ch++)
|
||||
{
|
||||
if(leakage.sub_device_data[device_index].ch_data[ch].state & APP_LEAKAGE_SUB_DEVICE_STATE_TIME_OUT)
|
||||
{
|
||||
comm_state = APP_LEAKAGE_SUB_DEVICE_STATE_TIME_OUT;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(comm_state & APP_LEAKAGE_SUB_DEVICE_STATE_TIME_OUT)
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD><EFBFBD>ʱ");
|
||||
}else
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
/*ͨ<><CDA8>״̬*/
|
||||
for(ch=0;ch<APP_LEAKAGE_SUB_DEVICE_CH_NUM;ch++)
|
||||
{
|
||||
u16 ch_state = leakage.sub_device_data[device_index].ch_data[ch].state;
|
||||
u16 ch_distance = leakage.sub_device_data[device_index].ch_data[ch].distance;
|
||||
|
||||
y = 4 + (ch * 3);
|
||||
if(ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_LEAKAGE)
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"©Һ");
|
||||
}else
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
y =5 + (ch * 3);
|
||||
if(ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_OPEN)
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD>ϴ<EFBFBD>");
|
||||
}else
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
y = 6 + (ch * 3);
|
||||
if(ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_LEAKAGE)
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"%d",ch_distance);
|
||||
}else
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for(j=0;j<REAL_ALARM_PAGE_NUM;j++)
|
||||
{
|
||||
index = p_tjc_hmi->page.real_alarm_index * REAL_ALARM_PAGE_NUM + j;
|
||||
device_index = alarm_device_index[index];
|
||||
|
||||
x = j;
|
||||
|
||||
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
y = 0;
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"%s",leakage.sub_device_data[device_index].flash_data.region_name);
|
||||
|
||||
/*<2A>豸ID*/
|
||||
y = 1;
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"%s",leakage.sub_device_data[index].flash_data.modbus_id);
|
||||
|
||||
/*<2A>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>*/
|
||||
y = 2;
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"%s",leakage.sub_device_data[index].flash_data.device_name);
|
||||
|
||||
/*ͨѶ״̬*/
|
||||
y =3;
|
||||
u8 comm_state = 0;
|
||||
for(ch=0;ch<APP_LEAKAGE_SUB_DEVICE_CH_NUM;ch++)
|
||||
{
|
||||
if(leakage.sub_device_data[device_index].ch_data[ch].state & APP_LEAKAGE_SUB_DEVICE_STATE_TIME_OUT)
|
||||
{
|
||||
comm_state = APP_LEAKAGE_SUB_DEVICE_STATE_TIME_OUT;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(comm_state & APP_LEAKAGE_SUB_DEVICE_STATE_TIME_OUT)
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD><EFBFBD>ʱ");
|
||||
}else
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
/*ͨ<><CDA8>״̬*/
|
||||
for(ch=0;ch<APP_LEAKAGE_SUB_DEVICE_CH_NUM;ch++)
|
||||
{
|
||||
u16 ch_state = leakage.sub_device_data[device_index].ch_data[ch].state;
|
||||
u16 ch_distance = leakage.sub_device_data[device_index].ch_data[ch].distance;
|
||||
|
||||
y = 4 + (ch * 3);
|
||||
if(ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_LEAKAGE)
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"©Һ");
|
||||
}else
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
y =5 + (ch * 3);
|
||||
if(ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_OPEN)
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD>ϴ<EFBFBD>");
|
||||
}else
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
y = 6 + (ch * 3);
|
||||
if(ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_LEAKAGE)
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"%d",ch_distance);
|
||||
}else
|
||||
{
|
||||
len = gui_tjc_hmi_tx_text_display(x+1,y+1,(char *)&hmi_tx_buffer[len],"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x03:/*<2A><>ҳ*/
|
||||
{
|
||||
|
||||
}break;
|
||||
if(0x01 == p_data[0])
|
||||
{
|
||||
if(page_num - 1 <= p_tjc_hmi->page.real_alarm_index)
|
||||
{
|
||||
p_tjc_hmi->page.real_alarm_index = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
p_tjc_hmi->page.real_alarm_index++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
if(0 == p_tjc_hmi->page.real_alarm_index)
|
||||
{
|
||||
p_tjc_hmi->page.real_alarm_index = page_num - 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
p_tjc_hmi->page.real_alarm_index--;
|
||||
}
|
||||
}
|
||||
}
|
||||
default:return;
|
||||
}
|
||||
len = strlen((char *)hmi_tx_buffer);
|
||||
@@ -290,43 +505,243 @@ static void gui_tjc_hmi_curr_alarm_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
}
|
||||
}
|
||||
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
static void gui_tjc_hmi_detail_main_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
static void gui_tjc_hmi_detail_main_send(u8 cmd, u8 opa, u8 *p_data)
|
||||
{
|
||||
u16 len = 0,i;
|
||||
#define DETAIL_MAIN_NUM (4) /* ÿҳ<C3BF><D2B3>ʾ4<CABE><34><EFBFBD>豸 */
|
||||
|
||||
if(HMI_PROTO_CMD_GET == cmd)/*<2A><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>*/
|
||||
u16 len = 0, i, sub_device_index, ch, x, y, index;
|
||||
u8 page_num, remain_device_num, display_count;
|
||||
u8 region_idx; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
app_leakage_region_data_class_t *region_data;
|
||||
|
||||
memset(hmi_tx_buffer, 0, sizeof(hmi_tx_buffer));
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿҳ<C3BF><D2B3>ʾ4<CABE><34><EFBFBD>豸 */
|
||||
page_num = region_data->sub_device_num / DETAIL_MAIN_NUM;
|
||||
remain_device_num = region_data->sub_device_num % DETAIL_MAIN_NUM;
|
||||
if (remain_device_num > 0)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
{
|
||||
|
||||
}break;
|
||||
default:return;
|
||||
}
|
||||
len = strlen((char *)hmi_tx_buffer);
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer,len);
|
||||
page_num++;
|
||||
}
|
||||
else if(HMI_PROTO_CMD_SET == cmd)/*<2A><><EFBFBD><EFBFBD>*/
|
||||
|
||||
if (HMI_PROTO_CMD_GET == cmd) /* <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD> */
|
||||
{
|
||||
switch(opa)
|
||||
switch (opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01: /* <20><>ȡ<EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ */
|
||||
{
|
||||
/* <20><>ָ<EFBFBD><D6B8><EFBFBD>л<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (p_data[0] = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-4) */
|
||||
u8 relative_region_idx = p_data[0];
|
||||
|
||||
if (relative_region_idx < 1 || relative_region_idx > 4)
|
||||
{
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>Ĭ<EFBFBD><C4AC><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>һ<EFBFBD><D2BB> */
|
||||
relative_region_idx = 1;
|
||||
}
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3> * 4 + <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - 1 */
|
||||
region_idx = p_tjc_hmi->page.main_index * 4 + (relative_region_idx - 1);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч */
|
||||
if (region_idx >= leakage.region_num)
|
||||
{
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD>磬<EFBFBD><E7A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
region_idx = 0;
|
||||
}
|
||||
|
||||
/* <20>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
if (region_idx != p_tjc_hmi->page.deliniter_main_index)
|
||||
{
|
||||
p_tjc_hmi->page.detail_main_index = 0;
|
||||
}
|
||||
|
||||
/* <20><><EFBFBD>浱ǰ<E6B5B1><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD>룬<EFBFBD><EBA3AC>ҳʱʹ<CAB1><CAB9> */
|
||||
p_tjc_hmi->page.deliniter_main_index = region_idx;
|
||||
|
||||
/* <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
region_data = &leakage.region_data[region_idx];
|
||||
|
||||
/* <20><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD> */
|
||||
u8 start_index = p_tjc_hmi->page.detail_main_index * DETAIL_MAIN_NUM;
|
||||
|
||||
if (p_tjc_hmi->page.detail_main_index == page_num - 1 && remain_device_num > 0)
|
||||
{
|
||||
display_count = remain_device_num;
|
||||
}
|
||||
else
|
||||
{
|
||||
display_count = DETAIL_MAIN_NUM;
|
||||
}
|
||||
|
||||
for (i = 0; i < display_count; i++)
|
||||
{
|
||||
index = start_index + i;
|
||||
|
||||
if (index >= region_data->sub_device_num)
|
||||
break;
|
||||
|
||||
/* <20><>ȡ<EFBFBD>豸<EFBFBD><E8B1B8>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
sub_device_index = region_data->sub_device_index[index];
|
||||
x = i; /* 0-3<><33>ʾ<EFBFBD><CABE>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD>4<EFBFBD><34><EFBFBD>豸λ<E8B1B8><CEBB> */
|
||||
|
||||
/* <20>豸ID: t(x+1)_1 */
|
||||
y = 0;
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"%d",
|
||||
leakage.sub_device_data[sub_device_index].flash_data.modbus_id);
|
||||
|
||||
/* <20>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>: t(x+1)_2 */
|
||||
y = 1;
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"%s",
|
||||
leakage.sub_device_data[sub_device_index].flash_data.device_name);
|
||||
|
||||
/* ͨѶ״̬: t(x+1)_3 */
|
||||
y = 2;
|
||||
u8 comm_state = 0;
|
||||
for (ch = 0; ch < APP_LEAKAGE_SUB_DEVICE_CH_NUM; ch++)
|
||||
{
|
||||
if (leakage.sub_device_data[sub_device_index].ch_data[ch].state &
|
||||
APP_LEAKAGE_SUB_DEVICE_STATE_TIME_OUT)
|
||||
{
|
||||
comm_state = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (comm_state)
|
||||
{
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"<EFBFBD><EFBFBD>ʱ");
|
||||
}
|
||||
else
|
||||
{
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
/* ͨ<><CDA8>1-4״̬ */
|
||||
for (ch = 0; ch < APP_LEAKAGE_SUB_DEVICE_CH_NUM; ch++)
|
||||
{
|
||||
u16 ch_state = leakage.sub_device_data[sub_device_index].ch_data[ch].state;
|
||||
u16 ch_distance = leakage.sub_device_data[sub_device_index].ch_data[ch].distance;
|
||||
|
||||
/* ©Һ״̬ */
|
||||
y = 3 + (ch * 3);
|
||||
if (ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_LEAKAGE)
|
||||
{
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"©Һ");
|
||||
}
|
||||
else
|
||||
{
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
/* <20>ϴ<EFBFBD>״̬ */
|
||||
y = 4 + (ch * 3);
|
||||
if (ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_OPEN)
|
||||
{
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"<EFBFBD>ϴ<EFBFBD>");
|
||||
}
|
||||
else
|
||||
{
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||||
}
|
||||
|
||||
/* ©Һλ<D2BA><CEBB> */
|
||||
y = 5 + (ch * 3);
|
||||
if (ch_state & APP_LEAKAGE_SUB_DEVICE_STATE_LEAKAGE)
|
||||
{
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"%d",
|
||||
ch_distance);
|
||||
}
|
||||
else
|
||||
{
|
||||
len += gui_tjc_hmi_tx_text_display(x+1, y+1,
|
||||
(char *)&hmi_tx_buffer[len],
|
||||
"0");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x03: /* <20><>ҳ */
|
||||
{
|
||||
/* ʹ<><CAB9>֮ǰ<D6AE><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
region_idx = p_tjc_hmi->page.deliniter_main_index;
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч */
|
||||
if (region_idx >= leakage.region_num)
|
||||
{
|
||||
return; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD> */
|
||||
}
|
||||
|
||||
/* <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
region_data = &leakage.region_data[region_idx];
|
||||
|
||||
if(0x01 == p_data[0]) /* <20><>һҳ */
|
||||
{
|
||||
if(page_num - 1 <= p_tjc_hmi->page.detail_main_index)
|
||||
{
|
||||
p_tjc_hmi->page.detail_main_index = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
p_tjc_hmi->page.detail_main_index++;
|
||||
}
|
||||
}
|
||||
else /* <20><>һҳ */
|
||||
{
|
||||
if(0 == p_tjc_hmi->page.detail_main_index)
|
||||
{
|
||||
p_tjc_hmi->page.detail_main_index = page_num - 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
p_tjc_hmi->page.detail_main_index--;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
break;
|
||||
|
||||
}break;
|
||||
default:return;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>HMI<4D><49>Ļ */
|
||||
if (len > 0)
|
||||
{
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer, len);
|
||||
}
|
||||
}
|
||||
else if (HMI_PROTO_CMD_SET == cmd) /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
{
|
||||
switch (opa)
|
||||
{
|
||||
case 0x01: /* */
|
||||
{
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
return;
|
||||
}
|
||||
len = strlen((char *)hmi_tx_buffer);
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer,len);
|
||||
}
|
||||
}
|
||||
/*<2A><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>*/
|
||||
@@ -338,11 +753,11 @@ static void gui_tjc_hmi_login_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><>ȡflash<73>д洢<D0B4><E6B4A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,ֻ<>洢<EFBFBD><E6B4A2><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x02:/*<2A><>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -355,11 +770,11 @@ static void gui_tjc_hmi_login_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>flash<73><68>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x02:/*<2A><>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -379,11 +794,11 @@ static void gui_tjc_hmi_history_alarm_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><>ȡ<EFBFBD><C8A1>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϢӦ<CFA2>ô洢<C3B4><E6B4A2>flash<73>У<EFBFBD><D0A3><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸ID,<2C>豸<EFBFBD><E8B1B8><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>ʼʱ<CABC><CAB1>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x03:/*<2A><>ҳ<EFBFBD><D2B3><EFBFBD>ܣ<EFBFBD>ÿҳ15<31><35><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -396,11 +811,11 @@ static void gui_tjc_hmi_history_alarm_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x02:/*<2A><>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -420,11 +835,11 @@ static void gui_tjc_hmi_tcp_config_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>p_data[0]=0x01Ϊ<31><CEAA>ȡ<EFBFBD><C8A1><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>02Ϊ<32><CEAA>ȡĬ<C8A1>ϵ<EFBFBD>,<2C><><EFBFBD><EFBFBD>IP,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,DNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x02:/*<2A><>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -437,11 +852,11 @@ static void gui_tjc_hmi_tcp_config_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>flash*/
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x02:/*<2A><>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -461,11 +876,11 @@ static void gui_tjc_hmi_device_config_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><>ȡ<EFBFBD>Ѵ<EFBFBD><D1B4>ڵ<EFBFBD><DAB5>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>˿ڣ<CBBF><DAA3>豸ID,<2C>豸<EFBFBD><E8B1B8>,*/
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x03:/*<2A><>ҳ<EFBFBD><D2B3><EFBFBD>ܣ<EFBFBD>ÿҳ<C3BF><D2B3>ʾ8<CABE><38><EFBFBD>豸*/
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -478,51 +893,11 @@ static void gui_tjc_hmi_device_config_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
case 0x01:/*<2A><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>flash<73><68>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
{
|
||||
|
||||
}break;
|
||||
default:return;
|
||||
}
|
||||
len = strlen((char *)hmi_tx_buffer);
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer,len);
|
||||
}
|
||||
}
|
||||
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
static void gui_tjc_hmi_help_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
{
|
||||
u16 len = 0,i;
|
||||
|
||||
if(HMI_PROTO_CMD_GET == cmd)/*<2A><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
{
|
||||
|
||||
}break;
|
||||
default:return;
|
||||
}
|
||||
len = strlen((char *)hmi_tx_buffer);
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer,len);
|
||||
}
|
||||
else if(HMI_PROTO_CMD_SET == cmd)/*<2A><><EFBFBD><EFBFBD>*/
|
||||
{
|
||||
switch(opa)
|
||||
{
|
||||
case 0x01:
|
||||
{
|
||||
|
||||
}break;
|
||||
case 0x02:
|
||||
case 0x02:/*ɾ<><C9BE><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Ϣ<EFBFBD><CFA2>flash<73><68>ɾ<EFBFBD><C9BE>*/
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -532,6 +907,7 @@ static void gui_tjc_hmi_help_send(u8 cmd,u8 opa,u8 *p_data)
|
||||
gui_tjc_hmi_data_send(hmi_tx_buffer,len);
|
||||
}
|
||||
}
|
||||
|
||||
/*<2A><>Ļָ<C4BB><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
static void gui_tjc_hmi_communication_data_analysis(u8 *p_data, u16 len, void *rx_uart)
|
||||
{
|
||||
@@ -558,7 +934,7 @@ static void gui_tjc_hmi_communication_data_analysis(u8 *p_data, u16 len, void *r
|
||||
|
||||
/*CMD*/
|
||||
cmd = p_data[2];
|
||||
if(cmd != HMI_PROTO_CMD_GET || HMI_PROTO_CMD_GET != HMI_PROTO_CMD_SET)
|
||||
if(cmd != HMI_PROTO_CMD_GET || cmd != HMI_PROTO_CMD_SET)
|
||||
{
|
||||
return ;
|
||||
}
|
||||
@@ -582,7 +958,7 @@ static void gui_tjc_hmi_communication_data_analysis(u8 *p_data, u16 len, void *r
|
||||
}break;
|
||||
case HMI_PROTO_GUI_LOGIN :
|
||||
{
|
||||
gui_tjc_hmi_main_send(cmd,opa,p_offset_data);
|
||||
//gui_tjc_hmi_main_send(cmd,opa,p_offset_data);
|
||||
}break;
|
||||
case HMI_PROTO_GUI_HISTORY_ALARM :
|
||||
{
|
||||
@@ -598,7 +974,7 @@ static void gui_tjc_hmi_communication_data_analysis(u8 *p_data, u16 len, void *r
|
||||
}break;
|
||||
case HMI_PROTO_GUI_HELP :
|
||||
{
|
||||
gui_tjc_hmi_help_send(cmd,opa,p_offset_data);
|
||||
//gui_tjc_hmi_help_send(cmd,opa,p_offset_data);
|
||||
}break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user