Dear Dialog Team,
I am working on a i2c project with the BLE module, I am trying to develop an i2c_core driver to build on it, I started with the sdk i2c_eeprom project however
when writing the i2c_tar_reg the start condition is not generated, when i write to the cmd register then it generates a start sends the byte and generates a stop condition too.
Is this intended to be like this?
Best regards,
Laszlo
Keywords:
Device:
Hi Lazlo.fabian,
The I2C controller issues a START condition when there is data into the FIFO or to the I2C_DATA_CMD_REG and issues a STOP condition when the transmition is over. From the I2C_TAR_REG you can configure whether the i2c controller will generate an START condition or a general call.
Thanks MT_dialog
Dear Dialog Team,
Thank you for the answer, now its clear. Meantime I've managed to debug the problem and the behaviour, Writing the TAR will not generate a start condition, just when data in the FIFO, as you said. My problem was that the slave was not acknowledging the address(soldering issues) and because of that no actual data was sent, instead a stop condition was issued. Once the slave acknowledged the address, everything worked as expected.
Best regards,
Laszlo