Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
281662556f | ||
|
|
f687b4aac4 |
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);
|
||||||
|
|||||||
@@ -399,7 +399,7 @@ static void screen_stepinf_s3_event_handler (lv_event_t *e)
|
|||||||
uint16_t id = lv_dropdown_get_selected(guider_ui.screen_stepinf_s3);
|
uint16_t id = lv_dropdown_get_selected(guider_ui.screen_stepinf_s3);
|
||||||
lv_obj_add_flag(guider_ui.screen_stepinf_s1b, LV_OBJ_FLAG_HIDDEN);
|
lv_obj_add_flag(guider_ui.screen_stepinf_s1b, LV_OBJ_FLAG_HIDDEN);
|
||||||
lv_obj_add_flag(guider_ui.screen_stepinf_s2b, LV_OBJ_FLAG_HIDDEN);
|
lv_obj_add_flag(guider_ui.screen_stepinf_s2b, LV_OBJ_FLAG_HIDDEN);
|
||||||
lv_obj_clear_flag(guider_ui.screen_stepinf_s1b, LV_OBJ_FLAG_HIDDEN);
|
lv_obj_clear_flag(guider_ui.screen_stepinf_s3b, LV_OBJ_FLAG_HIDDEN);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -452,7 +452,7 @@ void setup_scr_screen(lv_ui *ui)
|
|||||||
ui->screen_text_inf = lv_label_create(ui->screen_w_text);
|
ui->screen_text_inf = lv_label_create(ui->screen_w_text);
|
||||||
lv_label_set_text(ui->screen_text_inf, "信息工单工艺领料单预计开始预计完成预计用时锁定状态用户步骤时间步步骤工艺步号细节参数副功能功能代码颜色客户布重布种浴比浴量备注入水水位呼叫操作员准备入布准备出布温度控制排水主泵启动主泵停止备药加药入水流量等待命令取样运转呼叫准备程序结束水源目标温度速率时间药缸搅拌药桶曲线加压减压呼叫输送测试流程°");
|
lv_label_set_text(ui->screen_text_inf, "信息工单工艺领料单预计开始预计完成预计用时锁定状态用户步骤时间步步骤工艺步号细节参数副功能功能代码颜色客户布重布种浴比浴量备注入水水位呼叫操作员准备入布准备出布温度控制排水主泵启动主泵停止备药加药入水流量等待命令取样运转呼叫准备程序结束水源目标温度速率时间药缸搅拌药桶曲线加压减压呼叫输送测试流程°");
|
||||||
lv_label_set_long_mode(ui->screen_text_inf, LV_LABEL_LONG_WRAP);
|
lv_label_set_long_mode(ui->screen_text_inf, LV_LABEL_LONG_WRAP);
|
||||||
lv_obj_set_pos(ui->screen_text_inf, 0, 0);
|
lv_obj_set_pos(ui->screen_text_inf, 0, -1);
|
||||||
lv_obj_set_size(ui->screen_text_inf, 550, 230);
|
lv_obj_set_size(ui->screen_text_inf, 550, 230);
|
||||||
lv_obj_add_flag(ui->screen_text_inf, LV_OBJ_FLAG_SCROLLABLE);
|
lv_obj_add_flag(ui->screen_text_inf, LV_OBJ_FLAG_SCROLLABLE);
|
||||||
|
|
||||||
@@ -7167,7 +7167,7 @@ void setup_scr_screen(lv_ui *ui)
|
|||||||
lv_obj_align(ui->screen_set_new_label, LV_ALIGN_CENTER, 0, 0);
|
lv_obj_align(ui->screen_set_new_label, LV_ALIGN_CENTER, 0, 0);
|
||||||
lv_obj_set_style_pad_all(ui->screen_set_new, 0, LV_STATE_DEFAULT);
|
lv_obj_set_style_pad_all(ui->screen_set_new, 0, LV_STATE_DEFAULT);
|
||||||
lv_obj_set_width(ui->screen_set_new_label, LV_PCT(100));
|
lv_obj_set_width(ui->screen_set_new_label, LV_PCT(100));
|
||||||
lv_obj_set_pos(ui->screen_set_new, 928, 5);
|
lv_obj_set_pos(ui->screen_set_new, 928, 4);
|
||||||
lv_obj_set_size(ui->screen_set_new, 85, 40);
|
lv_obj_set_size(ui->screen_set_new, 85, 40);
|
||||||
|
|
||||||
//Write style for screen_set_new, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
//Write style for screen_set_new, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||||||
@@ -7365,7 +7365,6 @@ void setup_scr_screen(lv_ui *ui)
|
|||||||
lv_obj_set_size(ui->screen_stepinf, 700, 380);
|
lv_obj_set_size(ui->screen_stepinf, 700, 380);
|
||||||
lv_obj_set_scrollbar_mode(ui->screen_stepinf, LV_SCROLLBAR_MODE_OFF);
|
lv_obj_set_scrollbar_mode(ui->screen_stepinf, LV_SCROLLBAR_MODE_OFF);
|
||||||
lv_obj_add_flag(ui->screen_stepinf, LV_OBJ_FLAG_HIDDEN);
|
lv_obj_add_flag(ui->screen_stepinf, LV_OBJ_FLAG_HIDDEN);
|
||||||
lv_obj_add_flag(ui->screen_stepinf, LV_OBJ_FLAG_HIDDEN);
|
|
||||||
|
|
||||||
//Write style for screen_stepinf, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
//Write style for screen_stepinf, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||||||
lv_obj_set_style_border_width(ui->screen_stepinf, 5, LV_PART_MAIN|LV_STATE_DEFAULT);
|
lv_obj_set_style_border_width(ui->screen_stepinf, 5, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||||||
@@ -7388,7 +7387,6 @@ void setup_scr_screen(lv_ui *ui)
|
|||||||
lv_label_set_long_mode(ui->screen_stepinf_s1b, LV_LABEL_LONG_WRAP);
|
lv_label_set_long_mode(ui->screen_stepinf_s1b, LV_LABEL_LONG_WRAP);
|
||||||
lv_obj_set_pos(ui->screen_stepinf_s1b, 0, 50);
|
lv_obj_set_pos(ui->screen_stepinf_s1b, 0, 50);
|
||||||
lv_obj_set_size(ui->screen_stepinf_s1b, 300, 55);
|
lv_obj_set_size(ui->screen_stepinf_s1b, 300, 55);
|
||||||
lv_obj_add_flag(ui->screen_stepinf_s1b, LV_OBJ_FLAG_HIDDEN);
|
|
||||||
|
|
||||||
//Write style for screen_stepinf_s1b, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
//Write style for screen_stepinf_s1b, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
|
||||||
lv_obj_set_style_border_width(ui->screen_stepinf_s1b, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
lv_obj_set_style_border_width(ui->screen_stepinf_s1b, 0, LV_PART_MAIN|LV_STATE_DEFAULT);
|
||||||
|
|||||||
@@ -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