43 lines
1.4 KiB
C
43 lines
1.4 KiB
C
#ifndef __SDAC_T_H
|
|
#define __SADC_T_H
|
|
|
|
#define SADC_DEBUG
|
|
#define SADC_TEMPERATURE
|
|
// #define SADC_TIME_CAL
|
|
|
|
//sleep time = cnt*1us, the max delay is 171 s
|
|
void usleep(uint32_t cnt);
|
|
/*
|
|
* * if return -1, discard the part;
|
|
* if return 0, return the dc calibration code(1024 times)
|
|
*/
|
|
int32_t sadc_dc_calibration_task(int32_t *dc_calib);
|
|
/*
|
|
* if return -1, discard the part;
|
|
* if return 0, sadc_arvg return the sadc voltage code(1024 times)
|
|
*/
|
|
int32_t sadc_ref_voltg_task(int32_t* sadc_arvg, int32_t* input_dc, int32_t* input_voltg);
|
|
|
|
/*
|
|
* dc_calib is the dc calibration when gain is 1/5
|
|
* ref_voltg is the input voltg(1.2v) when gain is 1/5
|
|
* ref_sadc is the sadc output when gain is 1/5 and input voltg is 1.2v
|
|
*/
|
|
int8_t atb_for_ical(uint8_t *bias_cal, int32_t dc_calib, int32_t ref_voltg, int32_t ref_sadc);
|
|
int32_t atb_for_adcref(uint8_t *trim_adcref, int32_t dc_calib, int32_t ref_voltg, int32_t ref_sadc);
|
|
int8_t dcdc_1p2v_test(uint8_t *trim_dcdc, int32_t dc_calib, int32_t ref_voltg, int32_t ref_sadc);
|
|
int32_t at_vbg_test(int32_t dc_calib, int32_t ref_voltg, int32_t ref_sadc);
|
|
int32_t vtemp_test(int16_t *vtemp, int32_t dc_calib, int32_t ref_voltg, int32_t ref_sadc);
|
|
|
|
/*
|
|
* if return -1, discard the part;
|
|
* if return 0, reset the cfg_dly and f_h.
|
|
*/
|
|
int32_t rx_adc_eoc_meta_task(uint8_t *cfg_dly, uint8_t *f_h);
|
|
/*
|
|
* used for sadc ftm test
|
|
*/
|
|
void sadc_ftm(void);
|
|
|
|
#endif
|