优化ppg服务初始化
authorpenglei <1624952103@qq.com>
Fri, 18 Jul 2025 02:16:10 +0000 (10:16 +0800)
committerpenglei <1624952103@qq.com>
Fri, 18 Jul 2025 02:16:10 +0000 (10:16 +0800)
code/sdk/application/brandy/brandy_standard/thread_pri_init.c
code/sdk/zhihui/drivers/cywee/dml/cywee_dml.c
code/sdk/zhihui/drivers/ppg/service/ppg_service.cpp

index f1832a7..916e05c 100644 (file)
@@ -410,7 +410,7 @@ static void thread_main(const void *unused)
 {\r
     PRINT("thread_main start "NEWLINE);\r
     unused(unused);\r
-#ifdef BOARD_FD230\r
+#ifdef FD230\r
     uapi_pin_set_ie(S_MGPIO34, HAL_PIO_IE_DISABLE);//启动期间关闭uart输入中断,启动后开启\r
 #endif\r
     rc_calibration_func_notify();\r
@@ -534,10 +534,6 @@ static void thread_main(const void *unused)
     uapi_mag_service_init();\r
 #endif\r
 \r
-#ifdef SUPPORT_PPG_SERVICE\r
-    uapi_ppg_service_init();\r
-#endif\r
-\r
 #ifdef SUPPORT_CYWEE_SERVICE\r
     uapi_cywee_service_init();\r
 #endif \r
@@ -568,7 +564,7 @@ start_custom_ble_service();
     uapi_a5133_service_init();\r
 #endif\r
 \r
-#ifdef BOARD_FD230\r
+#ifdef FD230\r
     uapi_pin_set_ie(S_MGPIO34, HAL_PIO_IE_ENBALE); //启动期间关闭uart输入中断,启动后开启\r
 #endif\r
 \r
@@ -580,6 +576,11 @@ start_custom_ble_service();
     //开始播放开机动画,并启动ohos系统\r
     ohos_startup();\r
 #endif\r
+\r
+#ifdef SUPPORT_PPG_SERVICE\r
+    uapi_ppg_service_init();\r
+#endif\r
+\r
 #ifdef CUSTOM_UTILS\r
     startup_post_init();\r
 #endif\r
index f72631a..447e6f5 100644 (file)
@@ -1193,11 +1193,20 @@ void CWM_AP_SensorListen(pSensorEVT_t sensorEVT) {
             if((int)sensorEVT->fData[1] == CUSTOM_OFFBODY_DETECT)
             {
                 CWM_OS_dbgPrintf("CUSTOM_OFFBODY_DETECT !!! \r\n");
-#if 0
+#if 1
                 if((int)sensorEVT->fData[2] == 1)
+                {
+#ifdef SUPPORT_PPG_SERVICE
                     send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_WEAR_MODE_TEST); 
+#endif
+                }
                 else
+                {
+#ifdef SUPPORT_PPG_SERVICE
                     send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_STOP_WEAR_MODE_TEST); 
+#endif
+                }
+                    
 #else
                 memset(&csd, 0, sizeof(CUSTOM_OFFBODY_DETECT));
                 csd.sensorType = CUSTOM_OFFBODY_DETECT;
index ab4458e..ac40a96 100644 (file)
@@ -452,11 +452,14 @@ errcode_t uapi_ppg_service_init(void)
 
     if (ppg_get_chip_id() != PPG_CHIP_ID)
     {
-        //TODO 没找到3695,退出线程
-        PRINT("ppg not exist!\r\n");
-        return ERRCODE_FAIL;
-    }
+        LOS_Mdelay(50);
 
+        if (ppg_get_chip_id() != PPG_CHIP_ID)
+        {
+            PRINT("ppg not exist!\r\n");
+            return ERRCODE_FAIL;
+        }
+    }
 
     ppg_sensor_exist = true;
 
@@ -475,7 +478,7 @@ errcode_t uapi_ppg_service_init(void)
         return ERRCODE_FAIL;
     }
 
-
+    send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_WEAR_MODE_TEST);
     // g_ppg_service_timer = osTimerNew((osTimerFunc_t)ppg_int_callback, osTimerPeriodic, NULL, NULL);
 
     return ERRCODE_SUCC;