From: p15692025051 <846603105@qq.com> Date: Mon, 2 Sep 2024 03:40:14 +0000 (+0800) Subject: 血压工厂模式显示调整 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=c9106b7c2d9b34ec2c2c6e97fcc28c2dc52d1a89;p=mirrors%2FASR3603_Z5.git 血压工厂模式显示调整 --- diff --git a/2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.c b/2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.c index defecb1d..17570563 100644 --- a/2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.c +++ b/2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.c @@ -31,7 +31,9 @@ char fr8012haq_agc_timerout_flag = 0; static void * fr8012haq_agc_timer = NULL; int factory_apre_val[2]; int factory_aps_val; - +int factory_bio_val_o = 0; +int factory_calc_bio = 0; +char factory_wear_status = 0; /************************simware add start***********************************/ // static const uint32_t my_xm_mfp_cfgs[] = { // MFP_REG(GPIO_85) | MFP_AF0 | MFP_DRIVE_MEDIUM | MFP_PULL_HIGH | MFP_SLEEP_DIR | MFP_LPM_EDGE_NONE, @@ -560,6 +562,30 @@ int fr8012haq_parse_returned_data(int timeout) if(str_tmp) { str_tmp += strlen("\"factory_data\":\""); + str_tmp += num_buf_len+1; + num_buf_len = find_c(str_tmp,','); + if(num_buf_len>=sizeof(num_buf)) + num_buf_len = sizeof(num_buf)-1; + memset(num_buf,0,sizeof(num_buf)); + memcpy(num_buf,str_tmp,num_buf_len); + factory_wear_status = atoi(num_buf); + + str_tmp += num_buf_len+1; + num_buf_len = find_c(str_tmp,','); + if(num_buf_len>=sizeof(num_buf)) + num_buf_len = sizeof(num_buf)-1; + memset(num_buf,0,sizeof(num_buf)); + memcpy(num_buf,str_tmp,num_buf_len); + factory_bio_val_o = atoi(num_buf); + + str_tmp += num_buf_len+1; + num_buf_len = find_c(str_tmp,','); + if(num_buf_len>=sizeof(num_buf)) + num_buf_len = sizeof(num_buf)-1; + memset(num_buf,0,sizeof(num_buf)); + memcpy(num_buf,str_tmp,num_buf_len); + factory_calc_bio = atoi(num_buf); + num_buf_len = find_c(str_tmp,','); if(num_buf_len>=sizeof(num_buf)) num_buf_len = sizeof(num_buf)-1; @@ -576,12 +602,13 @@ int fr8012haq_parse_returned_data(int timeout) factory_apre_val[1] = atoi(num_buf); str_tmp += num_buf_len+1; - num_buf_len = find_c(str_tmp,'\"'); + num_buf_len = find_c(str_tmp,'\n'); if(num_buf_len>=sizeof(num_buf)) num_buf_len = sizeof(num_buf)-1; memset(num_buf,0,sizeof(num_buf)); memcpy(num_buf,str_tmp,num_buf_len); factory_aps_val = atoi(num_buf); + } /*血压*/ str_tmp = strstr(cmd_str_tmp,"\"bp_data\":\""); @@ -1164,13 +1191,16 @@ void fr8012haq_hr_bp_bo_value_get(uint16_t *hr, uint16_t *bp_high, uint16_t *bp_ *bo = s_FR8012HAQ_blood_oxygen; } //获取工厂模式数据, -void fr8012haq_factory_data_get(int *apre_val0,int *apre_val1,int *aps_val) +void fr8012haq_factory_data_get(int *apre_val0,int *apre_val1,int *aps_val,char *wear_status,int *bio_val_o,int *calc_bio) { *apre_val0 = factory_apre_val[0]; *apre_val1 = factory_apre_val[1]; *aps_val = factory_aps_val; - - FR8012HAQ_LOG("fr8012haq_factory_data_get apre_val0:%d,apre_val1%d,aps_cal:%d\n",*apre_val0,*apre_val1,*aps_val); + *bio_val_o = factory_bio_val_o; + *calc_bio = factory_calc_bio; + *wear_status = factory_wear_status; + FR8012HAQ_LOG("fr8012haq_factory_data_get apre_val0:%d,apre_val1%d,aps_cal:%d,bio_val_o:%d,calc_bio:%d\n", + *apre_val0,*apre_val1,*aps_val, *bio_val_o, *calc_bio); return s_FR8012HAQ_yyl_data; } //获取1分钟血压数据,总共81*60个int数组,返回数据数组,len:长度返回,当长度等于81*60时表示存够数据 diff --git a/2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.h b/2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.h index 5d198bcd..ffa7df2c 100644 --- a/2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.h +++ b/2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.h @@ -72,7 +72,7 @@ void fr8012haq_measure_temp_start(void); void fr8012haq_measure_OTA_start(void); void fr8012haq_measure_factory_start(void); -void fr8012haq_factory_data_get(int *apre_val0,int *apre_val1,int *aps_val); +void fr8012haq_factory_data_get(int *apre_val0,int *apre_val1,int *aps_val,char *wear_status,int *bio_val_o,int *calc_bio); int fr8012haq_int_gpio_d2_ent_callback(void); int fr8012haq_int_gpio_d2_exit_callback(void); diff --git a/2.sdk/sdk/gui/lv_watch/lv_apps/factory_mode/factory_mode_test.c b/2.sdk/sdk/gui/lv_watch/lv_apps/factory_mode/factory_mode_test.c index 54c746e9..ad743a48 100644 --- a/2.sdk/sdk/gui/lv_watch/lv_apps/factory_mode/factory_mode_test.c +++ b/2.sdk/sdk/gui/lv_watch/lv_apps/factory_mode/factory_mode_test.c @@ -2181,13 +2181,16 @@ void mmi_factorymode_light_leak_test_create_btn_cb(lv_obj_t * btn,lv_event_t e) static void mmi_factorymode_light_leak_test_status_update(lv_anim_t * anim) { char str[64]= {0}; - int apre_val0 = 0, apre_val1 = 0, aps_val = 0; - - fr8012haq_factory_data_get(&apre_val0, &apre_val1, &aps_val); - sprintf(str, "%s: %d,%d,%d", (char *)lv_lang_get_text(WATCH_TEXT_ID_LIGHT_LEAK_DATA), + int apre_val0 = 0, apre_val1 = 0, aps_val = 0,bio_val_o=0,calc_bio=0; + char wear_status = 0; + fr8012haq_factory_data_get(&apre_val0, &apre_val1, &aps_val,&wear_status,bio_val_o,calc_bio); + sprintf(str, "%s: %d,%d,%d\n wear_status:%d bio_val_o: %d\n calc_bio : %d", (char *)lv_lang_get_text(WATCH_TEXT_ID_LIGHT_LEAK_DATA), apre_val0, apre_val1, - aps_val); + aps_val, + wear_status, + bio_val_o, + calc_bio); lv_label_set_text(anim->var, str); }