#include "pah831x_verify_cal_v3.h"\r
\r
\r
-void LOG_PRINT(const char* format, ...);\r
+void printf(const char* format, ...);\r
/*============================================================================\r
TYPE DEFINITIONS\r
============================================================================*/\r
{\r
\r
//pxi_nrf_i2c_831x_write(addr, &data,1);\r
- //LOG_PRINT("I2C_W= 0x%2x ,0x%2x\n",addr,data);\r
+ //printf("I2C_W= 0x%2x ,0x%2x\n",addr,data);\r
uint8_t i = 0 ;\r
uint8_t data_read = 0 ;\r
uint8_t data_out = 0 ;\r
{\r
pah831x_comm_read(addr,&data_read);\r
data_out = (data_read&0x0F)+ (data&0xF0);\r
- pxi_nrf_i2c_write(0x40, addr, &data_out, 1);\r
-// LOG_PRINT("I2C_W= 0x%2x ,0x%2x\n",addr,data_out);\r
+ // pxi_nrf_i2c_write(0x40, addr, &data_out, 1);\r
+ pah_comm_i2c_write( addr, &data_out, 1);\r
+// printf("I2C_W= 0x%2x ,0x%2x\n",addr,data_out);\r
return true;\r
}\r
}\r
}\r
\r
- pxi_nrf_i2c_write(0x40, addr, &data, 1);\r
+ // pxi_nrf_i2c_write(0x40, addr, &data, 1);\r
+ pah_comm_i2c_write( addr, &data, 1);\r
return true;\r
}\r
\r
static bool pah831x_comm_read(uint8_t addr, uint8_t *data)\r
{\r
//pxi_nrf_i2c_831x_read(addr, data,1);\r
- pxi_nrf_i2c_read(0x40, addr, data, 1);\r
+ // pxi_nrf_i2c_read(0x40, addr, data, 1);\r
+ pah_comm_i2c_read(addr, data, 1);\r
return true;\r
}\r
\r
uint16_t read_index = 0 ;\r
while(read_num>250)\r
{\r
- pxi_nrf_i2c_read(0x40, addr, data+read_index, 250);\r
+ // pxi_nrf_i2c_read(0x40, addr, data+read_index, 250);\r
+ pah_comm_i2c_read(addr, data+read_index, 250);\r
read_index+=250;\r
read_num = read_num- 250;\r
}\r
- pxi_nrf_i2c_read(0x40, addr, data+read_index, read_num);\r
+ // pxi_nrf_i2c_read(0x40, addr, data+read_index, read_num);\r
+ pah_comm_i2c_read(addr, data+read_index, read_num);\r
return true;\r
}\r
\r
LOS_Mdelay(delay_ms);\r
}\r
\r
-void LOG_PRINT(const char* format, ...)\r
-{\r
- static char dest[256];\r
- va_list argptr;\r
- int char_num = 0;\r
+// void printf(const char* format, ...)\r
+// {\r
+// // static char dest[256];\r
+// // va_list argptr;\r
+// // int char_num = 0;\r
\r
- va_start(argptr, format);\r
- char_num = vsprintf(dest, format, argptr);\r
- va_end(argptr);\r
-\r
- pxi_nrf_uart_transmit((uint8_t*)dest, (uint16_t)(char_num + 1));\r
-}\r
+// // va_start(argptr, format);\r
+// // char_num = vsprintf(dest, format, argptr);\r
+// // va_end(argptr);\r
+// printf(format);\r
+// // pxi_nrf_uart_transmit((uint8_t*)dest, (uint16_t)(char_num + 1));\r
+// }\r
\r
static void pah831x_startup(void)\r
{\r
*id= data ;\r
uint8_t version = 0 ;\r
pah831x_comm_read(0x02,&version);\r
- LOG_PRINT("Product_ID = 0x%x ,version 0x%x\n",data,version);\r
+ printf("Product_ID = 0x%x ,version 0x%x\n",data,version);\r
}\r
\r
uint32_t get_pah813x_verify_reg_version(void)\r
}\r
} \r
} \r
- //LOG_PRINT("channel_en_ch_real = %d ,channel_en_bit 0x%x\n",channel_en_ch_real,channel_en_bit);\r
- //LOG_PRINT("channel_en_num = %d ,channel_en_bit_out 0x%x\n",*channel_en_num,*channel_en_bit_out);\r
+ //printf("channel_en_ch_real = %d ,channel_en_bit 0x%x\n",channel_en_ch_real,channel_en_bit);\r
+ //printf("channel_en_num = %d ,channel_en_bit_out 0x%x\n",*channel_en_num,*channel_en_bit_out);\r
}\r
\r
static bool pah831x_factory_test_INT(uint16_t *int1_l, uint16_t *int1_h,uint16_t *int2_l, uint16_t *int2_h)\r
//pah831x_update_flag();\r
pah831x_delay_ms(200);\r
//*int_l = Get_Voltage(PAH8SERIES_INT_AD,100);\r
- *int1_l=nrf_gpio_pin_read(GPIO_INPUT_PIN_INT1);\r
+ // *int1_l=nrf_gpio_pin_read(GPIO_INPUT_PIN_INT1);\r
//*int2_h=nrf_gpio_pin_read(GPIO_INPUT_PIN_INT2);\r
\r
pah831x_write_reg_array(pah831x_verify_int_test_2_array,sizeof(pah831x_verify_int_test_2_array)/2);\r
//pah831x_update_flag();\r
pah831x_delay_ms(200);\r
//*int_h = Get_Voltage(PAH8SERIES_INT_AD,100);\r
- *int1_h=nrf_gpio_pin_read(GPIO_INPUT_PIN_INT1);\r
+ // *int1_h=nrf_gpio_pin_read(GPIO_INPUT_PIN_INT1);\r
// *int2_l=nrf_gpio_pin_read(GPIO_INPUT_PIN_INT2);\r
//// \r
- LOG_PRINT("INT1-Low %d\n",*int1_l);\r
- LOG_PRINT("INT1-High %d\n",*int1_h);\r
- // LOG_PRINT("INT2-Low %d\n",*int2_l);\r
- // LOG_PRINT("INT2-High %d\n",*int2_h); \r
+ printf("INT1-Low %d\n",*int1_l);\r
+ printf("INT1-High %d\n",*int1_h);\r
+ // printf("INT2-Low %d\n",*int2_l);\r
+ // printf("INT2-High %d\n",*int2_h); \r
\r
//if((*int1_l==0)&&(*int1_h==1)&&(*int2_l==0)&&(*int2_h==1))\r
if((*int1_l==0)&&(*int1_h==1))\r
{\r
adc_value = 0 ; \r
}\r
- LOG_PRINT("CH_%c_ppg%d ,(min ,value,max)= ( %d ,%d , %d) \n",((read_index_1-1)/4)+65,ppg_1_2,g_state.test_spec_array[read_index_1][1],adc_value,g_state.test_spec_array[read_index_1][2]);\r
+ printf("CH_%c_ppg%d ,(min ,value,max)= ( %d ,%d , %d) \n",((read_index_1-1)/4)+65,ppg_1_2,g_state.test_spec_array[read_index_1][1],adc_value,g_state.test_spec_array[read_index_1][2]);\r
if(( adc_value > g_state.test_spec_array[read_index_1][2])||(adc_value < g_state.test_spec_array[read_index_1][1]))\r
{\r
verify_result = false ;\r
}\r
}else\r
{ \r
- LOG_PRINT("CH_%c_ppg%d_on ,(min ,value,max)= ( %d ,%d , %d) \n",((read_index_1-1)/4)+65,ppg_1_2,g_state.test_spec_array[read_index_1][1],adc_value_on,g_state.test_spec_array[read_index_1][2]);\r
+ printf("CH_%c_ppg%d_on ,(min ,value,max)= ( %d ,%d , %d) \n",((read_index_1-1)/4)+65,ppg_1_2,g_state.test_spec_array[read_index_1][1],adc_value_on,g_state.test_spec_array[read_index_1][2]);\r
if(( adc_value_on > g_state.test_spec_array[read_index_1][2])||(adc_value_on < g_state.test_spec_array[read_index_1][1]))\r
{\r
verify_result = false ;\r
} \r
if(g_state.test_spec_array[read_index_2][0])\r
{\r
- LOG_PRINT("CH_%c_ppg%d_off ,(min ,value,max)= ( %d ,%d , %d) \n",((read_index_1-1)/4)+65,ppg_1_2,g_state.test_spec_array[read_index_2][1],adc_value_off,g_state.test_spec_array[read_index_2][2]);\r
+ printf("CH_%c_ppg%d_off ,(min ,value,max)= ( %d ,%d , %d) \n",((read_index_1-1)/4)+65,ppg_1_2,g_state.test_spec_array[read_index_2][1],adc_value_off,g_state.test_spec_array[read_index_2][2]);\r
if(( adc_value_off > g_state.test_spec_array[read_index_2][2])||(adc_value_off < g_state.test_spec_array[read_index_2][1]))\r
{\r
verify_result = false ;\r
*touch = touch_value ;\r
if(g_state.test_spec_array[0][0])\r
{\r
- LOG_PRINT("CH T ,(min ,value,max)= ( %d ,%d , %d) \n",g_state.test_spec_array[0][1],*touch,g_state.test_spec_array[0][2]);\r
+ printf("CH T ,(min ,value,max)= ( %d ,%d , %d) \n",g_state.test_spec_array[0][1],*touch,g_state.test_spec_array[0][2]);\r
if(( *touch > g_state.test_spec_array[0][2])||(*touch < g_state.test_spec_array[0][1]))\r
{\r
verify_result = false ;\r
if(g_state.test_spec_array[i][0])\r
{\r
\r
- LOG_PRINT("CH_%c_ppg_on ,(min ,value,max)= ( %d ,%d , %d) \n",i+65,g_state.test_spec_array[i][1],adc_value,g_state.test_spec_array[i][2]);\r
+ printf("CH_%c_ppg_on ,(min ,value,max)= ( %d ,%d , %d) \n",i+65,g_state.test_spec_array[i][1],adc_value,g_state.test_spec_array[i][2]);\r
if(( adc_value > g_state.test_spec_array[i][2])||(adc_value < g_state.test_spec_array[i][1]))\r
{\r
verify_result = false ;\r
pah831x_comm_write(0x7A, 0x01);\r
pah831x_comm_burstread(0x7b, data_buff, fifo_read_num_per_sample*5);\r
pah831x_comm_write(0x7A, 0x00);\r
- LOG_PRINT("fifo_read_num_per_sample =%d \n",fifo_read_num_per_sample);\r
+ printf("fifo_read_num_per_sample =%d \n",fifo_read_num_per_sample);\r
for(i = 0; i < fifo_read_num_per_sample; i++)\r
{\r
ECG_ADC_data[i]=cvt24bit((uint32_t)(data_buff[i * 5 + 4]<<16)+(data_buff[i * 5 + 3]<<8)+(data_buff[i * 5 + 2]));\r
\r
for(j = 15; j < fifo_read_num_per_sample; j++)\r
{\r
- LOG_PRINT("ECG_ADC_data[%d] =%d \n",j,ECG_ADC_data[j]);\r
+ printf("ECG_ADC_data[%d] =%d \n",j,ECG_ADC_data[j]);\r
DATA_MAX = (ECG_ADC_data[j] >= DATA_MAX) ? ECG_ADC_data[j] : DATA_MAX;\r
DATA_MIN = (ECG_ADC_data[j] <= DATA_MIN) ? ECG_ADC_data[j] : DATA_MIN;\r
}\r
\r
ECG_mV_VPP = (ECG_mV_MAX- ECG_mV_MIN);\r
\r
- LOG_PRINT("ECG_mV_MAX =%f ,ECG_mV_MIN =%f ,ECG_mV_VPP = %f,\n",ECG_mV_MAX,ECG_mV_MIN,ECG_mV_VPP);\r
+ printf("ECG_mV_MAX =%f ,ECG_mV_MIN =%f ,ECG_mV_VPP = %f,\n",ECG_mV_MAX,ECG_mV_MIN,ECG_mV_VPP);\r
\r
pah831x_delay_ms(stop_time_ms);\r
pah831x_powerdown();\r
pah831x_comm_write(0x7A, 0x01);\r
pah831x_comm_burstread(0x7b, data_buff, fifo_read_num_per_sample*5);\r
pah831x_comm_write(0x7A, 0x00);\r
- LOG_PRINT("fifo_read_num_per_sample =%d \n",fifo_read_num_per_sample);\r
+ printf("fifo_read_num_per_sample =%d \n",fifo_read_num_per_sample);\r
for(i = 0; i < fifo_read_num_per_sample; i++)\r
{\r
ECG_ADC_data[i]=cvt24bit((uint32_t)(data_buff[i * 5 + 4]<<16)+(data_buff[i * 5 + 3]<<8)+(data_buff[i * 5 + 2]));\r
\r
for(j = 15; j < fifo_read_num_per_sample; j++)\r
{\r
- LOG_PRINT("ECG_ADC_data[%d] =%d \n",j,ECG_ADC_data[j]);\r
+ printf("ECG_ADC_data[%d] =%d \n",j,ECG_ADC_data[j]);\r
DATA_MAX = (ECG_ADC_data[j] >= DATA_MAX) ? ECG_ADC_data[j] : DATA_MAX;\r
DATA_MIN = (ECG_ADC_data[j] <= DATA_MIN) ? ECG_ADC_data[j] : DATA_MIN;\r
}\r
ECG_mV_MAX=ADC_to_mV(DATA_MAX);\r
ECG_mV_MIN=ADC_to_mV(DATA_MIN);\r
\r
- LOG_PRINT("ECG_mV_MAX =%f ,ECG_mV_MIN =%f \n",ECG_mV_MAX,ECG_mV_MIN);\r
+ printf("ECG_mV_MAX =%f ,ECG_mV_MIN =%f \n",ECG_mV_MAX,ECG_mV_MIN);\r
\r
pah831x_delay_ms(stop_time_ms);\r
pah831x_powerdown();\r
switch(test_mode)\r
{\r
case Check_Brightness_PCB_Only_test_1_Side_A_2_LED:\r
- LOG_PRINT("//----Check_Brightness_PCB_Only_test_1_Side_A_2_LED--// \n");\r
+ printf("//----Check_Brightness_PCB_Only_test_1_Side_A_2_LED--// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case Check_Brightness_PCB_Only_test_2_Side_B_2_LED:\r
- LOG_PRINT("//----Check_Brightness_PCB_Only_test_2_Side_B_2_LED--// \n");\r
+ printf("//----Check_Brightness_PCB_Only_test_2_Side_B_2_LED--// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case Check_Brightness_PCB_Only_test_1_Side_A_1_LED:\r
- LOG_PRINT("//----Check_Brightness_PCB_Only_test_1_Side_A_1_LED--// \n");\r
+ printf("//----Check_Brightness_PCB_Only_test_1_Side_A_1_LED--// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case Check_Brightness_PCB_Only_test_2_Side_B_1_LED:\r
- LOG_PRINT("//----Check_Brightness_PCB_Only_test_2_Side_B_1_LED--// \n");\r
+ printf("//----Check_Brightness_PCB_Only_test_2_Side_B_1_LED--// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case INT_TEST:\r
- LOG_PRINT("//----INT_TEST----// \n");\r
+ printf("//----INT_TEST----// \n");\r
verify_result = pah831x_factory_test_INT(&int1_low,&int1_high,&int2_low,&int2_high);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case Check_Brightness_with_mechanical_cover_test_1_Side_A_2_LED:\r
- LOG_PRINT("//----Check_Brightness_with_mechanical_cover_test_1_Side_A_2_LED----// \n");\r
+ printf("//----Check_Brightness_with_mechanical_cover_test_1_Side_A_2_LED----// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case Check_Brightness_with_mechanical_cover_test_2_Side_B_2_LED:\r
- LOG_PRINT("//----Check_Brightness_with_mechanical_cover_test_2_Side_B_2_LED----// \n");\r
+ printf("//----Check_Brightness_with_mechanical_cover_test_2_Side_B_2_LED----// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case Check_Brightness_with_mechanical_cover_test_1_Side_A_1_LED:\r
- LOG_PRINT("//----Check_Brightness_with_mechanical_cover_test_1_Side_A_1_LED----// \n");\r
+ printf("//----Check_Brightness_with_mechanical_cover_test_1_Side_A_1_LED----// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case Check_Brightness_with_mechanical_cover_test_2_Side_B_1_LED:\r
- LOG_PRINT("//----Check_Brightness_with_mechanical_cover_test_2_Side_B_1_LED----// \n");\r
+ printf("//----Check_Brightness_with_mechanical_cover_test_2_Side_B_1_LED----// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n");\r
+ printf("TEST Fail \n");\r
}\r
break;\r
case Light_Leak_Test_2_LED:\r
- LOG_PRINT("//----Light_Leak_Test_2_LED----// \n");\r
+ printf("//----Light_Leak_Test_2_LED----// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n\n");\r
+ printf("TEST Fail \n\n");\r
} \r
break;\r
case Light_Leak_Test_1_LED:\r
- LOG_PRINT("//----Light_Leak_Test_1_LED----// \n");\r
+ printf("//----Light_Leak_Test_1_LED----// \n");\r
verify_result = pah831x_factory_test_Check_ADC(test_mode ,&touch, adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n\n");\r
+ printf("TEST Fail \n\n");\r
} \r
break;\r
case Check_PPG_AFE_BUILT_IN_TEST:\r
- LOG_PRINT("//----Check_PPG_AFE_BUILT_IN_TEST----// \n");\r
+ printf("//----Check_PPG_AFE_BUILT_IN_TEST----// \n");\r
verify_result = pah831x_factory_test_Check_PPG_AFE_BUILT_IN(adc_data);\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n\n");\r
+ printf("TEST Fail \n\n");\r
} \r
break;\r
case Check_ECG_WAVEFORM_TEST:\r
- LOG_PRINT("//----ECG_Waveform_Test----// \n");\r
+ printf("//----ECG_Waveform_Test----// \n");\r
verify_result = pah831x_factory_test_Check_ECG_Waveform(1000);//set delay time ms for LL PIN Test\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n\n");\r
+ printf("TEST Fail \n\n");\r
} \r
break;\r
case Check_ECG_DC_TEST:\r
- LOG_PRINT("//----ECG_DC_Test----// \n");\r
+ printf("//----ECG_DC_Test----// \n");\r
verify_result = pah831x_factory_test_Check_ECG_DC(1000);//set delay time ms for LL PIN Test\r
if(verify_result) \r
{\r
- LOG_PRINT("TEST Pass \n");\r
+ printf("TEST Pass \n");\r
}else\r
{\r
- LOG_PRINT("TEST Fail \n\n");\r
+ printf("TEST Fail \n\n");\r
} \r
break;\r
case Factory_Test_Stop:\r
- LOG_PRINT("//----Factory_Test_Stop----// \n");\r
+ printf("//----Factory_Test_Stop----// \n");\r
pah831x_powerdown();\r
\r
break; \r
default:\r
- LOG_PRINT("Not implemented yet \n");\r
+ printf("Not implemented yet \n");\r
}\r
\r
pah831x_delay_ms(150);\r