I2C oznacza zintegrowany kontroler. Protokół I2C to protokół komunikacji szeregowej używany do łączenia urządzeń o niskiej prędkości. Na przykład, pamięci EEPROM, mikrokontrolery, przetworniki A/D i D/A, I interfejsy wejścia/wyjścia . Został opracowany przez Półprzewodnik Philipsa W 1980 do komunikacji między chipami. Używają go obecnie prawie wszyscy główni producenci układów scalonych. Jest to komunikacja master-slave, w której można podłączyć i sterować wieloma urządzeniami slave z jednego urządzenia master. W tym przypadku każde urządzenie podrzędne ma określony adres. Obsługuje różne szybkości transmisji danych w zależności od wersji od 100 Kb/s, 400 Kb/s, 1 Mb/s do 3,4 Mb/s. Jest to komunikacja synchroniczna, taka jak SPI.
spróbuj złapać Javę
Interfejs I2C
Protokół I2C do komunikacji wykorzystuje tylko dwa kable, w których jeden kabel służy do transmisji danych (SDA), a drugi do zegara (SCL). Obydwa kable trzeba podciągnąć rezystorem dla +Vdd. Można go użyć do połączenia dwóch magistral I2C o różnych napięciach.
Zastosowania I2C
Jest to najlepszy wybór w przypadku zastosowań, które wymagają mniej kosztownej i łatwej implementacji, a nie dużej szybkości.
obiekt do jsona w Javie
- Odczytywanie niektórych układów pamięci
- Dostęp do przetworników DAC i ADC
- Przesyłanie i kontrolowanie działań kierowanych przez użytkownika
- Odczyt czujników sprzętowych
- Komunikacja z wieloma mikrokontrolerami
Zalety I2C
Istnieją następujące zalety:
- Zapewnia elastyczne szybkości transmisji danych.
- Zapewnia komunikację na duże odległości niż SPI.
- Każde urządzenie w magistrali jest sterowane niezależnie.
- Zwiększa złożoność oprogramowania sprzętowego lub sprzętu niskiego poziomu.
- Protokół ten nakłada obciążenie, które również zmniejsza przepustowość.
- Protokół ten wymaga tylko dwóch kabli.
- Może uwzględniać kilka interakcji głównych poprzez arbitraż i wykrywanie kolizji.
Wady I2C
- Złożoność sprzętu wzrasta, gdy nie. urządzeń master/slave jest wysoki w obwodzie.
- Zapewnia tryb półdupleksowy do komunikacji.
- Jest zarządzany przez stos.
- Wiele urządzeń ma zapisanych wiele adresów, co może powodować konflikty.
Różnica między protokołem I2C i SPI.
2C | SPI |
---|---|
I2C oznacza kontroler zintegrowany. | SPI oznacza szeregowy interfejs peryferyjny. |
Został opracowany przez firmę Philips Semiconductor w 1980 roku. | Został opracowany przez Motorolę w połowie 1980 roku. |
Jest to protokół półdupleksowy. | Jest to protokół pełnodupleksowy. |
Obsługuje konfigurację wielu masterów. | Nie obsługuje konfiguracji z wieloma urządzeniami głównymi. |
Więcej na górze. | Mniej kosztów ogólnych. |
Protokół I2C wykorzystuje do komunikacji dwa kable (CCL i SDA). | Protokół SPI wykorzystuje do komunikacji cztery kable (MISO, MOSI, CS i CLK). |
Szybkość przesyłania danych mieści się w zakresie od 100 kHz do 400 kHz. | Szybkość transmisji danych sięga 25 MHz. |
Jest to protokół z wieloma wzorcami. | Jest to pojedynczy protokół główny. |