io页面ui刷新逻辑修改
This commit is contained in:
1 parent
f687b4aac4
commit
281662556f
5 files changed
+63
-9
No files matched your search
@@ -260,15 +260,18 @@ static void tabview_event_cb(lv_event_t *e)
|
|||||||
// 根据 tab_id 执行不同操作
|
// 根据 tab_id 执行不同操作
|
||||||
switch (tab_id) {
|
switch (tab_id) {
|
||||||
case 0://工单页面
|
case 0://工单页面
|
||||||
|
io_ui_show=0;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 1://工艺页面
|
case 1://工艺页面
|
||||||
|
io_ui_show=0;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
|
io_ui_show=1;
|
||||||
break;
|
break;
|
||||||
case 3://程序页面
|
case 3://程序页面
|
||||||
|
io_ui_show=0;
|
||||||
lv_obj_add_state(guider_ui.screen_set_Edit,LV_STATE_DISABLED);
|
lv_obj_add_state(guider_ui.screen_set_Edit,LV_STATE_DISABLED);
|
||||||
lv_obj_add_state(guider_ui.screen_set_Insert,LV_STATE_DISABLED);
|
lv_obj_add_state(guider_ui.screen_set_Insert,LV_STATE_DISABLED);
|
||||||
lv_obj_add_state(guider_ui.screen_set_Delete,LV_STATE_DISABLED);
|
lv_obj_add_state(guider_ui.screen_set_Delete,LV_STATE_DISABLED);
|
||||||
@@ -276,18 +279,47 @@ static void tabview_event_cb(lv_event_t *e)
|
|||||||
UI_pname_row();
|
UI_pname_row();
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
|
io_ui_show=0;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 机台页面事件回调函数
|
||||||
|
static void w_io_event_cb(lv_event_t *e)
|
||||||
|
{
|
||||||
|
lv_event_code_t code = lv_event_get_code(e);
|
||||||
|
lv_obj_t *tabview = lv_event_get_target(e);
|
||||||
|
|
||||||
|
if (code == LV_EVENT_VALUE_CHANGED) {
|
||||||
|
// 获取当前选中的 Tab 索引
|
||||||
|
uint16_t tab_id = lv_tabview_get_tab_act(tabview);
|
||||||
|
// 根据 tab_id 执行不同操作
|
||||||
|
switch (tab_id) {
|
||||||
|
case 0:
|
||||||
|
io_ui_size=0;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
io_ui_size=1;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
io_ui_size=2;
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
io_ui_size=3;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void custom_init(lv_ui *ui)
|
void custom_init(lv_ui *ui)
|
||||||
{
|
{
|
||||||
lv_obj_clear_flag(lv_tabview_get_content(ui->screen_tabview), LV_OBJ_FLAG_SCROLLABLE);//禁止左右滑动
|
lv_obj_clear_flag(lv_tabview_get_content(ui->screen_tabview), LV_OBJ_FLAG_SCROLLABLE);//禁止左右滑动
|
||||||
lv_obj_clear_flag(lv_tabview_get_content(ui->screen_w_io), LV_OBJ_FLAG_SCROLLABLE);//禁止左右滑动
|
lv_obj_clear_flag(lv_tabview_get_content(ui->screen_w_io), LV_OBJ_FLAG_SCROLLABLE);//禁止左右滑动
|
||||||
|
|
||||||
|
//选项卡回调事件设置
|
||||||
lv_obj_add_event_cb(ui->screen_tabview, tabview_event_cb, LV_EVENT_VALUE_CHANGED, NULL);//
|
lv_obj_add_event_cb(ui->screen_tabview, tabview_event_cb, LV_EVENT_VALUE_CHANGED, NULL);//
|
||||||
|
lv_obj_add_event_cb(ui->screen_w_io, w_io_event_cb, LV_EVENT_VALUE_CHANGED, NULL);//
|
||||||
|
|
||||||
lv_obj_set_style_pad_all(ui->screen_tabview_tab_1, 0, LV_PART_MAIN);
|
lv_obj_set_style_pad_all(ui->screen_tabview_tab_1, 0, LV_PART_MAIN);
|
||||||
lv_obj_set_style_pad_all(ui->screen_tabview_tab_2, 0, LV_PART_MAIN);
|
lv_obj_set_style_pad_all(ui->screen_tabview_tab_2, 0, LV_PART_MAIN);
|
||||||
|
|||||||
@@ -94,10 +94,7 @@ void setup_s_screen(lv_ui *ui)
|
|||||||
lv_obj_add_flag(ui->screen_inf_lock, LV_OBJ_FLAG_HIDDEN);
|
lv_obj_add_flag(ui->screen_inf_lock, LV_OBJ_FLAG_HIDDEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
update_led_i();
|
update_io_ui();
|
||||||
update_led_o();
|
|
||||||
|
|
||||||
update_io_labels();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void time_update_timer_cb(lv_timer_t * timer)
|
static void time_update_timer_cb(lv_timer_t * timer)
|
||||||
|
|||||||
@@ -23,8 +23,9 @@
|
|||||||
#include <ui_data_labels.h>
|
#include <ui_data_labels.h>
|
||||||
#include "libcsv.h"
|
#include "libcsv.h"
|
||||||
|
|
||||||
|
|
||||||
// 全局或静态数组
|
// 全局或静态数组
|
||||||
|
char io_ui_size =0;
|
||||||
|
char io_ui_show=0;
|
||||||
char buf[8];
|
char buf[8];
|
||||||
lv_obj_t *di_led_array[64];
|
lv_obj_t *di_led_array[64];
|
||||||
lv_obj_t *do_led_array[64];
|
lv_obj_t *do_led_array[64];
|
||||||
@@ -263,6 +264,28 @@ void update_led_o(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void update_io_ui(void)
|
||||||
|
{
|
||||||
|
if(io_ui_show==1)
|
||||||
|
{
|
||||||
|
switch (io_ui_size)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
update_led_i();
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
update_led_o();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
update_io_labels();
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取当前时间字符串,格式:2025/01/25 13:55:11
|
* 获取当前时间字符串,格式:2025/01/25 13:55:11
|
||||||
* @param buf 输出缓冲区
|
* @param buf 输出缓冲区
|
||||||
|
|||||||
@@ -91,15 +91,15 @@ extern WorkOrder_DATA_tab * WorkDATA_tab;
|
|||||||
extern Program_DATA_tab * ProgramDATA_tab;
|
extern Program_DATA_tab * ProgramDATA_tab;
|
||||||
extern STEP_DATA_tab * StepDATA_tab;
|
extern STEP_DATA_tab * StepDATA_tab;
|
||||||
|
|
||||||
|
extern char io_ui_size;
|
||||||
|
extern char io_ui_show;
|
||||||
extern lv_obj_t *di_led_array[64];
|
extern lv_obj_t *di_led_array[64];
|
||||||
extern lv_obj_t *do_led_array[64];
|
extern lv_obj_t *do_led_array[64];
|
||||||
extern lv_obj_t *di_labels[24]; // DI: AIO4001 ~ AIO4024 (24个)
|
extern lv_obj_t *di_labels[24]; // DI: AIO4001 ~ AIO4024 (24个)
|
||||||
extern lv_obj_t *do_labels[16]; // DO: AIO5001 ~ AIO5016 (16个)
|
extern lv_obj_t *do_labels[16]; // DO: AIO5001 ~ AIO5016 (16个)
|
||||||
|
|
||||||
void ui_init_io(lv_ui *ui);
|
void ui_init_io(lv_ui *ui);
|
||||||
void update_io_labels(void);
|
void update_io_ui(void);
|
||||||
void update_led_i(void);
|
|
||||||
void update_led_o(void);
|
|
||||||
|
|
||||||
char* get_time_str(char *buf, size_t size);
|
char* get_time_str(char *buf, size_t size);
|
||||||
|
|
||||||
|
|||||||
@@ -92,5 +92,7 @@ void STEP_DATA_set_ui(IO_STEP_DATA* STEPDATA_inf)
|
|||||||
lv_dropdown_set_selected(guider_ui.screen_stepinf_s1,get_step_name(STEPDATA_inf->StepID));
|
lv_dropdown_set_selected(guider_ui.screen_stepinf_s1,get_step_name(STEPDATA_inf->StepID));
|
||||||
lv_dropdown_set_selected(guider_ui.screen_stepinf_s2,get_step_namer(STEPDATA_inf->StepID_S1));
|
lv_dropdown_set_selected(guider_ui.screen_stepinf_s2,get_step_namer(STEPDATA_inf->StepID_S1));
|
||||||
lv_dropdown_set_selected(guider_ui.screen_stepinf_s3,get_step_namer(STEPDATA_inf->StepID_S2));
|
lv_dropdown_set_selected(guider_ui.screen_stepinf_s3,get_step_namer(STEPDATA_inf->StepID_S2));
|
||||||
|
|
||||||
|
lv_obj_clear_flag(guider_ui.screen_stepinf_s1b, LV_OBJ_FLAG_HIDDEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
Reference in new issue
Block a user