{
*voltage = adc_trans_systick_to_battery_voltage(stick);
get_avg_voltage(voltage);
+ int IntPart = (int)(*voltage);
+ int DecimalPart = (int)((*voltage - IntPart) * 1000);
+
+ int DecimalPart_1 = (int)(DecimalPart / 100);
+ int DecimalPart_2 = (int)((DecimalPart % 100) / 10);
+ int DecimalPart_3 = (int)(DecimalPart % 10);
+ // PRINT("*voltage : %.3f \n",*voltage);
+ // PRINT("DecimalPart_1 : %d , DecimalPart_2 : %d DecimalPart_3 : %d \n",DecimalPart_1,DecimalPart_2,DecimalPart_3);
+ uint16_t value = DecimalPart_1 << 8 | DecimalPart_2 << 4 | DecimalPart_3 << 0;
+ uapi_save_runtime_log(RUNTIME_LOG_BAT_VOL | value);
+ // PRINT("RUNTIME_LOG_BAT_VOL | value : %x \n",RUNTIME_LOG_BAT_VOL | value);
if(percernt_installized)
{
//历史电量不为0 则开机第一个电量为历史电量
display_counter_ = 0;\r
displayheart = 0;\r
uint8_t md = PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST;\r
- send_ppg_cmd_msg(md);\r
+ errcode_t ret = send_ppg_cmd_msg(md);\r
+ if(ret != ERRCODE_SUCC)\r
+ {\r
+ send_ppg_cmd_msg(md);\r
+ }\r
heartstate = false;\r
if (checkstate == HeartCheck::CARDCHECK) {\r
//重置传感器状态\r
}
-void send_ppg_cmd_msg(int cmd)
+errcode_t send_ppg_cmd_msg(int cmd)
{
- int ret;
+ errcode_t ret;
if (ppg_sensor_exist == false)
- return ;
+ return OSAL_FAILURE;
PPG_CMD_TYPE_T mail = 0;
mail = cmd;
if (ret != OSAL_SUCCESS) {
PRINT_ERR("Error ppg Check MSG 0x%02X send failed! err=0x%x! \r\n",cmd, ret);
}
-
+ return ret;
}
static void ppg_service_check_task(void *arg)
continue;
}else if (mail == PPG_SERVICE_CMD_TYPE_DO_PPG_TEST){
//do_cywee_service_check_msg(CYWEE_SERVICE_CMD_OPEN_GET_ACC,NULL);
+ uapi_save_runtime_log(RUNTIME_LOG_HEART_DRIVER_MEASURE);
cmd = "hrs";
enable = 1;
uint8_t cnt = pm_veto_get_id_cnt(PM_ID_HEART);
enable = 0;
wear_mode_state = 0;
}else if (mail == PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST){
+ uapi_save_runtime_log(RUNTIME_LOG_HEART_DRIVER_MEASURE_END);
cmd = "hrs";
enable = 0;
uint8_t cnt = pm_veto_get_id_cnt(PM_ID_HEART);
* @Author: penglei 1624952103@qq.com
* @Date: 2024-03-27 09:07:00
* @LastEditors: penglei 1624952103@qq.com
- * @LastEditTime: 2024-11-23 22:07:09
+ * @LastEditTime: 2024-12-21 11:00:33
* @FilePath: /FD230/code/sdk/drivers/peripheral/ppg/service/ppg_service.h
* @Description:
*
/**
* 测试指令 参数cmd 选项: PPG_SERVICE_CMD_START_CHECK,PPG_SERVICE_CMD_STOP_CHECK
*/
-void send_ppg_cmd_msg(int cmd);
+errcode_t send_ppg_cmd_msg(int cmd);
float ppg_service_get_fAzimuth(void);
int ppg_service_get_iAccuracy(void);
/*
*@Author:luozheng 1732036298@qq.com
*@Date:2024-12-18 10:27:52
- * @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-12-20 16:39:00
+ * @LastEditors: penglei 1624952103@qq.com
+ * @LastEditTime: 2024-12-21 11:52:18
*@FilePath:/FD230/code/sdk/drivers/peripheral/utils/custom_save_runtime.h
*/
/**
RUNTIME_LOG_HEART_SPORT_MEASURE,
// 运动测量心率暂停或结束
RUNTIME_LOG_OXYGEN_SPORT_MEASURE_END,
+ //底层测量心率
+ RUNTIME_LOG_HEART_DRIVER_MEASURE,
+ //底层测量心率结束
+ RUNTIME_LOG_HEART_DRIVER_MEASURE_END,
/*******************************/
// 佩戴
RUNTIME_LOG_VOTE_ID =0x1300,
+ //电压变化
+ RUNTIME_LOG_BAT_VOL =0xf000,
+
} runtime_log_cmd_Id;
errcode_t uapi_save_runtime_log(uint16_t cmd);