From: penglei <1624952103@qq.com> Date: Fri, 10 Jan 2025 04:14:21 +0000 (+0800) Subject: 优化蓝牙产测老化测试 X-Git-Tag: v1.3.113-repair_tp~39^2~4 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=359107474e012229a6df3837f78f81f9d64a958f;p=mirrors%2FFD230.git 优化蓝牙产测老化测试 --- diff --git a/code/sdk/application/wearable/service/factorytest_service/factorytest_protocol.c b/code/sdk/application/wearable/service/factorytest_service/factorytest_protocol.c index 8c070da93..df38eeb49 100644 --- a/code/sdk/application/wearable/service/factorytest_service/factorytest_protocol.c +++ b/code/sdk/application/wearable/service/factorytest_service/factorytest_protocol.c @@ -2,7 +2,7 @@ * @Author: penglei 1624952103@qq.com * @Date: 2024-06-17 14:31:08 * @LastEditors: penglei 1624952103@qq.com - * @LastEditTime: 2025-01-08 18:28:52 + * @LastEditTime: 2025-01-10 11:19:35 * @FilePath: /FD230/code/sdk/application/wearable/service/factorytest_service/factorytest_protocol.c * @Description: * @@ -266,8 +266,9 @@ void aging_task(void) /*********************表冠 老化测试*****************************/ //读crown ID - PRINT("crown_read_reg : %X \n",crown_read_reg(0x00)); - if(!(crown_read_reg(0x00) == 0x30)) + uint8_t crown_id = 0; + crown_read_id(&crown_id); + if(crown_id != 0x30) { aging_t.crown_error++; aging_t.fail_num++; @@ -276,10 +277,7 @@ void aging_task(void) /*********************充电 老化测试*****************************/ - bool state; - state = uapi_get_charger_plug_status(); - PRINT("充电 uapi_get_charger_plug_status() : %d \r\n",uapi_get_charger_plug_status()); - if(!uapi_get_charger_plug_status()) + if(!get_charge_stat()) { aging_t.charge_error++; aging_t.fail_num++; @@ -305,7 +303,7 @@ void aging_task(void) custom_VibratorFunc_int(4); LOS_Msleep(4000); // uapi_get_timestampe_ss(&age_time); - PRINT("current_time - enter_time[%d]\n",current_time - enter_time); + // PRINT("current_time - enter_time[%d]\n",current_time - enter_time); }while(current_time - enter_time <= 2 * 60); PRINT("马达失败次数 : %d \r\n",aging_t.motor_error); @@ -338,7 +336,7 @@ void aging_task(void) LOS_Msleep(2000); uapi_check_spk(0); aging_t.speaker_error = 0; - PRINT("current_time - enter_time[%d]\n",current_time - enter_time); + // PRINT("current_time - enter_time[%d]\n",current_time - enter_time); }while(current_time - enter_time <= 2 * 60); PRINT("spk失败次数 : %d \r\n",aging_t.speaker_error); /*********************ppg 老化测试*****************************/ @@ -357,7 +355,7 @@ void aging_task(void) } uapi_get_timestampe_ss(¤t_time); send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_SINGLE_CHECK_MODE_TEST); - LOS_Msleep(500); + LOS_Msleep(1000); FT_RESULTS_t ft_result = hx3695_factroy_test(SINGLE_CHECK_TEST); send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST); PRINT("ft_result.gr_data_final : %d , ft_result.red_data_final : %d , ft_result.ir_data_final : %d\r\n",ft_result.gr_data_final,ft_result.red_data_final,ft_result.ir_data_final); @@ -366,7 +364,7 @@ void aging_task(void) aging_t.ppg_error++; aging_t.fail_num++; } - PRINT("current_time - enter_time[%d]\n",current_time - enter_time); + // PRINT("current_time - enter_time[%d]\n",current_time - enter_time); }while(current_time - enter_time <= 2 * 60); PRINT("aging_t.ppg_error : %d \r\n",aging_t.ppg_error); @@ -394,7 +392,7 @@ void aging_task(void) aging_t.fail_num++; } LOS_Msleep(1000); - PRINT("current_time - enter_time[%d]\n",current_time - enter_time); + // PRINT("current_time - enter_time[%d]\n",current_time - enter_time); }while(current_time - enter_time <= 2 * 60); PRINT("gsensor失败次数 : %d \r\n",aging_t.gsensor_error); @@ -414,14 +412,17 @@ void aging_task(void) return; } uapi_get_timestampe_ss(¤t_time); + do_mag_service_check_msg(MAG_SERVICE_CMD_START_CHECK); + LOS_Msleep(1000); mmc5603_getdata(&fAzimuth,&fPitch,&fRoll); + do_mag_service_check_msg(MAG_SERVICE_CMD_STOP_CHECK); if(fAzimuth < 0) { aging_t.mag_error++; aging_t.fail_num++; } LOS_Msleep(1000); - PRINT("current_time - enter_time[%d]\n",current_time - enter_time); + // PRINT("current_time - enter_time[%d]\n",current_time - enter_time); }while(current_time - enter_time <= 2 * 60); PRINT("磁力计失败次数 : %d \r\n",aging_t.mag_error); @@ -1469,7 +1470,7 @@ void factorytest_protocol_soft_test_decode(uint8_t submode,uint8_t testitem,uint { //漏光测试 send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_LEAKLIGHT_TEST); - LOS_Msleep(200); + LOS_Msleep(500); FT_RESULTS_t ft_result = hx3695_factroy_test(LEAK_LIGHT_TEST); send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST); uint8_t databuf[12] = {0}; @@ -1521,7 +1522,11 @@ void factorytest_protocol_soft_test_decode(uint8_t submode,uint8_t testitem,uint { //地磁sensor测试 float fAzimuth,fPitch,fRoll; + + do_mag_service_check_msg(MAG_SERVICE_CMD_START_CHECK); + LOS_Msleep(500); mmc5603_getdata(&fAzimuth,&fPitch,&fRoll); + do_mag_service_check_msg(MAG_SERVICE_CMD_STOP_CHECK); uint8_t databuf[6] = {0}; @@ -1690,6 +1695,11 @@ void factorytest_protocol_soft_test_decode(uint8_t submode,uint8_t testitem,uint //查看sim卡插入状态 uint8_t send_data = 0; send_data = uapi_dev_runtime_get_cat1_simstat(); + if(!send_data) + { + LOS_Msleep(1000); + send_data = uapi_dev_runtime_get_cat1_simstat(); + } factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_SOFT_TEST, BLE_TEST_CMD_SOFT_TEST_SUB_MODE_CAT1, 0x03, @@ -1774,7 +1784,7 @@ void factorytest_protocol_soft_test_decode(uint8_t submode,uint8_t testitem,uint //获取校准信息 uint8_t send_data = 0; cat1_at_cmd("at*mrd_cdf=Q,LteCalData.nvm"); - LOS_Msleep(500); + LOS_Msleep(1000); ble_get_cat1_at_msg((char *)&send_data,1); if(send_data == '1') send_data = 1; diff --git a/code/sdk/drivers/peripheral/rotary_encoder/hx3507/hx3507.c b/code/sdk/drivers/peripheral/rotary_encoder/hx3507/hx3507.c index 40964636a..3c4250b47 100644 --- a/code/sdk/drivers/peripheral/rotary_encoder/hx3507/hx3507.c +++ b/code/sdk/drivers/peripheral/rotary_encoder/hx3507/hx3507.c @@ -602,5 +602,34 @@ int16_t get_crown_result(void) return resulttemp; } +void crown_read_id(uint8_t *id) +{ + uapi_gpio_set_dir(PIN_TYHX_SDIO,GPIO_DIRECTION_OUTPUT); + // uapi_pin_set_pull(PIN_TYHX_SDIO, (pin_pull_t)HAL_PIO_PULL_UP); + // uapi_pin_set_ie(PIN_TYHX_SDIO,HAL_PIO_IE_ENBALE); + uapi_gpio_set_val(PIN_TYHX_SDIO,GPIO_LEVEL_LOW); + + uapi_gpio_set_dir(PIN_TYHX_SCLK,GPIO_DIRECTION_OUTPUT); + // uapi_pin_set_ie(PIN_TYHX_SCLK,HAL_PIO_IE_DISABLE); + uapi_gpio_set_val(PIN_TYHX_SCLK,GPIO_LEVEL_LOW); + + LOS_Udelay(COM_DELAY); + crown_com_resync(); + for(int i=0; i<10; i++) + { + if(crown_read_reg(HX3507_DID) == 0x30) + { + TYHX_LOG("read chip id is 0x30\r\n",i); + *id = crown_read_reg(HX3507_DID); + break; + } + if(i<7)//读到ID不对, 复位通信 + { + crown_com_resync(); + } + } +} + + // #endif diff --git a/code/sdk/drivers/peripheral/rotary_encoder/hx3507/hx3507.h b/code/sdk/drivers/peripheral/rotary_encoder/hx3507/hx3507.h index 565d54d02..27581abb4 100644 --- a/code/sdk/drivers/peripheral/rotary_encoder/hx3507/hx3507.h +++ b/code/sdk/drivers/peripheral/rotary_encoder/hx3507/hx3507.h @@ -90,4 +90,7 @@ void report_zero_data_for_start_stop_flag(void); //把角度结果上报的函数 int16_t get_crown_result(void); + +void crown_read_id(uint8_t *id); + #endif //_TYHX_CROWN_CUSTOM_H_ diff --git a/code/sdk/drivers/peripheral/utils/custom_utils.c b/code/sdk/drivers/peripheral/utils/custom_utils.c index e3b2ad3c3..ace51dfeb 100644 --- a/code/sdk/drivers/peripheral/utils/custom_utils.c +++ b/code/sdk/drivers/peripheral/utils/custom_utils.c @@ -1942,14 +1942,15 @@ void mmc5603_getid(unsigned char *id) void mmc5603_getdata(float *fAzimuth,float *fPitch,float *fRoll) { - mmc5603_check(); + // mmc5603_check(); *fAzimuth = mag_service_get_fAzimuth(); *fPitch = mag_service_get_fPitch(); *fRoll = mag_service_get_fRoll(); - PRINT("Azimuth : %f, fPitch : %f , fRoll : %f \r\n",*fAzimuth,*fPitch,*fRoll); + // PRINT("Azimuth : %f, fPitch : %f , fRoll : %f \r\n",*fAzimuth,*fPitch,*fRoll); } + #include "battery_hal.h" void charge_getstate(void) {