Der I2C steht für den Inter Integrated Controller. Das I2C-Protokoll ist ein serielles Kommunikationsprotokoll, das zur Verbindung langsamer Geräte verwendet wird. Zum Beispiel, EEPROMs, Mikrocontroller, A/D- und D/A-Wandler, Und Ein-/Ausgabeschnittstellen . Es wurde entwickelt von Philips Halbleiter In 1980 für die Kommunikation zwischen Chips. Mittlerweile nutzen es fast alle großen IC-Hersteller. Es handelt sich um eine Master-Slave-Kommunikation, bei der Sie mehrere Slaves von einem einzigen Master aus verbinden und steuern können. Dabei hat jedes Slave-Gerät eine bestimmte Adresse. Es unterstützt je nach Version verschiedene Datenraten von 100 Kbit/s, 400 Kbit/s, 1 Mbit/s bis 3,4 Mbit/s. Es handelt sich um synchrone Kommunikation wie SPI.
I2C-Schnittstelle
Das I2C-Protokoll verwendet nur zwei Kabel für die Kommunikation, wobei ein Kabel für die Daten (SDA) und ein anderes Kabel für die Uhr (SCL) verwendet wird. Beide Kabel müssen mit einem Widerstand für + Vdd hochgezogen werden. Damit lassen sich zwei I2C-Busse mit unterschiedlichen Spannungen verbinden.
Anwendungen von I2C
Es ist die beste Wahl für Anwendungen, die eine kostengünstigere und einfache Implementierung anstelle einer hohen Geschwindigkeit erfordern.
- Auslesen bestimmter Speicher-ICs
- Zugriff auf DACs und ADCs
- Übertragen und Steuern benutzergesteuerter Aktionen
- Hardware-Sensoren auslesen
- Kommunikation mit mehreren Mikrocontrollern
Vorteile von I2C
Es ergeben sich folgende Vorteile:
- Es bietet flexible Datenübertragungsraten.
- Es bietet Fernkommunikation als SPI.
- Jedes Gerät am Bus wird unabhängig gesteuert.
- Es erhöht die Komplexität der Firmware oder Low-Level-Hardware.
- Dieses Protokoll verursacht einen Overhead, der auch den Durchsatz verringert.
- Dieses Protokoll erfordert nur zwei Kabel.
- Es kann mehrere Master-Interaktionen durch Arbitrierung und Kollisionserkennung berücksichtigen.
Nachteile von I2C
- Die Komplexität der Hardware steigt, wenn nein. Anzahl der Master/Slave-Geräte im Stromkreis ist hoch.
- Es bietet einen Halbduplex-Modus für die Kommunikation.
- Die Verwaltung erfolgt durch den Stack.
- Bei vielen Geräten sind mehrere Adressen gespeichert, was zu Konflikten führen kann.
Unterschied zwischen dem I2C- und dem SPI-Protokoll.
2C | SPI |
---|---|
I2C steht für Inter-Integrated Controller. | SPI steht für Serial Peripheral Interface. |
Es wurde 1980 von Philips Semiconductor entwickelt. | Es wurde Mitte der 1980er Jahre von Motorola entwickelt. |
Es handelt sich um ein Halbduplex-Protokoll. | Es handelt sich um ein Vollduplex-Protokoll. |
Es unterstützt die Konfiguration mit mehreren Mastern. | Die Konfiguration mit mehreren Mastern wird nicht unterstützt. |
Mehr Aufwand. | Weniger Aufwand. |
Das I2C-Protokoll verwendet zwei Kabel für die Kommunikation (CCL und SDA). | Das SPI-Protokoll verwendet vier Kabel für die Kommunikation (MISO, MOSI, CS und CLK). |
Die Datenübertragungsgeschwindigkeit reicht von 100 kHz bis 400 kHz. | Seine Datenübertragungsgeschwindigkeit beträgt bis zu 25 MHz. |
Es handelt sich um ein Multi-Master-Protokoll. | Es handelt sich um ein Single-Master-Protokoll. |