I2C bus Definition The I2C (Inter-IC) bus is a bi-directional two-wire serial bus that provides a communication link between integrated circuits (ICs). Phillips introduced the I2C bus 20 years ago for mass-produced items such as televisions, VCRs, and audio equipment. Today, I2C is the de-facto solution for embedded applications. There are three data transfer speeds for the I2C bus: standard, fast-mode, and high-speed mode. Standard is 100 Kbps. Fast-mode is 400 Kbps, and high-speed mode supports speeds up to 3.4 Mbps. All are backward compatible. The I2C bus supports 7-bit and 10-bit address space devices and devices that operate under different voltages. Portfolio As Philips Semiconductors we invented the I²C bus, leading the world in these bus devices. Now as NXP we continue our leading position to offer you a vast portfolio of I²C logic products used for I²Cbus communication and protocol conversion. Our I²C logic products are ideal for many systems using SMBus, AdvancedTCA (ATCA) IPMI, and PMBus. You can also choose from a comprehensive offering of other semiconductor ICs with I²C-bus interfaces. Key applications The I²C-bus is used in virtually every application. I²C I/O expanders are used for keyboard/pad input or controlling LED status lights. Adding UART / IrDA functionality, to a cellular phone for example, is simple via the I²C bus with a choice of bridge ICs. For numerous cellular handsets, LED blinkers and dimmers can control keypad, fun lighting, and other status LEDs. These ICs can also be used for more advanced status or illumination control while offloading the host processor in LCD displays. LCD segment drivers or LCD matrix drivers with an I²C interface are ideal for displays in cordless telephone handsets. I²C serial EEPROM can be used to store preset information in an MP3 player or large LCD display, where PAL or NTSC settings during manufacture are set using I²C DIP switches. For environmental sensing I²C temperature sensors are used to monitor local temperatures. This is particularly important in wireless basestations, where I²C repeaters / hubs / extenders are also used, to isolate capacitance from the backplane. Below are just some of the applications where you can use the different categories of I²C-bus devices. • • • • • • • • Basestation - discretes focus / Transceiver board Cordless telephone Digital media adapters Intelligent washing machine LCD display - discretes focus Nexperia personal media player PCI analog/DVB-T stereo TV receiver UMA-Enabled GSM/GPRS/EDGE VAS Phone (6100) I2C/SMBus serial EEPROMs Introduction Small size serial memories (RAM and EEPROM) are fairly common and widely used in many different applications. EEPROMs are particularly useful in applications where data retention during power-off is essential. Such applications include, but are not limited to, meter readings, electronic key, product identification number, and Serial Presence Detect (SPD) on DIMMs. A common pinning is used for these serial memories because their functionality is very similar. The common pinout was selected to allow interchangeability. EEPROMs store data (2Kbits organized in 256 X 8 in the PCF8582C-2 for example), such as set points, temperature, alarms, and DIMM information for a guaranteed minimum storage time of ten years in the absence of power. EEPROMs can change values up to 1,000,000 times and have an infinite number of read cycles, while consuming only 10 micro amperes of current. Features The PCA8582C-2 is pin and address compatible with the PCF8570 and PCF8581. The PCF85102C-2 is identical to the PCF8582C-2, with pin 7 (Programming time control output) as a no connect, to allow it to be used in competitors' sockets, since PTC should be left floating or held at VCC. The PCF85103C-2 is identical to the PCF8582C-2 except that the fixed I2C address is different, allowing up to eight of each device to be used on the same I2C bus. The PCA9558 and PTN3500/01 are general purpose I/O expanders with embedded 2k-bit EEPROMs. Addresses and data are transferred serially via a two-wire bi-directional bus (I2C-bus). The built-in word address register is incremented automatically after each written or read data byte. All bytes can be read in a single operation. Up to 8 bytes can be written in one operation, reducing the total write time per byte. The 512-byte, 1024-byte, and 2048-byte EEPROMs use the programmable address (Ax or Block#) to either select the slave address or one of the 256 word pages (e.g., the PCF8594C-2 has two addressable pages with up to four devices allowed on the same I2C bus while the PCF85116-3 has eight addressable pages but only one device is allowed on the same I2C bus). RAM Capacity and Organization • The PCF8570 is organized as 256 words of 8-bytes EEPROM Capacity and Organization • • • • • The PCA8581/8581C is organized as 128 words of 8-bytes The PCF8582C-2/102C-2 and 103C-2 are organized as 256 words of 8-bytes The PCF8594C-2 is organized as 512 words of 8-bytes in two 256 word pages The PCF8598C-2 is organized as 1024 words of 8-bytes in four 256 word pages The PCF85116-3 is organized as 2048 words of 8-bytes in eight 256 word pages RAM/EEPROM Features • • • • Internal non-volatile registers (except PCA8570) with a minimum of 1,000,000 write cycles at Tambient = 22oC Low power CMOS devices Non volatile storage from 128x8-bit to 2048x8-bit Write operation per byte or per 8-byte page • • • • • Read operation can be sequential or random Internal timer for writing operation (no external components required) Internal Power On Reset High reliability by using redundant EEPROMS cells Offered in 8-pin DIP (N) and SO (D) packages Products RAM Selection Guide EEPROM Selection Guide I2C/SMBus Serial EEPROMs Click , , for datasheet. Click or for more or less detail. indicate product status. Click for more detail. PCA24S08 1024 x 8-Bit CMOS EEPROM with Access Protection PCA8581 128 x 8-Bit EEPROM with I2C Bus Interface PCA8581C 128 x 8-Bit EEPROM with I2C Bus Interface PCF8570 256 x 8-Bit Static Low-Voltage RAM with I2C Bus Interface PCF8582C-2 256 x 8-Bit CMOS EEPROM with I2C Bus Interface PCF8594C-2 512 x 8-Bit CMOS EEPROM with I2C Bus Interface PCF8598C-2 1024 x 8-Bit CMOS EEPROM with I2C Bus Interface PCF85102C-2 256 x 8-Bit CMOS EEPROM with I2C Bus Interface PCF85103C-2 256 x 8-Bit CMOS EEPROM with I2C Bus Interface PCF85116-3 2048 x 8-Bit CMOS EEPROM with I2C Bus Interface Related Products Click for datasheet. Click or for more or less detail. , , indicate product status. Click for more detail. PCA9500 8-Bit I2C and SMBus I/O Port with 2-Kbit EEPROM PCA9501 8-Bit I2C and SMBus I/O Port with Interrupt, 2-Kbit EEPROM, and Six Address Pins PCA9558 5-Bit Multiplexed/1-Bit Latched 6-Bit I2C EEPROM and Octal SMBus Registered Interface with 256-Byte I2C EEPROM Product overview A/D and D/A converters - [1] I²C bus controllers - [3] I²C bus repeaters/hubs/extenders - [20] - - I²C DIP switch - [4] I²C general purpose I/O - [25] I²C LED display control - [12] I²C multiplexers/switches - [10] I²C serial EEPROM/RAM - [10] I²C temperature/voltage monitors - [8] - - I²C voltage level translators - [3] - - Support Documents • AN168 The I2C Serial Bus: Theory and Practical Consideration Using Philips Low-Voltage PCF84Cxx and PCD33xx Microcontroller Families • AN250 PCA8550 4-Bit Multiplexed/1-Bit Latched 5-Bit I2C E2PROM • AN255-02 I2C/SMBus Repeaters, Hubs, and Expanders • AN256 PTN3500/PTN3501 Provides Simple Card Maintenance and Control Using I2C • AN262 PCA954X Family of I2C/SMBus Multiplexers and Switches • AN264 I2C Devices for LED Display Control • AN444 Using the P82B715 I2C Extender on Long Cables • AN452 One Mile Long I2C Communication Using the P82B715 • AN453 Using the 87C751 Microcontroller to Gang Program PCF8582/PCF8581 EEPROMs • AN460 Using the P82B96 for Bus Interface • AN469 I2C I/O Ports • AN10146-02 I2C 2002-1 Evaluation Board • AN10148 PCA9564 I2C-Bus Controller • AN10149 PCA9564 Evaluation Board • AN10160 Level Shifting I2C and SMBus Hot Swappable Bus Buffers • AN10216-01 I2C Manual • AN10315 LED Dimmer Demoboard • AN10349 Digital Temperature Sensor Accuracy Explained • AN10366 HVQFN Application Information • AN95004 I2C Control Boards for Large Screen Monitors • AN95068 C Routines for the PCx8584 • AN96119 I2C with the XA-G3 • AN97055 Bi-Directional Level Shifter for I2C-Bus and Other Systems • Application note for the Philips Real Time Clocks PCF8563,73,83,93 • ANZ96003 Using the PCF8584 with Non-Specified Timings and Other Frequently Asked Questions • Bus Repeaters Expand Use of Popular Inter-IC Bus (in Electronic Design; Mar 17, 2003) • First Fm+ Devices Offer Advanced I2C Performance (in Electronic Products; Jul 1, 2006) • I2C Demonstration Board 2005-1 Quick Start Guide • I2C Slave Driver for the LPC900 Used on the PCA9564 Evaluation Board • Off-Line Product Selector • Opto-Electrical Isolation of the I2C Bus • PCA9633 Demo Block Diagram • PCA9633 Demo Board Schematics • PCA9633 Demo Board Source Code • PCA9633DEMO User Manual Including Demo Board Schematics • Philips Fast-mode Plus I2C Devices Support Control of LEDs (in LEDs Magazine; Jun 5, 2006) • Plain I2C Bus to Get Speed Makeover (in EE Times; Jun 5, 2006) • Repeater Expands Use of I2C Bus in Computing, Telecom, and Networking Applications (in ECN; Apr 1, 2003) • Serial Bus Enhances Venerable I2C Bus Speed (in EDN; May 9, 2006) • Win-I2CUSB Lite Software for the I2C Demonstration Board 2005-1 Kit