gengxin
author@CHENG <2393524978@qq.com>
Fri, 26 Apr 2024 02:17:57 +0000 (10:17 +0800)
committer@CHENG <2393524978@qq.com>
Fri, 26 Apr 2024 02:17:57 +0000 (10:17 +0800)
21 files changed:
2.sdk/project/C55_DS_D11G_DT_HZCH/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h
2.sdk/project/Z5_DS_Z11XG_DTM_FZD/gui/lv_watch/mmi_default_CUSTOM.h
2.sdk/project/Z5_DS_Z11XG_DTM_FZD/product/craneg_modem/config/watch/lv_conf_CUSTOM.h
2.sdk/project/Z5_DS_Z11XG_DTM_FZD/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h
2.sdk/project/Z5_DS_Z12XG_DTM_FZD/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h
2.sdk/project/Z5_DS_Z12XG_DTM_SHJK/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h
2.sdk/project/Z5_Z11/product/craneg_modem/config/watch/lv_watch_conf_CUSTOM.h
2.sdk/sdk/gui/lv_drivers/display/st7789v2_spi.c
2.sdk/sdk/gui/lv_watch/app_adaptor/app_adaptor.c
2.sdk/sdk/gui/lv_watch/app_adaptor/app_adaptor_sensor_interface.c
2.sdk/sdk/gui/lv_watch/include/ui_nvm_interface.h
2.sdk/sdk/gui/lv_watch/lv_apps/health_measure/health_heart_rate.c
2.sdk/sdk/gui/lv_watch/lv_apps/health_measure/health_measure.c
2.sdk/sdk/gui/lv_watch/lv_apps/health_measure/health_measure.h
2.sdk/sdk/gui/lv_watch/lv_apps/setting/setting.c
2.sdk/sdk/gui/lv_watch/lv_apps/setting/setting_about.c
2.sdk/sdk/gui/lv_watch/lv_apps/setting/setting_blood_pressure_calibration.c
2.sdk/sdk/gui/lv_watch/lv_apps/setting/setting_blood_pressure_calibration.h
2.sdk/sdk/gui/lv_watch/lv_apps/status_and_setting/status_and_setting.c
2.sdk/sdk/gui/lv_watch/lv_watch_res.h
2.sdk/sdk/product/craneg_modem/lv_gui_main.c

index 4784539..185f657 100644 (file)
 
 #define __MMI_HEALTH_MEASURE_TEMPERATURE_SUPPORT__
 
-#define __MMI_APP_QRCODE_MENU_SUPPORT__
+//#define __MMI_APP_QRCODE_MENU_SUPPORT__
 
 #define __MMI_ZHSX_SUPPORT_NO_SIM_POWER_OFF__
 
 
 #define __MMI_REMIND_take_off_SUPPORT__
 
-#define __MMI_BLOOD_PRESSURE_SUPPORT__
+#define __MMI_BP_CALIBRATE_SUPPORT__
 
 //#define __MMI_PHONEBOOK_CALLLOG_IN_ONE_MENU__
 
index 7446da6..d2472b4 100644 (file)
@@ -9,9 +9,9 @@
 // fzd debug-lab.xcloudtech.com:9000; fzd-api.xcloudtech.com:9000
 // wulian-8.134.110.49:30346
 // tongxin debug-tcptest.tx.kidxin.com:20500; tongxin-tcp.tx.kidxin.com:20500
-#define MMI_CUSTOMER_IP_ADDRESS                "api.xcloudtech.com" // "8.134.110.49" // "lab.xcloudtech.com"
+#define MMI_CUSTOMER_IP_ADDRESS                "api.xcloudtech.com" // "lab.xcloudtech.com"
 
-#define MMI_CUSTOMER_IP_PORT           (9000) // (30346) // (9000)
+#define MMI_CUSTOMER_IP_PORT           (9000) // (9000)
 
 // fzd-"bZld0ALsZTt15tKEZhOlLPgbsO75BLTP"; wulian-"g3HOqJwHUhhA1myJnuur"
 #define MMI_CUSTOMER_PROTOCOL_MD5_KEY          "bZld0ALsZTt15tKEZhOlLPgbsO75BLTP" // "3JyCjsw4ryXKzjzudayY"
 #define MMI_CUSTOMER_RING_VOLUME               (10)
 
 //backlight level
