Other Parts Discussed in Thread: HALCOGEN, DAC7574
Hello,
I have a problem with I2C module on a custom board using RM48L952 device.
Please find below the schematics and the HALCoGen configuration.




I use the following code to try to exhange data with a slave device:
i2cSetSlaveAdd(i2cREG1, xfer->address);
i2cSetDirection(i2cREG1, I2C_TRANSMITTER);
i2cSetCount(i2cREG1, xfer->payloadLen);
i2cSetMode(i2cREG1, I2C_MASTER);
i2cSetStop(i2cREG1);
i2cSetStart(i2cREG1);
i2cSend(i2cREG1, xfer->payloadLen, xfer->payload);
while(i2cIsBusBusy(i2cREG1) == true);
while(i2cIsStopDetected(i2cREG1) == 0);
i2cClearSCD(i2cREG1);
/* Simple Dealya before starting Next Block */
/* Depends on how quick the Slave gets ready */
for(delay=0;delay<1000000;delay++);
With the first attempt to write something, the SCL goes low and never return to high.
The pull-up resistors have 4.7K each.







