I wanted to read the sensor data continuously using SPI DMA mode. But with following code able to read the data only beginning and later will not be reading continuously. Please help to solve to read data continuously.
Following code is implement using SDK examples
/* DMA init */
DMA_Init(EXAMPLE_DMA);
/* Configure the DMA channel,priority and handle. */
DMA_EnableChannel(EXAMPLE_DMA, EXAMPLE_SPI_MASTER_TX_CHANNEL);
DMA_EnableChannel(EXAMPLE_DMA, EXAMPLE_SPI_MASTER_RX_CHANNEL);
DMA_SetChannelPriority(EXAMPLE_DMA, EXAMPLE_SPI_MASTER_TX_CHANNEL, kDMA_ChannelPriority0);
DMA_SetChannelPriority(EXAMPLE_DMA, EXAMPLE_SPI_MASTER_RX_CHANNEL, kDMA_ChannelPriority0);
DMA_CreateHandle(&masterTxHandle, EXAMPLE_DMA, EXAMPLE_SPI_MASTER_TX_CHANNEL);
DMA_CreateHandle(&masterRxHandle, EXAMPLE_DMA, EXAMPLE_SPI_MASTER_RX_CHANNEL);
spi_transfer_t masterXfer;
/* Set up handle for spi master */
SPI_MasterTransferCreateHandleDMA(EXAMPLE_SPI_MASTER, &masterHandle, SPI_MasterUserCallback, NULL, &masterTxHandle,
&masterRxHandle);
/* Start master transfer */
masterXfer.txData = (uint8_t *)&masterTxData;
masterXfer.rxData = (uint8_t *)&masterRxData;
masterXfer.dataSize = TRANSFER_SIZE * sizeof(masterTxData[0]);
masterXfer.configFlags = kSPI_FrameAssert;
if (kStatus_Success != SPI_MasterTransferDMA(EXAMPLE_SPI_MASTER, &masterHandle, &masterXfer))
{
PRINTF("There is an error when start SPI_MasterTransferDMA \r\n ");
}