Performs ATOP DAC R2R loopback self-test using PDL functions.
This function initializes the DAC/ADC peripherals once and then tests multiple DAC values in a loop. For each value, it sets the DAC output, triggers ADC conversion, reads the result, and validates against the expected value with specified accuracy tolerance.
static const uint32_t dac_test_values[] = {
0U,
2048U,
4095U
};
#define DAC_TEST_NUM_VALUES (sizeof(dac_test_values) / sizeof(dac_test_values[0]))
#define DAC_TEST_ACCURACY 50U
Cy_PPCA_Enable(PPCA_CNFG);
dac_test_values, DAC_TEST_NUM_VALUES,
DAC_TEST_ACCURACY);
{
}
uint8_t SelfTests_ATOP_DAC(uint32_t adcChannel, uint32_t dacSlice, const uint32_t *dacVals, uint32_t numVals, uint16_t accuracy)
Performs ATOP DAC R2R loopback self-test using PDL functions.
#define ATOP_ADC_CHANNEL_0
ADC channel 0 (ADC_GRP_0)
Definition SelfTest_ATOP_DAC.h:73
#define ATOP_DAC_SLICE_0
DAC slice 0 (DAC_R2R_0 in DCSG_GRP_0)
Definition SelfTest_ATOP_DAC.h:67
#define OK_STATUS
Test passed / operation completed successfully.
Definition SelfTest_common.h:93