Keil Logo

I²C Concepts

The I²C bus is available on several 8051, 251, and C16x, XE16x, and XC20x devices and can be implemented in different ways:

  • as I²C serial port with hardware implemented master and slave functions (as in NXP 80C552, 558, and several Atmel devices).
  • as combined SPI/I²C interface with hardware implemented slave and software-based master functions (as in Analog Devices ADuC812, ADuC824 and several other devices).
  • as single bit hardware for software-based master and slave support (as in NXP 8xC75x and NXP LPC series, described in NXP AN422 available from the NXP web page).
  • using the High-Speed Serial Interface of the Infineon C16x, XE16x, and XC20x family for simulation of the I²C bus (described in the Infineon AppNote AP1626).
  • as software-based simulation of an I²C bus master device. This can be implemented in any 8051 or C16x device by using two unused I/O pins as SCL and SDA pins. These I/O pins are controlled by software only.

The following I²C Simulation applies to devices with an I²C interface.

  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.