I2C Flashcards

1
Q

What are the two wires in I2C?

A

> SDA (Data)

> SCL (Clock)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How long is a packet?

A

8 bits

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How is each bit transferred over SDA?

A

On a clock edge

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the start sequence?

A

SDA goes low while SCL goes high

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the stop sequence?

A

SDA goes high while SCL goes low

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the general structure for a 1-byte tranaction?

A

[Picture2]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How does the receiver acknowlege a bit has been recieved?

A

By holding the SDA line LOW for one clock cycle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How long is an I2C address?

A

7-bits

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the 8th bit when an address is being sent?

A
The direction.
0 = writing
1 = reading
e.g.
AAAAAAA1
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the process for reading from a slave?

A
  1. Master transmits slave address with write direction
  2. The slave acknowleges the by holding the line low for one clock cycle
  3. The master transmits the register the slave must transmit
  4. the master continues to clock the SCL allowing the data to be recieved by the master
  5. The master sends a stop condition after the 8-bits have been recieved
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What type of architecture is I2C?

A

Master-slave

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How many slaves can be connected to an I2C bus?

A

2^7 - 1 = 127

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is address 0 on an I2C bus?

A

Used to address all slaves

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What can also limit the number of slaves on an I2C bus?

A

Number of devices is limited by capacitive loading of the lines

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What makes I2C more robust than UART?

A

Because it has acknowlegments

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is the process for reading multiple values from a slave?

A

It is possible to read a burst of values from multiple registers if the slave is configured to do so.
If the master continues to clock the SCL line then the slave will continue sending data

17
Q

What is the process for writing values to a slave?

A
  1. Master transmits slave address with write direction
  2. The slave acknowleges the by holding the line low for one clock cycle
  3. The master transmits the register the slave must write to
  4. the master continues to clock the SCL and transmits the data to the slave
  5. The master sends a stop condition after the bits have been sent
18
Q

What is the process for writing multiple values to a slave?

A

This is done in a similar way to burst reading