cancel
Showing results for 
Search instead for 
Did you mean: 

Hello, Is there any way speed up clock out frequiencies MCK and CK while keeping WS clock out frequency constant at I2S communication(STM32f446)?

MEDİZ.1
Associate II

My main concern to speed up double MCK and CK clocks frequency while keeping WS frequency constant at the I2S communication. But when i double up the I2S frequency all of the frequencies doubles up. For e.g.;

When WS is 43.71kHz, CK = 1.4MHz and MCK = 1.4MHz 

But when WS is 86kHz, CK = 2.8MHz and MCK = 2.8MHz.

I just want to double up CK and MCK without change WS.

I have tried to change Clock Registers and Init Registers of the I2S Peripheral but couldn't make it.

At the attachment there is clock tree of the I2S peripheral(STM32F446). And as i can see when i change the CK and BCK clock output frequency, the WS clock output frequency will change also. Am i right or is there any way to change speed up clock out frequiencies MCK and CK while keeping WS clock out frequency constant at I2S communication(STM32f446)?

3 REPLIES 3

In the SPI/I2S, the ratio between MCK and LRCK/WS is fixed 256, and the ratio between LRCK and BCK is given by the mode and word size.

For more flexibility, use the SAI module instead of SPI/I2S.

JW

MEDİZ.1
Associate II

I will try and will write the solution here, thanks!

Muhammed Said

MEDİZ.1
Associate II

Hi JW,

I have a further questin. If we use a MCU such sa STM32F407, can i do this? Can i double up independently?