血压模组添加温度功能
authorp15692025051 <846603105@qq.com>
Wed, 24 Jan 2024 09:31:58 +0000 (17:31 +0800)
committerp15692025051 <846603105@qq.com>
Wed, 24 Jan 2024 09:31:58 +0000 (17:31 +0800)
2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.c
2.sdk/sdk/gui/lv_drivers/indev/FR8012HAQ/fr8012haq.h
2.sdk/sdk/gui/lv_watch/app_adaptor/app_adaptor_sensor_interface.c

index c607f4a..21801d3 100644 (file)
@@ -683,18 +683,20 @@ int fr8012haq_parse_returned_data(int timeout)
                 
             }
             /*体温*/
-            str_tmp = strstr(UART4_buf,"\"temper_data\":\"");
+            str_tmp = strstr(UART4_buf,"\"temp_data\":\"");
             if(str_tmp)
             {
                 
                 //unsigned char hrs = 0;
-                str_tmp += strlen("\"temper_data\":\"");
+                str_tmp += strlen("\"temp_data\":\"");
                 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);
-                temp = atof(num_buf); 
+                temp = atof(num_buf);
+                //FR8012HAQ_LOG("temp:str_tmp:%s\n",str_tmp); 
+                FR8012HAQ_LOG("temp:%f\n",temp);
             }
             /*佩戴*/
             str_tmp = strstr(UART4_buf,"\"wear_data\":\"");
@@ -842,6 +844,11 @@ void fr8012haq_process_data(uint32_t *process_data)
             /* code */
             //uart4_send_data("{\"cmd\":\"2\",\"get_data\":\"yyl\"}",sizeof("{\"cmd\":\"2\",\"get_data\":\"yyl\"}"));
             break;
+        case TEMP_MODE:
+            /* code */
+            uart4_send_data("{\"cmd\":\"2\",\"get_data\":\"temp\"}",sizeof("{\"cmd\":\"2\",\"get_data\":\"temp\"}"));
+            UOS_SleepMs(50);
+            break;
         default:
             break;
     }
@@ -1010,14 +1017,21 @@ void fr8012haq_measure_emo_start(void)
 {
     sys_pm_wakeup_no_lcd();
     FR8012HAQ_run_mode = EMO_MODE      ;
-    FR8012HAQ_LOG("fr8012haq_measure_bp_start :FR8012HAQ_run_mode:%d!!!!!!!!\n",FR8012HAQ_run_mode);
+    FR8012HAQ_LOG("fr8012haq_measure_emo_start :FR8012HAQ_run_mode:%d!!!!!!!!\n",FR8012HAQ_run_mode);
     sensor_task_send_message(FR8012HAQ_ID,SENSOR_MSG_START);
 }
 void fr8012haq_measure_YYL_start(void)
 {
     sys_pm_wakeup_no_lcd();
     FR8012HAQ_run_mode = YYL_MODE      ;
-    FR8012HAQ_LOG("fr8012haq_measure_bp_start :FR8012HAQ_run_mode:%d!!!!!!!!\n",FR8012HAQ_run_mode);
+    FR8012HAQ_LOG("fr8012haq_measure_YYL_start :FR8012HAQ_run_mode:%d!!!!!!!!\n",FR8012HAQ_run_mode);
+    sensor_task_send_message(FR8012HAQ_ID,SENSOR_MSG_START);
+}
+void fr8012haq_measure_temp_start(void)
+{
+    sys_pm_wakeup_no_lcd();
+    FR8012HAQ_run_mode = TEMP_MODE     ;
+    FR8012HAQ_LOG("fr8012haq_measure_temp_start :FR8012HAQ_run_mode:%d!!!!!!!!\n",FR8012HAQ_run_mode);
     sensor_task_send_message(FR8012HAQ_ID,SENSOR_MSG_START);
 }
 void FR8012HAQ_restart(void)
@@ -1095,7 +1109,10 @@ static void fr8012haq_hr_bp_bo_value_update(uint16_t hr, uint16_t bp_high, uint1
     // }
     // //app_adaptor_pedometer_data_clear();
 }
-
+float fr8012haq_get_body_temperature(void)
+{
+    return temp;
+}
 uint16_t get_fr8012haq_hr_value(void)
 {
     return s_FR8012HAQ_heart_rate;
index cc386c9..c890ee6 100644 (file)
@@ -63,4 +63,6 @@ void FR8012HAQ_close(void);
 void fr8012haq_measure_stop(void);
 int  *fr8012haq_blood_data_get(int *len);
 char*  fr8012haq_YYL_data_get(int *yyl_data_len);
+float fr8012haq_get_body_temperature(void);
+void fr8012haq_measure_temp_start(void);
 #endif
index a775add..aa42965 100644 (file)
@@ -290,6 +290,8 @@ void mmi_tsensor_temperature_measure_start(void)
        ct1711_measure_start();
 #elif USE_ACNT180
     acnt180_measure_start();
+#elif USE_FR8012HAQ
+    fr8012haq_measure_temp_start();
 #elif USE_ACNT117
     acnt117_measure_start();    
 #endif
@@ -303,6 +305,8 @@ void mmi_tsensor_temperature_measure_stop(void)
     ct1711_measure_stop();
 #elif USE_ACNT180
     acnt180_measure_stop();
+#elif USE_FR8012HAQ
+    fr8012haq_measure_stop();
 #elif USE_ACNT117
     acnt117_measure_stop();
 #endif
@@ -316,6 +320,8 @@ float mmi_tsensor_body_temperature_get(void)
     return ct1711_get_body_temperature();
 #elif USE_ACNT180
     return acnt180_get_body_temperature();
+#elif USE_FR8012HAQ
+    return fr8012haq_get_body_temperature();
 #elif USE_ACNT117
     return acnt117_get_body_temperature();
 #else