0
3.3kviews
Explain I2C protocols with suitable diagram.
1 Answer
0
72views

I²C Bus: In any process plant there are n numbers of device circuits that are used for measurement of temperature, pressure and it is required to connect these ICs through a common bus. For this I²C has become a standard.

There are three standards:

  • Industrial 100 kbps I²C.
  • 100 kbps SM I²C.
  • 400 kbps I²C.

The I²C bus has two lines that carry its signals. One line is for the clock and another is for the bi-directional data. Serial data line [SDA] and Serial Clock [SCL]. The voltages used are +5 V and +3.3 V.

There is a protocol for the I²C bus. enter image description here

enter image description here

A: Acknowledge

P: Stop condition

S: Start Condition

Sr: Repeated Start Condition

Wr: Write (Bit value of 0)

Rd Read (Bit value of 1)

Field and its length Description
1st field of 1 bit It is like a start bit in UART
2nd field of 7 bits It is address field. It defines the slave address, which is being sent the data frame by the master.
3rd field of 1 control bit It defines whether a R/W cycle is in progress
4th field of 1 control bit Defines whether the present data is an acknowledgement.
5th field of 8 bits It is for the IC device data byte.
6th field of 1-bit It is a NACK (No Acknowledgement). If active then ACK is not needed from the slave, else ACK is needed.
7th field of 1 bit Similar to STOP bit in an UART.

I²C Bus reference design has 7 bit address space with 16 reserved addresses, so a maximum 112 nodes can communicate on the same bus.

Each device has an unique address using which the data transfer is carried out. The master can address have 127 slaves at an instance.

It has a processing element functioning as a bus controller or a microcontroller with I²C bus interface circuit.

So each slave must have an I²C bus controller and processing element. A number of masters can also connect to bus but there can be only one master which can initiate data transfer on SDA line and which can transmit the SCL pulses.

Common I²C Bus speeds are 100 Kbps standard mode and 10 Kbps low speed mode.

Please log in to add an answer.