Cannot write to ADAU1451 at more than 70KHz using I2C
I am using pic32mx470F512H as I2C master and have ADAU1451 DSP as a slave device. The max allowed frequency for ADAU 1451 is 400KHz as per datasheet.
Currently if I set the I2C clock at 70KHz it works fine and all data writes are good but if I increase the clock more than 70KHz e.g 100KHz I cannot get any output.
I have 2.2K pull up on the MCU SCL/ SDA. My PLL is set to 40MHz. I am using baudrate to change the clock frequency and can see on the scope that it does change the scl freq to whatever I change to.
Can someone suggest what the problem could be? Is there any configuration i need to do in DSP before setting up the Clock frequency higher or do I need to add any delay?
Audio Signal Processors
adau1451
i2c
pic32
SigmaDSP Audio Processors
Hello Azaman,
Do your I2C waveforms appear clean at the -1451? If their edges show ringing, try some series damping resistance (~22 ohms) at the source ends. Perhaps your uC needs to wait a little longer for the -1451's PLL to lock before starting I2C comm. We had this issue with a multiple -1701 project where the first DSP to be loaded wouldn't work until we added more delay.
Best regards,
Bob
Hi Bob,
Thanks for the answer adding more delay after PLL lock did the trick and now I can do the writes at 400KHz which has reduced the write delay significantly :).
Please log in to reply.