------Question for C232HM-DDHSL-0 Please Put your question below------
I want to know about the range of I2C Signal SCL frequency.
what is the maximum value of the I2C SCL frequency about this device?
we want to use 2.5MHz of the I2C SCL frequency for this device.
is it support?
if it is not, then could you share the spec of i2c frequency in this device?
Hello @kkang15794,
This cable is based on the FTDI FT232H IC. The datasheet for the FT232H provides the following:
Here, the TCK pin is the same as the SCL pin. So, it has a theoretical maximum of 30 MHz. Of course, the I2C spec doesn’t go nearly that high… but 2.5 MHz is certainly within the physical limitations of the chip.
I’ll also point out that the application note AN_190: C232HM MPSSE Cable in USB to I2C/SMBus interface implies that the cable in question is capable of transferring data at the I2C maximum rate of 3.4Mbps (i.e., at a clock speed higher than 2.5MHz). Be aware, though, that FTDI’s I2C interface library (libMPSSE-I2C) doesn’t appear to support any data rates other than those defined by the spec:
Therefore, I expect you’ll have to do some low-level coding to achieve an SCL frequency of 2.5MHz.
Hi @Matt_Mielke,
Thank you for reply my question.
I understand that C232HM support the maximum of SCL frequency is 30MHz theoretically.
if we want to send the i2c signal for using the c232, then we have to use the program what you give such as FTDI program.
but FTDI’S interface library only suppport SCL frequency(400kHz, 1MHz, 3.4MHz) what they define.
could you have any programable guide about the low-level coding for acheiving SCL frequency of 2.5MHz?
Hello @kkang15794,
This may be easier to achieve than I originally anticipated. Digging into the source code, it looks like you can simply assign the raw value 2500000 to the ClockRate member of the ChannelConfig structure. The value should then work it’s way through the abstraction layers: I2C_InitChannel() → FT_InitChannel() → Mid_SetClock() without issue.