Skip to main content
SKris.1616
Associate III
January 27, 2020
Question

I2S master RX with DMA transfer to memory

  • January 27, 2020
  • 1 reply
  • 1036 views

Hi,

I am using STM32CubeIDE for audio application development. In my application STM32 will be working as I2S Master Receiver so I wanted to collect data continuously without losing any data.

I have configured DMA with circular mode enabled.

Looking at some document with respect to stm32, I have got an answer that when we configure circular mode then DBM bit from DMA_SxCR Register should be set and followed by second memory address. but auto code genrated by the tool does not allowing for circular transfer.

DMA_SxCR -> DBM bit is set with 0 in the DMA_SetConfig function.

Can anyone help me this ASAP.

I have to avoid data loss because it is an Audio application.

Regards,

Suresh.

This topic has been closed for replies.

1 reply

waclawek.jan
Super User
January 27, 2020

If you don't plan to change the buffers' location, you don't need to use the double-buffer mode, you can achieve a similar result simply by using both the half-complete and transfer-complete interrupts.

JW

SKris.1616
Associate III
January 27, 2020

Hi Jan,

Thanks for your suggestion.

With your suggestion I have to select use_fifo mode with half full right?

In case If i want to use two different buffer how can i do that?

Regards,

Suresh.