-#define MMI_CUSTOMER_BACKLIGHT_LEVEL           (10)
+#define MMI_CUSTOMER_BACKLIGHT_LEVEL           (8)
 
 //backlight timeout
 #define MMI_CUSTOMER_BACKLIGHT_TIMEOUT         (15) // unit:s
 
 
-//pedometer body info
-#define MMI_CUSTOMER_BODY_HEIGHT               (170)
-
-#define MMI_CUSTOMER_BODY_WEIGHT               (60)
-
+//pedometer
 #define MMI_CUSTOMER_STEP_GOAL         (10000)
 
 // dial pad
 // sim unbind
 #define MMI_CUSTOMER_SIM_UNBIND_SWITCH         (MMI_WATCH_SWITCH_ON)
 
+// user profile
+#define MMI_CUSTOMER_USER_PROFILE_INDEX                (MMI_USER_PROFILE_MODE_RING_VIB)
+
+// fall down
+#define MMI_CUSTOMER_FALL_DOWN_SWITCH          (MMI_WATCH_SWITCH_OFF)
 
+// low battery
+#define MMI_CUSTOMER_LOW_BATTERY_SWITCH                (MMI_WATCH_SWITCH_ON)
 
 #endif
 
index 686d54a..485bf67 100644 (file)
 #define GPS_BATTERY_ALWAYS_ON  0
 #endif
 
-#define USE_OEM_ZFB
-
 #ifdef USE_OEM_ZFB
-#define USE_LV_WATCH_ALIPAY 1 // 1
+#define USE_LV_WATCH_ALIPAY 1
 #else
 #define USE_LV_WATCH_ALIPAY 0
 #endif
 #define __MMI_ZHSX_SUPPORT_SMS__
 
 // project mmi
-#define MMI_PROJECT_Z5_K7
+#define MMI_PROJECT_Z5_DS_Z11XG_DTM_FZD
+#define MMI_PROJECT_Z5_DS_Z11_COMMON
 
 
 #if 0 != USE_LV_WATCH_ALIPAY
 //#define __MMI_ZHSX_SUPPORT_VIDEO_CALL_TONGXIN__
 
 #define __MMI_WECHAT_SUPPORT__
+#define __MMI_WECHAT_RECEIVE_AUDIO_USE_MP3__
 
 #define __MMI_MAIN_MENU_FOUR_GRID_STYLE__
 
 
 #if 0 != USE_LV_WATCH_WEATHER
 #define __MMI_WEATHER_MENU_SUPPORT__
+#define __MMI_WEATHER_MENU_NOT_DISPLAY_TEMPERATURE_RANGE__
 #endif
 
 #define __MMI_POWER_ON_OFF_NO_RING__
 
 #define __MMI_KEY_BACK_RUN_PHONEBOOK_WHEN_IN_DIAL__
 
+#define __MMI_PAGE_MAIN_MENU_TTS_SUPPORT__
 
-#define __MMI_SEDENTARY_REMIND_SUPPORT__
+#define __MMI_USER_PROFILE_SUPPORT__
 
 #define __MMI_NEW_SMS_SILENT_SUPPORT__
 
-
 #define __MMI_REMIND_WAKE_UP_SUPPORT__
 
 #define __MMI_REMIND_SLEEP_SUPPORT__
 
 #define __MMI_REMIND_DRINK_SUPPORT__
 
-#define __MMI_USER_PROFILE_SUPPORT__
+#define __MMI_SEDENTARY_REMIND_SUPPORT__
 
 #define __MMI_REMIND_take_off_SUPPORT__
 
-#define __MMI_BLOOD_PRESSURE_SUPPORT__
+#define __MMI_BP_CALIBRATE_SUPPORT__
 
 #define __MMI_PHONEBOOK_CALLLOG_IN_ONE_MENU__
 
 #define __MMI_SLEEP_FUNCTION_SUPPORT__
 
+#define __MMI_ZHSX_SUPPORT_AUTHENTICATE__
+
+#define __MMI_FZD_PROTOCOL_WITHOUT_PING_COMMAND_SUPPORT__
+
+#define __Default_system_alarm__
+
+#define __MMI_PEDOMETER_STEP_AND_GOAL_STYLE__
 
 
 #endif
index 686d54a..b9fbcaa 100644 (file)
 
 #define __MMI_REMIND_take_off_SUPPORT__
 
