I2C Clock Speed
400kHz means the clock speed for a complete high low clock sequence. So 2.5uS per cycle, 1.25uS per high or low clock edge.
Pull Up Resistors
Minimum current that all devices must be able to sink = 3mA
This sets the lower resistance limit on the pull-up resistor.
1K7 for a 5V system
1K1 for a 3.3V system
Using 2K2 resistors for 5V and 3V3 I2C busses is a common choice.
Maximum Capacitance
The pull up resistance together with the bus capacitance determines the rise-time of the bus wires. I2C sets a limit of 1 microsecond for the rise time defined between two voltage levels. It can be met in 5V systems if the RC product of the bus pull up resistor and total bus capacitance is less than approx 1.6 microseconds.
Bus Comms
7bit address, receive bytes
7bit address, transmit bytes
Repeat Start Condition
USEFUL?
We benefit hugely from resources on the web so we decided we should try and give back some of our knowledge and resources to the community by opening up many of our company’s internal notes and libraries through mini sites like this. We hope you find the site helpful.
Please feel free to comment if you can add help to this page or point out issues and solutions you have found, but please note that we do not provide support on this site. If you need help with a problem please use one of the many online forums.