Difference between revisions of "Category:How to - i2c"
(link new page) |
m (add category yags) |
||
Line 10: | Line 10: | ||
Another source of I2C information can be found [http://www.gumstix.net/wiki/index.php?title=I%C2%B2C here]. | Another source of I2C information can be found [http://www.gumstix.net/wiki/index.php?title=I%C2%B2C here]. | ||
+ | |||
+ | [[Category:How_to_-_general]] |
Revision as of 12:53, 15 October 2009
Background
I2c is a 2-wire serial 8 bit communications protocol from the old days. It is mainly used to communicate between on-board components when the design does not allow for a data and address bus. Typical components are elapsed timer chips, ee-proms, FRAM's, A/D and D/A chips. Some cpu's have the I2c hardware shift registers built in.
The 2 wires are the SCL or clock wire and the SDL or data wire. The clock high to low transition is used to signal that the data wire has a stable 1/0 data value and that the receiver should shift this into the data results register. The clock line is high when the bus is idle. A special high to low transition on the clock line followed by a high to low transition on the data line signals the start of a message sequence. the end of a message sequence is a low to high transition in the data line followed by a low to high transition in the SCL line. An important aspect of this communication standard is that each device is assigned a unique 7 bit address, (oh yea the 8th bit is the Read/write indicator to complete the byte). The device address is the first byte sent in any communication. Subsequent bytes of a message depend on the device you are talking to.
Because of patents that have since expired, other companies had to use slightly differnet ways to do the same thing so a very similar serial communicatinos method called SPI uses 4 wires and another called TWI uses the same 2 wires.
Further information
Another source of I2C information can be found here.