Word Select Frequency when I2S format is setting to PCM
Posted on February 11, 2014 at 18:18
Hello,
Today, we are using a STM32F405VG which is connected through I2S to a PCM interface of a Bluetooth Controller. The STM32F405VG and the Bluetooth Controller exchange audio data through this I2S with audio frequency = 8 kHz.
In case of the PCM interface of the Bluetooth Controller is master and I2S on STM32 is configured as follow, the audio is OK :
I2S_InitStructure.I2S_Mode = I2S_Mode_SlaveTx;
I2S_InitStructure.I2S_Standard = I2S_Standard_PCMShort;
I2S_InitStructure.I2S_DataFormat = I2S_DataFormat_16bextended;
I2S_InitStructure.I2S_MCLKOutput = I2S_MCLKOutput_Disable;
I2S_InitStructure.I2S_AudioFreq = 8000;
I2S_InitStructure.I2S_CPOL = I2S_CPOL_Low;
I2S_Init(I2S_PCM_CSR_SEL, &I2S_InitStructure);
After checking, the frequency of the Word Select Signal is setting to 8 kHz.
But in case of the PCM interface of the Bluetooth Controller is slave and I2S on STM32 is configured as follow, the audio is NOT OK:
I2S_InitStructure.I2S_Mode = I2S_Mode_MasterTx;
I2S_InitStructure.I2S_Standard = I2S_Standard_PCMShort;
I2S_InitStructure.I2S_DataFormat = I2S_DataFormat_16bextended;
I2S_InitStructure.I2S_MCLKOutput = I2S_MCLKOutput_Disable;
I2S_InitStructure.I2S_AudioFreq = 8000;
I2S_InitStructure.I2S_CPOL = I2S_CPOL_Low;
I2S_Init(I2S_PCM_CSR_SEL, &I2S_InitStructure);
After checking, the frequency of the Word Select Signal is to 16 kHz.
Could you please give us a way to have audio OK when I2S of STM32 is Master?
Thank you
#i2s-pcm-format #poor-quality-of-documentation
