This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MCU-PLUS-SDK-AM263X: ADC DMA read with frequency.

Part Number: MCU-PLUS-SDK-AM263X


Hi TI team!

I am trying to figure out how to implement ADC DMA transfer.

An example in adc_soc_continuous_dma.c is very puzzling.

I want to read to buffer ADC line 32 times with a specific frequency and transfer it to software.

SDK version mcu_plus_sdk_am263x_08_05_00_24

#define ADC0_EDMA_CHANNEL (DMA_TRIG_XBAR_EDMA_MODULE_10)

static uint16_t gUnusedBuffer[32];
static uint16_t gAdc0DataBuffer[32];

..........
CacheP_wb((void *)gUnusedBuffer, sizeof(gUnusedBuffer), CacheP_TYPE_ALL);
CacheP_wb((void *)gAdc0DataBuffer, sizeof(gAdc0DataBuffer), CacheP_TYPE_ALL);

.........

status = SemaphoreP_constructBinary(&gAI_mon.BinSem, 0);
DebugP_assert(SystemP_SUCCESS == status);

..........


/* Register interrupt */
intrObj.tccNum = tccAlloc0;
intrObj.cbFxn = &App_dmach0ISR;
intrObj.appData = (void *) &gEdmaTransferDoneSem;
status = EDMA_registerIntr(gEdmaHandle[0], &intrObj);
DebugP_assert(status == SystemP_SUCCESS);



App_dmaConfigure(gAdc0DataBuffer, 32, gEdmaHandle[0],
ADC0_EDMA_CHANNEL, CONFIG_ADC0_RESULT_BASE_ADDR, &tccAlloc0);

..........

ADC_clearInterruptStatus(gAdc0baseAddr,ADC_INT_NUMBER1);

```````

I am configuring RTI timer for triggering ADC conversion with a specific frequency. But the ISR App_dmach0ISR does not call.

Regards!