优化272 心率上下电,未佩戴进低功耗模式
authorpenglei <1624952103@qq.com>
Wed, 7 Jan 2026 07:41:38 +0000 (15:41 +0800)
committerpenglei <1624952103@qq.com>
Wed, 7 Jan 2026 07:41:38 +0000 (15:41 +0800)
code/sdk/zhihui/drivers/ppg/hal/ppg_hal.c
code/sdk/zhihui/drivers/ppg/hx3695/hx3695.c

index 488ed50..faaafc2 100644 (file)
@@ -2,7 +2,7 @@
  * @Author: penglei 1624952103@qq.com
  * @Date: 2024-03-13 15:08:38
  * @LastEditors: penglei 1624952103@qq.com
- * @LastEditTime: 2025-11-13 14:46:25
+ * @LastEditTime: 2026-01-07 15:34:17
  * @FilePath: /FD230/code/sdk/drivers/peripheral/ppg/hx3695/hx3695_hal.c
  * @Description: 
  * 
@@ -78,12 +78,13 @@ void ppg_power_on(void)
 
 void ppg_power_off(void)
 {
-    // printf("ppg_power_off\n");
+#ifndef PPG_HX3695 
+    printf("ppg_power_off\n");
     uapi_pin_set_mode(GPIO_PIN_PRG_RESET, (pin_mode_t)HAL_PIO_FUNC_GPIO);
     uapi_gpio_set_dir(GPIO_PIN_PRG_RESET, GPIO_DIRECTION_OUTPUT);
     uapi_gpio_set_val(GPIO_PIN_PRG_RESET, GPIO_LEVEL_LOW);
     LOS_Mdelay(10);
-#ifndef BOARD_FD272
+
     uapi_pin_set_mode(GPIO_PIN_PRG_LED_ON, (pin_mode_t)HAL_PIO_FUNC_GPIO);
     uapi_gpio_set_dir(GPIO_PIN_PRG_LED_ON, GPIO_DIRECTION_OUTPUT);
     uapi_gpio_set_val(GPIO_PIN_PRG_LED_ON, GPIO_LEVEL_LOW);
index 015f0a9..9573e81 100644 (file)
@@ -523,14 +523,19 @@ bool hx3695_check_wear(ppg_sensor_data_t *ppg_sensor_dat)
             }\r
             // printf("wear_status:%d\n",wear_status);\r
 \r
-            // if(wear_status == MSG_NO_WEAR)\r
-            // {\r
-            //     hx3695_wear_low_power(ppg_sensor_dat);                 \r
-            // }\r
-            // else if(wear_status == MSG_WEAR)\r
-            // {\r
-            //     hx3695_init(work_mode_flag);\r
-            // }  \r
+            // if(!uapi_dev_runtime_get_train_status())\r
+            {\r
+                if(wear_status == MSG_NO_WEAR)\r
+                {\r
+                    hx3695_wear_low_power(ppg_sensor_dat);                 \r
+                }\r
+                else if(wear_status == MSG_WEAR)\r
+                {\r
+                    hx3695_init(work_mode_flag);\r
+                }  \r
+            }\r
+\r
+\r
         }  \r
     }\r
        return 1;\r
@@ -1065,7 +1070,7 @@ void hx3695_ppg_set_mode(uint8_t mode_cmd)
                        hx3695_ppg_para_init(&ppg_sensor_data);\r
                s_ppg_state = 1;\r
                        s_cal_state = 0;\r
-            if(work_mode_flag == HRS_MODE)\r
+            if(work_mode_flag != WEAR_MODE)\r
             {\r
                 #if defined(TIMMER_MODE)\r
                 hx3695_320ms_timer_cfg(true);\r