-#define __MMI_BLOOD_PRESSURE_SUPPORT__
+#define __MMI_BP_CALIBRATE_SUPPORT__
 
 #define __MMI_PHONEBOOK_CALLLOG_IN_ONE_MENU__
 
index 5f111b3..7950255 100644 (file)
@@ -36,7 +36,7 @@ static lv_disp_drv_t * lcd_disp_drv = NULL;
 static lcd_context g_lcd_ctx;
 const static struct spi_write_t spi_init_watch[] = {
 
-#if DRV_PROJECT_Z5_Z11_2 || DRV_PROJECT_C55_DS_D11G_DT_HZCH
+#if DRV_PROJECT_Z5_Z11_2 || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_DS_Z11XG_DTM_FZD
     { SPI_WRITE_CMD, 0x11, 0 },
     { SPI_WRITE_DELAY,120, 0 },
 
@@ -255,13 +255,13 @@ const static struct spi_timing lcd_st7789v2_spi_timing = {
 const static struct spi_info lcd_st7789v2_spi_info_watch = {
 #if DRV_PROJECT_Z5_K6
     4,//4线
-#elif DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_Z5_DS_Z12_COMMON || DRV_PROJECT_C55_DS_D11G_DT_HZCH  || DRV_PROJECT_Z5_Z11_2
+#elif DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_Z5_DS_Z12_COMMON || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_DS_Z11XG_DTM_FZD || DRV_PROJECT_Z5_Z11_2
     3,//3线
 #else
     3,//3线
 #endif
     1,
-#if DRV_PROJECT_Z5_K6 || DRV_PROJECT_Z5_Z11_2 || DRV_PROJECT_C55_DS_D11G_DT_HZCH
+#if DRV_PROJECT_Z5_K6 || DRV_PROJECT_Z5_Z11_2 || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_DS_Z11XG_DTM_FZD
     1,//1通道
 #elif DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_Z5_DS_Z12_COMMON 
     2,//2通道
@@ -379,7 +379,7 @@ static void spi_write_function(const struct spi_write_t *spi_data, uint32_t leng
 static void st7789v2_panel_invalid(uint32_t start_x,
                                   uint32_t start_y,  uint32_t end_x, uint32_t end_y)
 {
-#if DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_Z11_2
+#if DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_DS_Z11XG_DTM_FZD || DRV_PROJECT_Z5_Z11_2
        start_y += 20;
        end_y += 20;
 #endif
@@ -440,7 +440,7 @@ __attribute__ ((unused)) static int panel_detect_readid(void)
     return 0;
 err:
     cplog_printf("panel detect by readid failed\n");
-#if DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_Z11_2
+#if DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_DS_Z11XG_DTM_FZD || DRV_PROJECT_Z5_Z11_2
     return 0;
 #else
     return -1;
index 3614fab..4007895 100644 (file)
@@ -65,6 +65,10 @@ void mmi_health_info_get(nv_watch_health_info_t * health_info)
        health_info->blood_low_value = s_health_info.blood_low_value;
        health_info->spo2_value = s_health_info.spo2_value;
        health_info->body_value = s_health_info.body_value;
+#ifdef __MMI_BP_CALIBRATE_SUPPORT__
+       health_info->bp_calibrate_high_value = s_health_info.bp_calibrate_high_value;
+       health_info->bp_calibrate_low_value = s_health_info.bp_calibrate_low_value;
+#endif
 }
 
 void mmi_health_info_set(nv_watch_health_info_t * health_info)
@@ -74,6 +78,10 @@ void mmi_health_info_set(nv_watch_health_info_t * health_info)
        s_health_info.blood_low_value = health_info->blood_low_value;
        s_health_info.spo2_value = health_info->spo2_value;
        s_health_info.body_value = health_info->body_value;
+#ifdef __MMI_BP_CALIBRATE_SUPPORT__
+       s_health_info.bp_calibrate_high_value = health_info->bp_calibrate_high_value;
+       s_health_info.bp_calibrate_low_value = health_info->bp_calibrate_low_value;
+#endif
 
        uint32_t nv_data_length = sizeof(nv_watch_health_info_t);
 
index 9be1d76..9c4aab4 100644 (file)
@@ -143,7 +143,7 @@ uint32_t mmi_sleep_roll_number_get(void)
 {
        uint32_t roll_num = 0;
 
-#ifdef MMI_PROJECT_Z5_DS_Z12_COMMON
+#ifdef MMI_PROJECT_Z5_DS_Z12_COMMON || MMI_PROJECT_Z5_DS_Z11_COMMON
        srand(Hal_Timer_Get_Counter());
        roll_num = 1 + rand() % 25;
 #endif
index f4d09c4..b0bc2d0 100644 (file)
@@ -229,6 +229,10 @@ typedef struct
        uint16_t spo2_value;
        //float wrist_value;
        float body_value;
+#ifdef __MMI_BP_CALIBRATE_SUPPORT__
+       uint16_t bp_calibrate_high_value;
+       uint16_t bp_calibrate_low_value;
+#endif
 } __packed nv_watch_health_info_t;
 
 #define NV_WATCH_SOS_NUMBER_MAX                (3)
index b5a38ce..ad0e5ef 100644 (file)
@@ -23,12 +23,6 @@ lv_heart_rate_obj_ext_t * health_heart_rate_get_ext(void)
     return NULL;
 }
 
-// static VOID mmi_protocol_fzd_action_send_blood_Cb(void *para)
-// {
-//     mmi_protocol_fzd_action_send_blood(blood_high_value,blood_low_value);
-
-// }
-
 void health_heart_rate_display_update(void)
 {
        lv_heart_rate_obj_ext_t * ext = health_heart_rate_get_ext();
@@ -85,9 +79,7 @@ void health_heart_rate_display_update(void)
                        mmi_hsensor_blood_value_get(&blood_high_value,&blood_low_value);
                        sprintf(ext->blood_low_high, "%d / %d mmhg", blood_low_value,blood_high_value);
 
-                       // TIMER_ID t= Hal_Timer_Start(1000,mmi_protocol_fzd_action_send_blood_Cb,(void *)measure_type,false);   
-                       mmi_protocol_fzd_action_send_blood(blood_high_value,blood_low_value);
-                       
+                       mmi_protocol_action_send_blood(blood_high_value,blood_low_value);
 
                        lv_label_set_text(ext->label_value_blood, ext->blood_low_high);
                        lv_obj_align(ext->label_value_blood, ext->cont, LV_ALIGN_IN_TOP_MID, 0, HEART_LABEL_VALUE_Y+10);
index 2a7b307..fe84b9b 100644 (file)
@@ -59,7 +59,42 @@ void mmi_hsensor_heart_value_get(uint16_t * heart_value)
 
 void mmi_hsensor_blood_value_get(uint16_t * blood_high_value, uint16_t * blood_low_value)
 {
-       mmi_hsensor_measure_value_get(NULL, blood_high_value, blood_low_value, NULL);
+#ifdef __HEALTH_MEASURE_FAKE_DATA__
+       srand(Hal_Timer_Get_Counter());
+       * blood_high_value = 100 + rand() % 60;
+       * blood_low_value = 60 + rand() % 30;
+
+#else
+       uint16_t t_high_value = 0, t_low_value = 0;
+
+       mmi_hsensor_measure_value_get(NULL, &t_high_value, &t_low_value, NULL);
+
+#ifdef __MMI_BP_CALIBRATE_SUPPORT__
+       uint16_t bp_calibrate_high_value = 0, bp_calibrate_low_value = 0;
+       uint16_t t_value0 = 0, t_value1 = 0;
+
+       mmi_bp_calibrate_value_get(&bp_calibrate_high_value, &bp_calibrate_low_value);
+       t_value0 = bp_calibrate_high_value + (7 - (t_high_value % 15));
+       t_value1 = bp_calibrate_high_value + (7 - (t_low_value % 15));
+       t_high_value = t_value0;
+       t_low_value = t_value1;
+#endif
+
+       if(DEFAULT_BP_HIGH_VALUE_MAX < t_high_value)
+               t_high_value = DEFAULT_BP_HIGH_VALUE_MAX;
+       else if(DEFAULT_BP_HIGH_VALUE_MIN > t_high_value)
+               t_high_value = DEFAULT_BP_HIGH_VALUE_MIN;
+
+       if(DEFAULT_BP_LOW_VALUE_MAX < t_low_value)
+               t_low_value = DEFAULT_BP_LOW_VALUE_MAX;
+       else if(DEFAULT_BP_LOW_VALUE_MIN > t_low_value)
+               t_low_value = DEFAULT_BP_LOW_VALUE_MIN;
+       
+       * blood_high_value = t_high_value;
+       * blood_low_value = t_low_value;
+       
+       return true;
+#endif
 }
 
 void mmi_hsensor_spo2_value_get(uint16_t * spo2_value)
@@ -170,24 +205,7 @@ bool mmi_health_measure_blood_data_process(uint16_t * blood_high_value, uint16_t
 {
        uint16_t t_high_value = 0, t_low_value = 0;
        
-#ifdef __HEALTH_MEASURE_FAKE_DATA__
-       srand(Hal_Timer_Get_Counter());
-       t_high_value = 120 + rand() % 100;
-       t_low_value = 60 + rand() % 50;
-
-#else
        mmi_hsensor_blood_value_get(&t_high_value, &t_low_value);
-#endif
-
-       if(180 < t_high_value)
-               t_high_value = 180;
-       else if(120 > t_high_value)
-               t_high_value = 120;
-
-       if(110 < t_low_value)
-               t_low_value = 120;
-       else if(60 > t_low_value)
-               t_low_value = 60;
        
        * blood_high_value = t_high_value;
        * blood_low_value = t_low_value;
index 3dfcc0e..1403c05 100644 (file)
@@ -33,6 +33,12 @@ extern "C" {
 
 #define MMI_HEART_RATE_VALUE_MIN       (45)
 
+#define DEFAULT_BP_HIGH_VALUE_MAX      (180)
+#define DEFAULT_BP_HIGH_VALUE_MIN      (95)
+#define DEFAULT_BP_LOW_VALUE_MAX       (95)
+#define DEFAULT_BP_LOW_VALUE_MIN       (60)
+
+
 
 typedef enum
 {
index db58717..e853e3f 100644 (file)
@@ -57,7 +57,7 @@ static mmi_watch_list_item_t settingList[] =
 #ifdef __MMI_NEW_SMS_SILENT_SUPPORT__
        { ICON_SETTING_NEW_SMS_SILENT, WATCH_TEXT_ID_NEW_SMS_SILENT, setting_new_sms_silent_create_event_cb },
 #endif
-#ifdef __MMI_BLOOD_PRESSURE_SUPPORT__
+#ifdef __MMI_BP_CALIBRATE_SUPPORT__
        { BlOOD_PRESSURE_LIST_PNG, WATCH_TEXT_ID_Blood_pressure_calibration, setting_Blood_pressure_create_event_cb },
 #endif
 #ifdef __MMI_APP_QRCODE_MENU_SUPPORT__
index b971e9c..0a3fb0f 100644 (file)
@@ -102,7 +102,7 @@ static lv_obj_t * setting_about_create(lv_obj_t * activity_obj)
        lv_obj_set_width(info_label, LV_HOR_RES - 20);
     lv_label_set_align(info_label, LV_LABEL_ALIGN_CENTER);
 
-#ifdef MMI_PROJECT_Z5_DS_Z12_COMMON
+#ifdef MMI_PROJECT_Z5_DS_Z12_COMMON || MMI_PROJECT_Z5_DS_Z11_COMMON
 //     snprintf(info_str, 96, "%s:Z5_Z12\n%s:%s_V1.0_Release_%s", 
 //                                                     (char *)lv_lang_get_text(WATCH_TEXT_ID_MODE),
 //                                                     (char *)lv_lang_get_text(WATCH_TEXT_ID_VERSION_NUM),
index 51810de..7d3f3bc 100644 (file)
@@ -3,11 +3,42 @@
 
 #include "lv_watch.h"
 #include "setting_blood_pressure_calibration.h"
-#ifdef __MMI_BLOOD_PRESSURE_SUPPORT__
+#ifdef __MMI_BP_CALIBRATE_SUPPORT__
 
 static bool blood_state_falg;
 
 TIMER_ID timer_blood_1=NULL;
+
+
+void mmi_bp_calibrate_value_get(uint16_t * high_value, uint16_t * low_value)
+{
+       uint16_t t_high_value = 0, t_low_value = 0;
+
+       nv_watch_health_info_t health_info = {0};
+       mmi_health_info_get(&health_info);
+
+       t_high_value = health_info.bp_calibrate_high_value;
+       if(0 == t_high_value)
+               t_high_value = DEFAULT_BP_CALIBRATION_HIGH_VALUE;
+
+       t_low_value = health_info.bp_calibrate_low_value;
+       if(0 == t_low_value)
+               t_low_value = DEFAULT_BP_CALIBRATION_LOW_VALUE;
+
+       * high_value = t_high_value;
+       * low_value = t_low_value;
+}
+
+void mmi_bp_calibrate_value_set(uint16_t high_value, uint16_t low_value)
+{
+       nv_watch_health_info_t health_info = {0};
+
+       mmi_health_info_get(&health_info);
+       health_info.bp_calibrate_high_value = high_value;
+       health_info.bp_calibrate_low_value = low_value;
+       mmi_health_info_set(&health_info);
+}
+
 void * mmi_Blood_pressure_ext_get(void)
 {
        lv_obj_t * activity_obj = lv_watch_get_activity_obj(ACT_ID_WATCH_SETTING_COMMON);
@@ -59,6 +90,9 @@ static void setting_Blood_pressure_t(void * para)
         lv_imgbtn_set_src(para, LV_BTN_STATE_RELEASED, BlOOD_PRESSURE_COFIREM_PNG_1);
         lv_obj_t * label_save=lv_obj_get_child(para,NULL);
         lv_label_set_text_id(label_save, WATCH_TEXT_ID_CALIBRATE_SUCCESS);
+
+               // save data
+               mmi_bp_calibrate_value_set(ext->high_blood_value, ext->low_blood_value);
     }
    //shutdown_confirm_btn_action(NULL,LV_EVENT_CLICKED);
 }
@@ -78,7 +112,7 @@ static void setting_Blood_pressure_btn_event_cb(lv_obj_t * obj, lv_event_t event
        switch(user_num)
        {
                case 0: // time decrease
-                       if(0 < ext->low_blood_value)
+                       if(DEFAULT_BP_LOW_VALUE_MIN < ext->low_blood_value)
                        {
                                ext->low_blood_value -= 1;
                        }
@@ -89,7 +123,7 @@ static void setting_Blood_pressure_btn_event_cb(lv_obj_t * obj, lv_event_t event
                        break;
 
                case 1: // time increase
-                       if(300 > ext->low_blood_value)
+                       if(DEFAULT_BP_LOW_VALUE_MAX > ext->low_blood_value)
                        {
                                ext->low_blood_value += 1;
                        }
@@ -100,27 +134,27 @@ static void setting_Blood_pressure_btn_event_cb(lv_obj_t * obj, lv_event_t event
                        break;
 
                case 2: // time decrease
-                       if(0 < ext->hight_blood_value)
+                       if(DEFAULT_BP_HIGH_VALUE_MIN < ext->high_blood_value)
                        {
-                               ext->hight_blood_value -= 1;
+                               ext->high_blood_value -= 1;
                        }
-                       sprintf(blood_vlue, "%d", ext->hight_blood_value);
-                       lv_label_set_text(ext->label_hight_blood, blood_vlue);
-                       lv_label_set_align(ext->label_hight_blood, LV_LABEL_ALIGN_CENTER);
-                       lv_obj_align(ext->label_hight_blood, lv_obj_get_parent(ext->label_hight_blood), LV_ALIGN_CENTER, 0, 0);
+                       sprintf(blood_vlue, "%d", ext->high_blood_value);
+                       lv_label_set_text(ext->label_high_blood, blood_vlue);
+                       lv_label_set_align(ext->label_high_blood, LV_LABEL_ALIGN_CENTER);
+                       lv_obj_align(ext->label_high_blood, lv_obj_get_parent(ext->label_high_blood), LV_ALIGN_CENTER, 0, 0);
                        break;
 
                case 3: // time increase
-                       if(300 > ext->hight_blood_value)
+                       if(DEFAULT_BP_HIGH_VALUE_MAX > ext->high_blood_value)
                        {
-                               ext->hight_blood_value += 1;
+                               ext->high_blood_value += 1;
                        }
-                       sprintf(blood_vlue, "%d", ext->hight_blood_value);
-                       lv_label_set_text(ext->label_hight_blood, blood_vlue);
-                       lv_label_set_align(ext->label_hight_blood, LV_LABEL_ALIGN_CENTER);
-                       lv_obj_align(ext->label_hight_blood, lv_obj_get_parent(ext->label_hight_blood), LV_ALIGN_CENTER, 0, 0);
+                       sprintf(blood_vlue, "%d", ext->high_blood_value);
+                       lv_label_set_text(ext->label_high_blood, blood_vlue);
+                       lv_label_set_align(ext->label_high_blood, LV_LABEL_ALIGN_CENTER);
+                       lv_obj_align(ext->label_high_blood, lv_obj_get_parent(ext->label_high_blood), LV_ALIGN_CENTER, 0, 0);
                        break;
-       case 4: // time increase
+       case 4: // 
             lv_obj_add_state(obj,LV_STATE_DISABLED);
             lv_imgbtn_set_src(obj, LV_BTN_STATE_RELEASED, BlOOD_PRESSURE_COFIREM_PNG_2);
             // if(timer_blood_1!=NULL)
@@ -162,16 +196,8 @@ static lv_obj_t * mmi_Blood_pressure_create(lv_obj_t * activity_obj)
     if(NULL == ext)
         return NULL;
     ext->blood_state_falg=true;
-    uint16_t blood_high_value = 0;
-       uint16_t blood_low_value = 0;
-
-    mmi_hsensor_blood_value_get(&blood_high_value,&blood_low_value);
-
-       ext->low_blood_value = blood_low_value;
-       ext->hight_blood_value = blood_high_value;
-
-
 
+       mmi_bp_calibrate_value_get(&(ext->high_blood_value), &(ext->low_blood_value));
        
     lv_obj_t * label_0 = lv_label_create(obj, NULL);
     lv_obj_add_style(label_0, LV_LABEL_PART_MAIN, &lv_watch_font26);
@@ -237,10 +263,10 @@ static lv_obj_t * mmi_Blood_pressure_create(lv_obj_t * activity_obj)
     lv_label_set_align(hight_blood, LV_LABEL_ALIGN_CENTER);
     lv_obj_set_click(hight_blood, false);
        char blood_str_1[8] = {0};
-       sprintf(blood_str_1, "%d", ext->hight_blood_value);
+       sprintf(blood_str_1, "%d", ext->high_blood_value);
     lv_label_set_text(hight_blood, blood_str_1);
     lv_obj_align(hight_blood, NULL, LV_ALIGN_CENTER, 0, 0);
-       ext->label_hight_blood = hight_blood;
+       ext->label_high_blood = hight_blood;
        
        //
     lv_obj_t * btn_save = lv_imgbtn_create(obj, NULL);
index c03f9de..63df385 100644 (file)
@@ -18,6 +18,8 @@ extern "C"
 #endif
 
 
+#define DEFAULT_BP_CALIBRATION_HIGH_VALUE      (113)
+#define DEFAULT_BP_CALIBRATION_LOW_VALUE       (76)
 
 
 typedef struct
@@ -26,15 +28,15 @@ typedef struct
     /*New data for this type */
     bool blood_state_falg;
        uint16_t low_blood_value;
-       uint16_t hight_blood_value;
+       uint16_t high_blood_value;
     lv_obj_t * label_low_blood;
-    lv_obj_t * label_hight_blood
+    lv_obj_t * label_high_blood;
 } lv_Blood_pressure_obj_ext_t;
 
 
 void setting_Blood_pressure_create_event_cb(lv_obj_t * btn, lv_event_t event);
 
-
+void mmi_bp_calibrate_value_get(uint16_t * high_value, uint16_t * low_value);
 
 
 #ifdef __cplusplus
index 4f7217a..9d03298 100644 (file)
@@ -173,7 +173,7 @@ static void status_update(lv_anim_t * anim)
         lv_obj_t * label = lv_label_create(status_ext->network_status_cont, NULL);
         lv_obj_add_style(label, LV_LABEL_PART_MAIN, &lv_watch_font20);
         if(MMI_MODEM_PLMN_RAT_LTE == rat) {
-                       #ifdef MMI_PROJECT_Z5_DS_Z12_COMMON
+                       #ifdef MMI_PROJECT_Z5_DS_Z12_COMMON || MMI_PROJECT_Z5_DS_Z11_COMMON
             lv_label_set_text(label, "5G");
                        #else
             lv_label_set_text(label, "4G");
index d7e0c13..7c93c82 100644 (file)
@@ -1044,16 +1044,13 @@ LV_IMG_DECLARE(img_poweron_logo);
 #define ANIM_HENGAI_BP_WAITTING                                        "R:/gif/custom_function/ANIM_HENGAI_BP_WAITTING.gif"
 
 #endif
-#ifdef __MMI_BLOOD_PRESSURE_SUPPORT__
+#ifdef __MMI_BP_CALIBRATE_SUPPORT__
 #define BlOOD_PRESSURE_LIST_PNG                                        "R:/png/setting_blood_pressure/IMAGE_SET_BP_CALIBRATION.png"
 #define BlOOD_PRESSURE_strip_PNG                                       "R:/png/setting_blood_pressure/IMAGE_BP_CALIBRATION_VALUE_BG.png"
 #define BlOOD_PRESSURE_strip_PNG_1                                     "R:/png/setting_blood_pressure/IMAGE_BP_CALIBRATION_VALUE_BG_lift.png"
 #define BlOOD_PRESSURE_strip_PNG_2                                     "R:/png/setting_blood_pressure/IMAGE_BP_CALIBRATION_VALUE_BG_right.png"
 #define BlOOD_PRESSURE_COFIREM_PNG_1                                   "R:/png/setting_blood_pressure/IMAGE_BP_CALIBRATION_BUTTON_NORMAL.png"
 #define BlOOD_PRESSURE_COFIREM_PNG_2                                   "R:/png/setting_blood_pressure/IMAGE_BP_CALIBRATION_BUTTON_PROCESS.png"
-
-
-
 #endif
 
 #endif
index 9d46b27..903917c 100644 (file)
@@ -253,7 +253,7 @@ static uint32_t lcd_poc_mfp_spi_4_1_cfgs[] = {
     MFP_EOC
 };
 #endif
-#if DRV_PROJECT_Z5_K7 || USE_LCD_PANEL_GC9A01_SPI_WATCH|| DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_Z11_2
+#if DRV_PROJECT_Z5_K7 || USE_LCD_PANEL_GC9A01_SPI_WATCH|| DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_DS_Z11XG_DTM_FZD || DRV_PROJECT_Z5_Z11_2
 static uint32_t lcd_poc_mfp_spi_3_2_cfgs[] = {
     MFP_REG(GPIO_20) | MFP_AF2 | MFP_PULL_HIGH | MFP_SLEEP_DIR | MFP_DRIVE_MEDIUM | MFP_LPM_EDGE_NONE, /* SPI_DCLK */
     MFP_REG(GPIO_21) | MFP_AF3 | MFP_PULL_HIGH | MFP_SLEEP_DIR | MFP_DRIVE_MEDIUM | MFP_LPM_EDGE_NONE, /* SPI_CS1 */
@@ -297,7 +297,7 @@ static struct lcd_info_t st7789v2_lcd_spi_4_1_info =
     .mfp = (uint32_t *)lcd_poc_mfp_spi_4_1_cfgs,
     .clk = 312000, /* 104000 */
 };
-#elif DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_C55_DS_D11G_DT_HZCH  || DRV_PROJECT_Z5_Z11_2
+#elif DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_DS_Z11XG_DTM_FZD || DRV_PROJECT_Z5_Z11_2
 static struct lcd_info_t st7789v2_lcd_spi_3_2_info =
 {
     .mfp = (uint32_t *)lcd_poc_mfp_spi_3_2_cfgs,
@@ -351,7 +351,7 @@ static struct lcd_info_t *lcd_info_detect[]= {
     #if USE_LCD_PANEL_ST7789V2_SPI_WATCH
     #if DRV_PROJECT_Z5_K6 
         &st7789v2_lcd_spi_4_1_info,
-    #elif DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_Z5_DS_Z12_COMMON || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_Z11_2
+    #elif DRV_PROJECT_Z5_K7 || DRV_PROJECT_Z5_HA_K7 || DRV_PROJECT_Z5_DS_Z12_COMMON || DRV_PROJECT_C55_DS_D11G_DT_HZCH || DRV_PROJECT_Z5_DS_Z11XG_DTM_FZD || DRV_PROJECT_Z5_Z11_2
         &st7789v2_lcd_spi_3_2_info,
     #endif
     #endif