Synchronous microcontroller communication interfaces. Everything you wanted to know, but were afraid to ask.
Synchronous Interfaces (suitable for peripherals on the same board or <1 m):
I2C (Inter Integrated Circuit, I squared C)
SPI (Serial Peripheral Interface Bus )
U(S)ART (Universal Synchronous & Asynchronous Receiver Transmitter)
(aka Serial Communication Interface (SCI))
(S) can be synchronous I2C
* true bus, requires only two pins for multiple devices (address space)
* 100kbits/sec, 400kbits/sec, 1Mbits/sec
* half-duplex
* high noise sensitivity, lower data integrity
* slave ack / rx confirmationSPI
* not a true bus, N devices require 3+N pins
* 10Mbits/sec
* full–duplex capability
* any message sizes, suited for longer data streams (I2C limited to 8 bit word)USART
* standard serial connection (also over USB)
* few hundred bits per second (bps) up to 1.5Mbps
* error checking with parity bit
