This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

I2C session abruptly ends

Hi!

I'm working on LPC1857 controller and I required to test the i2c code I wrote. As far as I can see,as per data-sheet I've got all right with code. While the application is run, i2c is disabled.

I debugged and found that while clearing only the i2c-interrupt flag the entire control register for i2c is cleared, thereby disabling i2c.

>LPC_I2C0->CONCLR |= 0X00000008; // clear i2c interrupt only

Hope I made my doubt clear.

Thanks for anyone suggest anything to avoid this problem.

Parents
  • When single-stepping, the I2C controller often still operates at full-frequency.

    So if the program works when single-stepping but not when running full-speed, then you might write to an I2C register before the previous operation has finished. When single-stepping, you add extra time between the instructions of your main loop, giving the I2C interface enough time.

Reply
  • When single-stepping, the I2C controller often still operates at full-frequency.

    So if the program works when single-stepping but not when running full-speed, then you might write to an I2C register before the previous operation has finished. When single-stepping, you add extra time between the instructions of your main loop, giving the I2C interface enough time.

Children
No data