\r
static osTimerId_t g_ble_hrs_timer;\r
static osTimerId_t g_ble_spo2_timer;\r
-static osTimerId_t g_ble_graycard_timer;\r
-static osTimerId_t g_ble_leaklight_timer;\r
-\r
-static uint8_t graycard_flag = 0;\r
-static uint8_t leaklight_flag = 0;\r
\r
static uint32_t aging_time = 0;\r
\r
\r
}\r
\r
-void ble_graycard_check_timer_callback(void)\r
-{\r
- if(graycard_flag == 10)\r
- {\r
- graycard_flag = 0;\r
- osTimerStop(g_ble_graycard_timer);\r
- osTimerDelete(g_ble_graycard_timer);\r
- return;\r
- }\r
- send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_GRAYCARD_TEST);\r
- FT_RESULTS_t ft_result = hx3695_factroy_test(GRAY_CARD_TEST);\r
- send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST);\r
- uint8_t databuf[12] = {0};\r
-\r
- databuf[0] = (uint8_t)((ft_result.gr_data_final & 0xFF000000) >> 24);\r
- databuf[1] = (uint8_t)((ft_result.gr_data_final & 0x00FF0000) >> 16);\r
- databuf[2] = (uint8_t)((ft_result.gr_data_final & 0x0000FF00) >> 8);\r
- databuf[3] = (uint8_t)((ft_result.gr_data_final & 0x000000FF) >> 0);\r
-\r
- databuf[4] = (uint8_t)((ft_result.red_data_final & 0xFF000000) >> 24);\r
- databuf[5] = (uint8_t)((ft_result.red_data_final & 0x00FF0000) >> 16);\r
- databuf[6] = (uint8_t)((ft_result.red_data_final & 0x0000FF00) >> 8);\r
- databuf[7] = (uint8_t)((ft_result.red_data_final & 0x000000FF) >> 0);\r
-\r
- databuf[8] = (uint8_t)((ft_result.ir_data_final & 0xFF000000) >> 24);\r
- databuf[9] = (uint8_t)((ft_result.ir_data_final & 0x00FF0000) >> 16);\r
- databuf[10] = (uint8_t)((ft_result.ir_data_final & 0x0000FF00) >> 8);\r
- databuf[11] = (uint8_t)((ft_result.ir_data_final & 0x000000FF) >> 0);\r
-\r
- PRINT("%2X %2X %2X %2X %2X %2X %2X %2X %2X %2X %2X %2X\r\n",\r
- databuf[0],databuf[1],databuf[2],databuf[3],\r
- databuf[4],databuf[5],databuf[6],databuf[7],\r
- databuf[8],databuf[9],databuf[10],databuf[11]\r
- );\r
-\r
-\r
- factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_SOFT_TEST,\r
- BLE_TEST_CMD_SOFT_TEST_SUB_MODE_HRS,\r
- 0x05,\r
- databuf,\r
- 12);\r
- graycard_flag++;\r
-}\r
-\r
-void ble_leaklight_check_timer_callback(void)\r
-{\r
- if(leaklight_flag == 10)\r
- {\r
- leaklight_flag = 0;\r
- osTimerStop(g_ble_leaklight_timer);\r
- osTimerDelete(g_ble_leaklight_timer);\r
- return;\r
- }\r
- send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_LEAKLIGHT_TEST);\r
- FT_RESULTS_t ft_result = hx3695_factroy_test(LEAK_LIGHT_TEST);\r
- send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST);\r
- uint8_t databuf[12] = {0};\r
-\r
- databuf[0] = (uint8_t)((ft_result.gr_data_final & 0xFF000000) >> 24);\r
- databuf[1] = (uint8_t)((ft_result.gr_data_final & 0x00FF0000) >> 16);\r
- databuf[2] = (uint8_t)((ft_result.gr_data_final & 0x0000FF00) >> 8);\r
- databuf[3] = (uint8_t)((ft_result.gr_data_final & 0x000000FF) >> 0);\r
-\r
- databuf[4] = (uint8_t)((ft_result.red_data_final & 0xFF000000) >> 24);\r
- databuf[5] = (uint8_t)((ft_result.red_data_final & 0x00FF0000) >> 16);\r
- databuf[6] = (uint8_t)((ft_result.red_data_final & 0x0000FF00) >> 8);\r
- databuf[7] = (uint8_t)((ft_result.red_data_final & 0x000000FF) >> 0);\r
-\r
- databuf[8] = (uint8_t)((ft_result.ir_data_final & 0xFF000000) >> 24);\r
- databuf[9] = (uint8_t)((ft_result.ir_data_final & 0x00FF0000) >> 16);\r
- databuf[10] = (uint8_t)((ft_result.ir_data_final & 0x0000FF00) >> 8);\r
- databuf[11] = (uint8_t)((ft_result.ir_data_final & 0x000000FF) >> 0);\r
-\r
- PRINT("%2X %2X %2X %2X %2X %2X %2X %2X %2X %2X %2X %2X\r\n",\r
- databuf[0],databuf[1],databuf[2],databuf[3],\r
- databuf[4],databuf[5],databuf[6],databuf[7],\r
- databuf[8],databuf[9],databuf[10],databuf[11]\r
- );\r
-\r
- factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_SOFT_TEST,\r
- BLE_TEST_CMD_SOFT_TEST_SUB_MODE_HRS,\r
- 0x06,\r
- databuf,\r
- 12);\r
- leaklight_flag++;\r
-}\r
-\r
void aging_task(void)\r
{\r
while(aging_t.flag == 0xfdfd0002 && aging_time)\r
} else if(testitem == 0x05)\r
{\r
//灰卡测试\r
- g_ble_graycard_timer = osTimerNew((osTimerFunc_t)ble_graycard_check_timer_callback, osTimerPeriodic, NULL, NULL);\r
- osTimerStart(g_ble_graycard_timer,400);\r
+ send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_GRAYCARD_TEST);\r
+ FT_RESULTS_t ft_result = hx3695_factroy_test(GRAY_CARD_TEST);\r
+ send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST);\r
+ uint8_t databuf[12] = {0};\r
+\r
+ databuf[0] = (uint8_t)((ft_result.gr_data_final & 0xFF000000) >> 24);\r
+ databuf[1] = (uint8_t)((ft_result.gr_data_final & 0x00FF0000) >> 16);\r
+ databuf[2] = (uint8_t)((ft_result.gr_data_final & 0x0000FF00) >> 8);\r
+ databuf[3] = (uint8_t)((ft_result.gr_data_final & 0x000000FF) >> 0);\r
+\r
+ databuf[4] = (uint8_t)((ft_result.red_data_final & 0xFF000000) >> 24);\r
+ databuf[5] = (uint8_t)((ft_result.red_data_final & 0x00FF0000) >> 16);\r
+ databuf[6] = (uint8_t)((ft_result.red_data_final & 0x0000FF00) >> 8);\r
+ databuf[7] = (uint8_t)((ft_result.red_data_final & 0x000000FF) >> 0);\r
+\r
+ databuf[8] = (uint8_t)((ft_result.ir_data_final & 0xFF000000) >> 24);\r
+ databuf[9] = (uint8_t)((ft_result.ir_data_final & 0x00FF0000) >> 16);\r
+ databuf[10] = (uint8_t)((ft_result.ir_data_final & 0x0000FF00) >> 8);\r
+ databuf[11] = (uint8_t)((ft_result.ir_data_final & 0x000000FF) >> 0);\r
+\r
+ PRINT("%2X %2X %2X %2X %2X %2X %2X %2X %2X %2X %2X %2X\r\n",\r
+ databuf[0],databuf[1],databuf[2],databuf[3],\r
+ databuf[4],databuf[5],databuf[6],databuf[7],\r
+ databuf[8],databuf[9],databuf[10],databuf[11]\r
+ );\r
+\r
+\r
+ factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_SOFT_TEST,\r
+ BLE_TEST_CMD_SOFT_TEST_SUB_MODE_HRS,\r
+ 0x05,\r
+ databuf,\r
+ 12);\r
\r
} else if(testitem == 0x06)\r
{\r
//漏光测试\r
- g_ble_leaklight_timer = osTimerNew((osTimerFunc_t)ble_leaklight_check_timer_callback, osTimerPeriodic, NULL, NULL);\r
- osTimerStart(g_ble_leaklight_timer,400);\r
+ send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_LEAKLIGHT_TEST);\r
+ FT_RESULTS_t ft_result = hx3695_factroy_test(LEAK_LIGHT_TEST);\r
+ send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST);\r
+ uint8_t databuf[12] = {0};\r
+\r
+ databuf[0] = (uint8_t)((ft_result.gr_data_final & 0xFF000000) >> 24);\r
+ databuf[1] = (uint8_t)((ft_result.gr_data_final & 0x00FF0000) >> 16);\r
+ databuf[2] = (uint8_t)((ft_result.gr_data_final & 0x0000FF00) >> 8);\r
+ databuf[3] = (uint8_t)((ft_result.gr_data_final & 0x000000FF) >> 0);\r
+\r
+ databuf[4] = (uint8_t)((ft_result.red_data_final & 0xFF000000) >> 24);\r
+ databuf[5] = (uint8_t)((ft_result.red_data_final & 0x00FF0000) >> 16);\r
+ databuf[6] = (uint8_t)((ft_result.red_data_final & 0x0000FF00) >> 8);\r
+ databuf[7] = (uint8_t)((ft_result.red_data_final & 0x000000FF) >> 0);\r
+\r
+ databuf[8] = (uint8_t)((ft_result.ir_data_final & 0xFF000000) >> 24);\r
+ databuf[9] = (uint8_t)((ft_result.ir_data_final & 0x00FF0000) >> 16);\r
+ databuf[10] = (uint8_t)((ft_result.ir_data_final & 0x0000FF00) >> 8);\r
+ databuf[11] = (uint8_t)((ft_result.ir_data_final & 0x000000FF) >> 0);\r
+\r
+ PRINT("%2X %2X %2X %2X %2X %2X %2X %2X %2X %2X %2X %2X\r\n",\r
+ databuf[0],databuf[1],databuf[2],databuf[3],\r
+ databuf[4],databuf[5],databuf[6],databuf[7],\r
+ databuf[8],databuf[9],databuf[10],databuf[11]\r
+ );\r
+\r
+ factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_SOFT_TEST,\r
+ BLE_TEST_CMD_SOFT_TEST_SUB_MODE_HRS,\r
+ 0x06,\r
+ databuf,\r
+ 12);\r
\r
}\r
break;\r