I²C (Inter-Integrated Circuit), pronounced I-squared-C, is a synchronous, multi- master, multi-slave, packet switched, single-ended, serial computer bus invented in by Philips Semiconductor (now NXP Semiconductors). Alternatively I²C is spelled I2C (pronounced I-two-C) or IIC (pronounced I-I-C). Since October Industry Standard. The “I2C Bus Specification,” published by Philips Semiconductor, provides a communication protocol definition of the signal activity on the I2C. I2C specification defines the interface, signals, addressing, protocols and electrical The I2C bus uses two wires: serial data (SDA) and serial clock (SCL). . A complete I2C Bus Specification and User Manual can be obtained from the NXP.

Author: Zulkihn Dagore
Country: Montserrat
Language: English (Spanish)
Genre: Marketing
Published (Last): 19 September 2007
Pages: 288
PDF File Size: 9.45 Mb
ePub File Size: 19.37 Mb
ISBN: 190-8-70509-878-6
Downloads: 26307
Price: Free* [*Free Regsitration Required]
Uploader: Yozshushura

Slave This is the device that listens to the bus and is addressed by the master. The terminating STOP indicates when those grouped actions should take effect.


Most SMBus operations involve single-byte commands. Skip to secondary content. Main menu Skip to primary content. From Wikipedia, the free encyclopedia.

A logic “0” is output by pulling the line to ground, and a logic “1” is output by letting the line float output high impedance so that the pull-up resistor pulls it high. However, if the I2C interface is implemented by the software, the microcontroller has to sample SDA line at least twice per clock pulse in order to detect changes. I2C terminology Transmitter This is philiips device that transmits data to the philips i2c protocol Receiver This is the device that receives data from the bus Master This is the device that generates clock, starts communication, sends I2C commands and stops communication Slave This is protoocl device that listens to the philips i2c protocol and philips i2c protocol addressed by the master Multi-master I2C can have more than one master and each can send commands Arbitration A process to determine which of the masters on the bus can use it when more masters need to use the bus Synchronization A process philips i2c protocol synchronize clocks of two or more devices Pphilips Signals Both signals SCL i2cc SDA are bidirectional.

Start Byte If microcontroller has I2C hardware and the microcontroller acts as rpotocol slave then the software needs to do nothing to check the bus state. Once the clock is released the master can proceed with the next byte. An important consequence of this is that multiple nodes may be driving the lines simultaneously.

Configuration, calibration or self-test modes which cause the slave to philips i2c protocol unusually are also often automatically terminated at the philipe of a transaction.

If for some reason two masters initiate I2C command at phikips same time, the arbitration procedure determines which master philipss and can continue with the command. Some I2C devices on the board, despite address pins, have the same address. This is exactly what I2C bus specifications define. In this situation, the master is in master transmit mode, and the slave is in slave receive mode.

For all data bits including the Acknowledge bit, the master must philips i2c protocol clock pulses. For this reason, when philips i2c protocol slave can be accessed by multiple masters, every command recognized by the slave either must be idempotent or must be guaranteed never to be issued by two masters at the same time.

Note the bit rates are quoted for the transfers between master and slave without clock stretching or other hardware overhead. Slave transmit mode can also be arbitrated, when a master addresses multiple slaves, but this is less common. After this philips i2c protocol the data can be read from the slave device. This resulted in few upgrades to the standard-mode I2C specifications:. In this situation, the master is in master receive mode, and the slave is in slave transmit mode.

The general call address philips i2c protocol used to address all devices on philips i2c protocol slave bus. High-speed systems and some others may use a current source instead of a resistor to pull-up on SCL or both SCL and SDA, to accommodate higher bus capacitance and enable faster rise times.

In all modes, the clock frequency is controlled by the master sand a longer-than-normal bus may be operated at a slower-than-nominal speed by underclocking. Otherwise, if the data direction bit is 1, the master will read from slave device.

I2C Bus Specification

Most logic analyzers have the capability to decode bus signals into high-level protocol philips i2c protocol and show ASCII data. For both conditions SCL has to be high. Synchronization A process to synchronize clocks of two or more devices. It is illegal [4]: The bus has two roles for nodes: Multiplexers can be implemented with analog switches, which can tie one segment to another. This means that in multi-master system each Philips i2c protocol master must monitor the I2C bus for collisions and act accordingly.

If there is more than one master, all but one of them will normally lose arbitration. The communication is ended with the Stop condition which also signals that the I2C bus is free.

philips i2c protocol

philips i2c protocol Nodes that are trying to transmit a logical one i. Each transmitter checks the level of the data line SDA and compares it with the levels it expects; if they do not match, that transmitter has lost arbitration and drops out of this protocol interaction.

Archived from the original on