FX3 - Add delay on I2C clock before 9th clock pulse?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hello all,

I am attempting to communicate with an I2C slave using the FX3 I2C module, but I am not getting my acknowledge on the 9th bit of the address match. I have programmed and 8-bit micro with an I2C module to do the same thing, and I get the acknowledge. The main difference between the waveform from the FX3 and the micro is the time between the first 8 pulses and the 9th. On the micro, there is a short delay before the 9th pulse goes out. Is there any way that I can add this delay on the FX3? Do I have to bit bang? I have already looked through cyu3i2c.c but cannot find anything related. Any help is MUCH appreciated!

0 Likes
1 Solution
YangyangC_06
Employee
Employee
750 replies posted 500 replies posted 250 replies posted

Hi Connor,

You could modify cyu3i2C.c, and then build a new library using this new cyu3i2c.c file. Replace the previous library file with your new one.

View solution in original post

0 Likes
3 Replies
YangyangC_06
Employee
Employee
750 replies posted 500 replies posted 250 replies posted

Hi Connor,

You could modify cyu3i2C.c, and then build a new library using this new cyu3i2c.c file. Replace the previous library file with your new one.

0 Likes
Anonymous
Not applicable

Right, I understand how C programs work, but where inside cyu3i2c.c can I had a delay between SCL clock pulses? Perhaps add a delay after a start conditon or anything?

0 Likes

I am sorry but could you please capture the I2Cwaveform to explain the mismatch. Since I have not heared this kind of requirment.

0 Likes