gengxin
author@CHENG <2393524978@qq.com>
Wed, 24 Jan 2024 08:44:29 +0000 (16:44 +0800)
committer@CHENG <2393524978@qq.com>
Wed, 24 Jan 2024 08:44:29 +0000 (16:44 +0800)
2.sdk/sdk/gui/lv_watch/lv_apps/custom_function/heng_ai_tcms.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/mmi_protocol/mmi_protocol_fzd.c

index e980475..aff8dab 100644 (file)
@@ -24,7 +24,7 @@ void mmi_hengai_tcms_mission_check(void)
 
                data_ptr = fr8012haq_YYL_data_get(&data_len);
                HENGAI_TCMS_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: data_len=%d\n", __FUNCTION__, __LINE__, data_len);
-               if(NULL != data_ptr)
+               if((NULL != data_ptr) && (0 != data_len))
                {
                        mmi_protocol_fzd_action_hengai_tcms_data(data_ptr, data_len);
                }
@@ -38,6 +38,9 @@ void mmi_hengai_tcms_action(void)
 {
        HENGAI_TCMS_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
 
+       if(true == mmi_health_measure_state_is_in_measure())
+               return;
+
        mmi_hsensor_yyl_measure_start();
        s_hengai_tcms_check_flag = 1;
 }
index 79e8d4d..738d0a6 100644 (file)
@@ -26,28 +26,36 @@ void mmi_hsensor_close(void)
 void mmi_hsensor_heart_open(void)
 {
        HEALTH_MEASURE_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+#if USE_FR8012HAQ
        mmi_hsensor_close();
+#endif
        mmi_hsensor_hr_measure_start();
 }
 
 void mmi_hsensor_blood_open(void)
 {
        HEALTH_MEASURE_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+#if USE_FR8012HAQ
        mmi_hsensor_close();
+#endif
        mmi_hsensor_hr_measure_start();
 }
 
 void mmi_hsensor_spo2_open(void)
 {
        HEALTH_MEASURE_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+#if USE_FR8012HAQ
        mmi_hsensor_close();
+#endif
        mmi_hsensor_spo2_measure_start();
 }
 
 void mmi_hsensor_bp_open(void)
 {
        HEALTH_MEASURE_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+#if USE_FR8012HAQ
        mmi_hsensor_close();
+#endif
        mmi_hsensor_bp_measure_start();
 }
 
@@ -80,6 +88,9 @@ void mmi_tsensor_close(void)
 void mmi_tsensor_open(void)
 {
        HEALTH_MEASURE_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+#if USE_FR8012HAQ
+       mmi_tsensor_close();
+#endif
        mmi_tsensor_temperature_measure_start();
 }
 
@@ -126,6 +137,17 @@ bool mmi_health_measure_state_is_back_measure(void)
        return false;
 }
 
+bool mmi_health_measure_state_is_in_measure(void)
+{
+       if(MMI_HEALTH_MEASURE_STATE_UI == s_health_measure_run_data.measure_state
+               || MMI_HEALTH_MEASURE_STATE_APP == s_health_measure_run_data.measure_state
+               || MMI_HEALTH_MEASURE_STATE_TIMED == s_health_measure_run_data.measure_state
+               )
+               return true;
+
+       return false;
+}
+
 bool mmi_health_measure_heart_data_process(uint16_t * heart_value)
 {
        uint16_t t_value = 0;
@@ -643,6 +665,9 @@ void mmi_health_measure_process_finish(void)
        
                case MMI_HEALTH_MEASURE_TEMPERATURE:
                        mmi_tsensor_close();
+                       #ifdef __MMI_CUSTOM_HENGAI_TCMS__
+                       mmi_hengai_tcms_action();
+                       #endif
                        mmi_health_measure_send_temperature();
                        break;
        
@@ -739,6 +764,9 @@ void mmi_health_measure_interrupt(void)
        
                case MMI_HEALTH_MEASURE_TEMPERATURE:
                        mmi_tsensor_close();
+                       #ifdef __MMI_CUSTOM_HENGAI_TCMS__
+                       mmi_hengai_tcms_action();
+                       #endif
                        break;
                
                default:
@@ -808,10 +836,7 @@ bool mmi_health_measure_timed_measure_start(MMI_HEALTH_MEASURE_TYPE_E measure_ty
        }
 #endif
        
-       if(MMI_HEALTH_MEASURE_STATE_UI == s_health_measure_run_data.measure_state
-               || MMI_HEALTH_MEASURE_STATE_APP == s_health_measure_run_data.measure_state
-               || MMI_HEALTH_MEASURE_STATE_TIMED == s_health_measure_run_data.measure_state
-               )
+       if(true == mmi_health_measure_state_is_in_measure())
        {
                if(measure_type == s_health_measure_run_data.measure_type)
                {
@@ -870,9 +895,7 @@ void mmi_health_measure_app_measure_start(MMI_HEALTH_MEASURE_TYPE_E measure_type
 
 void mmi_health_measure_ui_measure_start(MMI_HEALTH_MEASURE_TYPE_E measure_type)
 {
-       if(MMI_HEALTH_MEASURE_STATE_APP == s_health_measure_run_data.measure_state
-               || MMI_HEALTH_MEASURE_STATE_TIMED == s_health_measure_run_data.measure_state
-               )
+       if(true == mmi_health_measure_state_is_back_measure())
        {
                mmi_health_measure_interrupt();
        }
index 5ab7148..bad090d 100644 (file)
@@ -86,6 +86,7 @@ void mmi_tsensor_body_value_get(float * body_value);
 bool mmi_health_measure_wear_state_get(void);
 //MMI_HEALTH_MEASURE_STATE_E mmi_health_measure_state_get(void);
 bool mmi_health_measure_state_is_ui_measure(void);
+bool mmi_health_measure_state_is_in_measure(void);
 
 bool mmi_health_measure_heart_data_ui_get(uint16_t * heart_value);
 bool mmi_health_measure_temperature_data_ui_get(float * body_value, float * wrist_value);
index 90052c9..a15a106 100644 (file)
@@ -653,11 +653,6 @@ bool mmi_protocol_fzd_parse_ACTION_BIND(unsigned char * next_buff, unsigned int
 
                        // socket heartbeat
                        mmi_protocol_watch_heartbeat_action();
-
-                       // hengai tcms  
-               #ifdef __MMI_CUSTOM_HENGAI_TCMS__
-                       mmi_hengai_tcms_action();
-               #endif
                        
                        // timing mission
                        mmi_protocol_watch_timed_mission_action();
@@ -671,6 +666,11 @@ bool mmi_protocol_fzd_parse_ACTION_BIND(unsigned char * next_buff, unsigned int
                #ifdef __MMI_CUSTOM_HENG_AI__
                        mmi_hengai_sleep_activation_check_action();
                #endif
+
+                       // hengai tcms  
+               #ifdef __MMI_CUSTOM_HENGAI_TCMS__
+                       mmi_hengai_tcms_action();
+               #endif
                
 
                }