The I?C controller provides a 14-bit time-out counter to handle I2C bus hang-up. If the I2C bus is hung up, it causes I2CSTATUS and the flag SI not updated for a period, and the 14-bit time-out counter may overflow and acknowledge CPU the I2C interrupt. Refer to the following figure for the 14-bit time-out counter. User may write 1 to clear TIF to 0 and reset I?C.
For example, if Pclk is 1 MHz, the time-out value is 1us*214= 16384us.
How to handle I2C bus hang-up in slave mode?
-
- Information
-
Who is online
Users browsing this forum: No registered users and 1 guest