void drv_adc_init();
uint32_t drv_adc_read_adc(adcData_t *data);
-uint32_t drv_adc_read_houtifbk(adcData_t *data);
uint32_t adc_get_port_val(uint32_t *config, uint32_t num_channels,
uint32_t *values);
// Mutex for AIN read control
xSemaphoreHandle adcMutex_ADC;
-// Mutex for HOUTIFBK control
-xSemaphoreHandle adcMutex_HOUTIFBK;
void drv_adc_init()
{
xSemaphoreTake(adcSemaphore_ADC2GRP1, 0);
adcMutex_ADC = xSemaphoreCreateMutex();
- adcMutex_HOUTIFBK = xSemaphoreCreateMutex();
// Low level init
adcInit();
return result;
}
-uint32_t drv_adc_read_houtifbk(adcData_t *data)
-{
- xSemaphoreTake(adcMutex_HOUTIFBK, portMAX_DELAY);
- uint32_t result = drv_adc_generic_read(
- adcREG2,
- adcGROUP1,
- adcSemaphore_ADC2GRP1,
- data
- );
- xSemaphoreGive(adcMutex_HOUTIFBK);
- return result;
-}
-
uint32_t adc_get_port_val(uint32_t *config, uint32_t num_channels,
uint32_t *values)
{