From 8a9a28d6d5278ab3c98d7b4dd67a07ebf89eea2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BF=B1=20=E6=B2=88?= <2401809606@qq.com> Date: Sun, 22 Feb 2026 16:31:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=90=AF=E5=8A=A8=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E4=BC=A0=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- applications/lvgl/ui_data_csv.c | 31 ++++++++++++++++++++++++++++++ applications/lvgl/ui_data_csv.h | 2 +- applications/lvgl/ui_data_labels.c | 14 +++----------- 3 files changed, 35 insertions(+), 12 deletions(-) diff --git a/applications/lvgl/ui_data_csv.c b/applications/lvgl/ui_data_csv.c index 1b11a82..a6db9bb 100644 --- a/applications/lvgl/ui_data_csv.c +++ b/applications/lvgl/ui_data_csv.c @@ -241,6 +241,9 @@ int parse_csv_to_inf(lv_obj_t *container, const char *csv_data ,int W_data,int H return 0; } +// ============ 处理启动信息 ============ +#include "Variable.h" +//处理信息表 int run_csv_to_table(const char *csv_data) { if (csv_data == NULL) { return -1; @@ -312,3 +315,31 @@ int run_csv_to_table(const char *csv_data) { return 0; } + +//处理启动设置 +int run_csv_to_set(const char *csv_data) { + if (csv_data == NULL) { + return -1; + } + user = (UserData *)rt_memheap_alloc(&sdram_heap, sizeof(UserData)); + + // 解析 CSV + if (parse_csv_string(csv_data, user) != 0) { + return -1; + } + + //数据组信息 + rt_snprintf(Work,sizeof(Work),csv_get_cell(user, 1, 0)); + rt_snprintf(Dye,sizeof(Dye),csv_get_cell(user, 1, 1)); + rt_snprintf(Process,sizeof(Process),csv_get_cell(user, 1, 2)); + Pump = atoi(csv_get_cell(user, 1, 3)); + Fan = atoi(csv_get_cell(user, 1, 4)); + Swing = atoi(csv_get_cell(user, 1, 5)); + Pull1 = atoi(csv_get_cell(user, 1, 6)); + Pull2=Pull1; Pull3=Pull1; Pull4=Pull1; Pull5=Pull1;Pull6=Pull1; + + // 释放内存 + rt_memheap_free(user); + + return 0; +} diff --git a/applications/lvgl/ui_data_csv.h b/applications/lvgl/ui_data_csv.h index 7bc2ec4..8161b47 100644 --- a/applications/lvgl/ui_data_csv.h +++ b/applications/lvgl/ui_data_csv.h @@ -13,5 +13,5 @@ int parse_csv_to_table(lv_obj_t *container, const char *csv_data,int flags); int parse_csv_to_inf(lv_obj_t *container, const char *csv_data ,int W_data,int H_data); int run_csv_to_table(const char *csv_data); - +int run_csv_to_set(const char *csv_data); #endif /* APPLICATIONS_LVGL_UI_DATA_CSV_H_ */ diff --git a/applications/lvgl/ui_data_labels.c b/applications/lvgl/ui_data_labels.c index 0beaa04..a1abe0c 100644 --- a/applications/lvgl/ui_data_labels.c +++ b/applications/lvgl/ui_data_labels.c @@ -404,6 +404,7 @@ void Work_Program_stepINF_ui(char* str_data) //启动按钮 void Work_start() { + if (Work_NAME[0] == '\0') return; if(Work_Program_DATA==0) { //步骤信息 @@ -411,19 +412,10 @@ void Work_start() db_send_select(DB_CMD_SELECT, sqlSELECT, 500,select_data_ui); run_csv_to_table(select_data_ui); //启动信息 - rt_snprintf(sqlSELECT, sizeof(sqlSELECT),"SELECT * FROM WorkOrderSet WHERE WorkOrder = '%s' LIMIT 1;",Work_NAME); - - rt_kprintf(sqlSELECT); - - + rt_snprintf(sqlSELECT, sizeof(sqlSELECT),"%s w.WorkOrder = '%s' LIMIT 1;",select_Workorder_R,Work_NAME); db_send_select(DB_CMD_SELECT, sqlSELECT, 500,select_data_ui); rt_kprintf(select_data_ui); - //run_csv_to_table(select_data_ui); - //信息 - //rt_snprintf(sqlSELECT, sizeof(sqlSELECT),"%s w.WorkOrder = '%s' LIMIT 1;",select_Workorder_R,Work_NAME); - //db_send_select(DB_CMD_SELECT, sqlSELECT, 500,select_data_ui); - //rt_kprintf(select_data_ui); - //run_csv_to_table(select_data_ui); + run_csv_to_set(select_data_ui); } else {