From 11230575fee096f452ada31f0d381afee397af87 Mon Sep 17 00:00:00 2001 From: penglei <1624952103@qq.com> Date: Fri, 18 Jul 2025 10:16:10 +0800 Subject: [PATCH] =?utf8?q?=E4=BC=98=E5=8C=96ppg=E6=9C=8D=E5=8A=A1=E5=88=9D?= =?utf8?q?=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../brandy/brandy_standard/thread_pri_init.c | 13 +++++++------ code/sdk/zhihui/drivers/cywee/dml/cywee_dml.c | 11 ++++++++++- code/sdk/zhihui/drivers/ppg/service/ppg_service.cpp | 13 ++++++++----- 3 files changed, 25 insertions(+), 12 deletions(-) diff --git a/code/sdk/application/brandy/brandy_standard/thread_pri_init.c b/code/sdk/application/brandy/brandy_standard/thread_pri_init.c index f1832a784..916e05cc5 100644 --- a/code/sdk/application/brandy/brandy_standard/thread_pri_init.c +++ b/code/sdk/application/brandy/brandy_standard/thread_pri_init.c @@ -410,7 +410,7 @@ static void thread_main(const void *unused) { PRINT("thread_main start "NEWLINE); unused(unused); -#ifdef BOARD_FD230 +#ifdef FD230 uapi_pin_set_ie(S_MGPIO34, HAL_PIO_IE_DISABLE);//启动期间关闭uart输入中断,启动后开启 #endif rc_calibration_func_notify(); @@ -534,10 +534,6 @@ static void thread_main(const void *unused) uapi_mag_service_init(); #endif -#ifdef SUPPORT_PPG_SERVICE - uapi_ppg_service_init(); -#endif - #ifdef SUPPORT_CYWEE_SERVICE uapi_cywee_service_init(); #endif @@ -568,7 +564,7 @@ start_custom_ble_service(); uapi_a5133_service_init(); #endif -#ifdef BOARD_FD230 +#ifdef FD230 uapi_pin_set_ie(S_MGPIO34, HAL_PIO_IE_ENBALE); //启动期间关闭uart输入中断,启动后开启 #endif @@ -580,6 +576,11 @@ start_custom_ble_service(); //开始播放开机动画,并启动ohos系统 ohos_startup(); #endif + +#ifdef SUPPORT_PPG_SERVICE + uapi_ppg_service_init(); +#endif + #ifdef CUSTOM_UTILS startup_post_init(); #endif diff --git a/code/sdk/zhihui/drivers/cywee/dml/cywee_dml.c b/code/sdk/zhihui/drivers/cywee/dml/cywee_dml.c index f72631aa1..447e6f5ae 100644 --- a/code/sdk/zhihui/drivers/cywee/dml/cywee_dml.c +++ b/code/sdk/zhihui/drivers/cywee/dml/cywee_dml.c @@ -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; diff --git a/code/sdk/zhihui/drivers/ppg/service/ppg_service.cpp b/code/sdk/zhihui/drivers/ppg/service/ppg_service.cpp index ab4458e83..ac40a9654 100644 --- a/code/sdk/zhihui/drivers/ppg/service/ppg_service.cpp +++ b/code/sdk/zhihui/drivers/ppg/service/ppg_service.cpp @@ -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; -- 2.17.1