Skip to main content
Associate
December 6, 2024
Question

I2S read write at the same time for STM32F429IGT6

  • December 6, 2024
  • 2 replies
  • 571 views

Hi STM,

I'm working on coding I2S read/write at the same time with STM32F429IGT6.
I enable I2S write with HAL_I2S_Transmit_DMA and Audio playback successfully.
I could also scope the signal from the Sdout pin.

However, if I enable I2S read with HAL_I2S_Receiver_DMA at the same time.
The RX_flag will always show up Busy and play back also can't work.

Do you have the sample code for the I2S read/write at the same time?

2 replies

ChenkaiYiAuthor
Associate
December 9, 2024

Hi Team,

This application is for audio echo cancellation.

I used I2S SDIN and SDOUT with the same clock(BCLK and LRCLK).

The TX_DMA is working and Playback on amp is normally.

I could also scope the data output from SDOUT of audio amp.

But RX_DMA can't work correctly.

Do you have the sample code for the it?

Technical Moderator
December 9, 2024

Hello @ChenkaiYi ,

Check the buffer size and make sure that the DMA data width is set to "Word".

You can try I2S example within STM32CubeF4 package:

STM32CubeF4/Projects/STM324xG_EVAL/Examples/I2S/I2S_Audio at master · STMicroelectronics/STM32CubeF4 · GitHub

In order to give better visibility on the answered topics, please click on 'Best answer' on the reply which solved your issue or answered your question. Thanks