From 4e050198a9b0134c1c8cb8db73a8029a40918c5d Mon Sep 17 00:00:00 2001 From: ipason Date: Sun, 11 May 2025 10:22:20 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E4=BA=86=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E6=A3=80=E6=B5=8B=E6=98=AF=E5=90=A6=E6=AD=A3=E5=B8=B8=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/FluxUart/FluxUart.c | 37 ++++++++++++++++++++++++---------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/components/FluxUart/FluxUart.c b/components/FluxUart/FluxUart.c index 99959bb..69d24eb 100644 --- a/components/FluxUart/FluxUart.c +++ b/components/FluxUart/FluxUart.c @@ -124,7 +124,7 @@ void uart1_echoTask(void* arg) /* 获取当前设备类型 */ uint16_t device_type = lv_dropdown_get_selected(ui_pageHome_DropdownTestTypeBS); int32_t current_stage = lv_spinbox_get_value(ui_pageHome_spinboxStageBS); - float stage_volume = 0; + float stage_volume = 0.0; float stage_rate_volume = 0; /* 记录测试结果是否合格 */ bool is_test_result_right = true; @@ -181,7 +181,8 @@ void uart1_echoTask(void* arg) // Write data back to the UART //uart_write_bytes(ECHO_UART_PORT_NUM1, (const char *) data, len); - if (len) +#if 1 + if (len) /** */ { data[len] = '\0'; @@ -191,6 +192,7 @@ void uart1_echoTask(void* arg) /* 检查测试是否完成 */ if ((data[20] == 0x01)&&(data[1]==0x03)&&data[4]==FLUX_MODE_TIMER) { + /* 测试已完成 */ lv_obj_add_state(ui_pageFluxRead_checkboxUnfinished,LV_STATE_CHECKED); @@ -228,8 +230,13 @@ void uart1_echoTask(void* arg) /* 若当前是NOM模式,直接刷新结果在Nom的界面 */ RefreshResult(); }else{ +#endif WRITE_LOG_TO_SD("判断当前测试模式为BS模式"); + /* 获取当前测试挡位 */ + current_stage = lv_spinbox_get_value(ui_pageHome_spinboxStageBS)-1; + device_type = lv_dropdown_get_selected(ui_pageHome_DropdownTestTypeBS); + /* 若当前是BS模式,刷新结果在BS的界面 */ sdData.flux_test_result.test_result[currentTestRate] = sdData.flux_test_result.current_test_result; @@ -248,23 +255,30 @@ void uart1_echoTask(void* arg) default: break; } + //ESP_LOGI("dev","device type:%d ,stage_volume:%.2f\n",device_type,stage_volume); - /* 计算呼吸频率下的体积流量值 */ stage_rate_volume = stage_volume/((currentTestRate+3.0)*5); + char str[100]; + sprintf(str,"current=%2f,rateVolume=%.2f,up=%.2f,down=%.2f",sdData.flux_test_result.current_test_result,stage_rate_volume,stage_rate_volume*1.15,stage_rate_volume*0.85); + //printf("%s\n",str); + WRITE_LOG_TO_SD(str); + if((sdData.flux_test_result.current_test_result > stage_rate_volume * 1.15)|(sdData.flux_test_result.current_test_result < stage_rate_volume * 0.85)) { /* 测试结果不合格,刷新结果为X */ xEventGroupClearBits(g_bs_test_event_group,g_bs_test_event_group_bits[currentTestRate]); is_test_result_right = false; + ESP_LOGI("FLUX_TEST_START","测试结果不合格"); WRITE_LOG_TO_SD("测试结果不合格"); }else{ /* 测试合格*/ xEventGroupSetBits(g_bs_test_event_group,g_bs_test_event_group_bits[currentTestRate]); is_test_result_right = true; + ESP_LOGI("FLUX_TEST_START","测试结果合格"); WRITE_LOG_TO_SD("测试结果合格"); } - +#if 1 /* 根据当前BS测试阶段刷新结果 */ switch (currentTestRate) { @@ -276,8 +290,8 @@ void uart1_echoTask(void* arg) lv_obj_set_style_text_color(ui_pageHome_LabelRate15Result, lv_color_hex(0xFF0000), LV_PART_MAIN | LV_STATE_DEFAULT); WRITE_LOG_TO_SD("15BPM 测试结果不合格 修改字体颜色为红色"); }else{ - lv_obj_set_style_text_color(ui_pageHome_LabelRate15Result, lv_color_hex(0x000000), LV_PART_MAIN | LV_STATE_DEFAULT); - WRITE_LOG_TO_SD("15BPM 测试结果合格 修改字体颜色为黑色"); + lv_obj_set_style_text_color(ui_pageHome_LabelRate15Result, lv_color_hex(0x00FF00), LV_PART_MAIN | LV_STATE_DEFAULT); + WRITE_LOG_TO_SD("15BPM 测试结果合格 修改字体颜色为绿色"); } break; case BS_RATE_20BPM: @@ -286,7 +300,7 @@ void uart1_echoTask(void* arg) { lv_obj_set_style_text_color(ui_pageHome_LabelRate20Result, lv_color_hex(0xFF0000), LV_PART_MAIN | LV_STATE_DEFAULT); }else{ - lv_obj_set_style_text_color(ui_pageHome_LabelRate20Result, lv_color_hex(0x000000), LV_PART_MAIN | LV_STATE_DEFAULT); + lv_obj_set_style_text_color(ui_pageHome_LabelRate20Result, lv_color_hex(0x00FF00), LV_PART_MAIN | LV_STATE_DEFAULT); } break; case BS_RATE_25BPM: @@ -295,7 +309,7 @@ void uart1_echoTask(void* arg) { lv_obj_set_style_text_color(ui_pageHome_LabelRate25Result, lv_color_hex(0xFF0000), LV_PART_MAIN | LV_STATE_DEFAULT); }else{ - lv_obj_set_style_text_color(ui_pageHome_LabelRate25Result, lv_color_hex(0x000000), LV_PART_MAIN | LV_STATE_DEFAULT); + lv_obj_set_style_text_color(ui_pageHome_LabelRate25Result, lv_color_hex(0x00FF00), LV_PART_MAIN | LV_STATE_DEFAULT); } break; case BS_RATE_30BPM: @@ -304,7 +318,7 @@ void uart1_echoTask(void* arg) { lv_obj_set_style_text_color(ui_pageHome_LabelRate30Result, lv_color_hex(0xFF0000), LV_PART_MAIN | LV_STATE_DEFAULT); }else{ - lv_obj_set_style_text_color(ui_pageHome_LabelRate30Result, lv_color_hex(0x000000), LV_PART_MAIN | LV_STATE_DEFAULT); + lv_obj_set_style_text_color(ui_pageHome_LabelRate30Result, lv_color_hex(0x00FF00), LV_PART_MAIN | LV_STATE_DEFAULT); } break; case BS_RATE_35BPM: @@ -313,7 +327,7 @@ void uart1_echoTask(void* arg) { lv_obj_set_style_text_color(ui_pageHome_LabelRate35Result, lv_color_hex(0xFF0000), LV_PART_MAIN | LV_STATE_DEFAULT); }else{ - lv_obj_set_style_text_color(ui_pageHome_LabelRate35Result, lv_color_hex(0x000000), LV_PART_MAIN | LV_STATE_DEFAULT); + lv_obj_set_style_text_color(ui_pageHome_LabelRate35Result, lv_color_hex(0x00FF00), LV_PART_MAIN | LV_STATE_DEFAULT); } break; case BS_RATE_40BPM: @@ -322,7 +336,7 @@ void uart1_echoTask(void* arg) { lv_obj_set_style_text_color(ui_pageHome_LabelRate40Result, lv_color_hex(0xFF0000), LV_PART_MAIN | LV_STATE_DEFAULT); }else{ - lv_obj_set_style_text_color(ui_pageHome_LabelRate40Result, lv_color_hex(0x000000), LV_PART_MAIN | LV_STATE_DEFAULT); + lv_obj_set_style_text_color(ui_pageHome_LabelRate40Result, lv_color_hex(0x00FF00), LV_PART_MAIN | LV_STATE_DEFAULT); } break; @@ -337,6 +351,7 @@ void uart1_echoTask(void* arg) lv_obj_clear_state(ui_pageFluxRead_checkboxUnfinished,LV_STATE_CHECKED); } } +#endif } }