1)Who designed I2C?
I2C was designed by Philips(NXP Semiconductors) in 1982. |
Inter-Integrated Circuit |
3)Why I2C Protocol is Designed?
a) I2C Protocol is designed for Master and Slave Communication. b)I2C Protocol is also designed for Multi-Master Communication. |
4)How many wires are used in I2C Communication?
I2C is a two wired protocol.
a) Serial Data(SDA) - It is used for Data Transfer b) Serial Clock(SCL) - It is used as Clock Line Used for Synchronization. |
5)Is I2C Half-duplex (or) Full Duplex?
Half Duplex |
6)Is I2C Synchronous (or) Asynchronous Communication?
Synchronous Communication |
7)Is I2C Serial (or) Parallel Communication?
Serial Communication |
8)What are the standard bus speeds in I2C Communication?
Mode |
Speed |
Standard Speed Mode |
100 Kbps |
Fast Mode |
400 Kbps |
Fast Mode Plus |
1 Mbps |
High Speed Mode |
3.4 Mbps |
Ultra High-Speed Mode |
5 mbps |
9)What are the main features of I2C Communication?
a) I2C is Multi-Slave and Multi-Master Communication Protocol. b) I2C Supports Multi-Master Arbitration Management. c)I2C devices are Open Drain. d)I2C bus is Wired AND Bus. |
10)What is the byte order in I2C?
MSB to LSB |
11)What is the I2C byte Format?
Every Byte put on the SDA line must be 8 bits long |
12)How many Slaves can be connected to I2C?
a) As per theoretically we can connect up to 127 devices for 7 Bit Address and 1024 devices will connect for 10 Bit Address. b)But the practical maximum number of slaves on the I2C bus is limited by the address space and also by bus capacitance. |
13)Who generates the clock in I2C Communication?
Master |
14)What is Arbitration in I2C?
a) The arbitration is required in the case of a multi-master, where more than one master is tried to communicate with a slave simultaneously. In I2C arbitration is achieved by the SDA line. b) In the Arbitration - the master who will write a first dominant bit, that master get the bus control, it will win the arbitration.
c)Master who is losing their arbitration will wait until the bus becomes free. |
a) SDA and SCL lines of I2C pins need pull up resistors for sure. b) Open drain and open collector terminals need to pull up resistors to maintain the logic levels stable. c)Open drain devices can drive the data line to zero. d)To match voltage levels of master and slave external pull up resistors are used. e)The I2C bus drivers are open drain, meaning that they can pull the corresponding signal line low, but cannot drive it high. Thus, there can be no bus contention where one device is trying to drive the line high while another tries to pull it low, eliminating the potential for damage to the drivers or excessive power dissipation in the system. Each signal line has a pull-up resistor on it, to restore the signal to high when no device is asserting it low. |
16)Name some I2C devices?
I2C is a serial protocol for two wire-interface to connect low-speed devices like a) RTC b) EEPROM c)Thermometer d)Accelerometer |
17)What is I2C Clock Stretching?
a) In I2C, Communication can be paused by the clock stretching
to holding the SCL line low and it cannot continue until
the SCL line is released high again.
b) In I2C, slave able to receive a byte of data on the fast rate
but sometimes slave takes more time in processing the
received bytes in that situation slave pull the SCL line to
pause the transaction and after processing the received
bytes, it again released the SCL line high to resume
the communication. |
18)What is I2C Clock Synchronization?
a) In I2C clock is always generated by the master and this clock is shared by both master and slave. b) In the case of multi-master, all master generates their SCL clock, hence the clock of all master must be synchronized. c)In I2C, this clock synchronization is done by wired and logic. |
19)Can one Slave communicate with another Slave?
No |
20)Can one Slave have another Slave?
Yes |
21)Can we Connect 7 bit and 10 bit Slave Devices on the Same Bus?
Yes |
22)What is the I2C byte write packet?
a) START Condition b) Write 7-bit Slave Address c)Acknowledgment d)Write 8-bit Memory Address e) Acknowledgment f) Write 8-bit Data g) Acknowledgment h) STOP Condition |
23)What is the I2C byte read packet?
a)
START Condition b) Write 7-bit Slave Address with "Write" Option c)Acknowledgment d)Write 8-bit Memory Address e) Acknowledgment f) Restart (or) start again g) Write 7 bits Slave Address with "Read" Option h) Acknowledgment i)Read 8 bit from Slave j) No Acknowledgement k)STOP
Condition |
24)How many fields are in I2C?
Totally Six
fields are in I2C a) I2C Start b) I2C Stop c)I2C Read d)I2C Write e) I2C Ack f)I2C
No Ack |
25)What is START Condition?
A high to low transition on the SDA line while SCL is high, defines
a START condition. |
26)What is STOP Condition?
A low to high transition on the SDA
line while SCL is high, defines a STOP condition. |
27)What are the Advantages of I2C?
a) Flexibility b) Better Error Handling Mechanism c)Important features like arbitration, clock
synchronization, clock stretching. d)Adaptable |
28)What are Dis Advantages of I2C?
a) Half Duplex Communication, so data is
transmitted only
in one direction at a time. b) Debugging an I2C bus is difficult. c)Pull
up resistors limit the bus speed. |
29)Can we Connect the same addressable slaves on the same bus?
No |
30)Which pin provides the reference clock for the transfer of data?
The SCL pin can provide the reference clock for
the transmission of data but it is not a free-running clock. |
31)How slave selection is performed?
The slave selection is performed by using the first byte as an address byte. When the address byte is sent out all the slave devices compare the address by its value. If there is a match, the
ACKNOWLEDGE signal will be sent by the slave. |
32)What if the two masters send the same data, same address at the same time?
Yes Possible, but both masters should have the
same speed |
0 Comments