KursyPoradnikiInspirujące DIYForum

I2C (TWI) - co warto wiedzieć?

I2C to nazwa dwuprzewodowego interfejsu, służącego do przesyłania danych pomiędzy dwoma lub większą liczbą układów cyfrowych. I2C zostało stworzone przez firmę Philips, a nazwa TWI (ang. Two Wire Interface), która określa ten sam interfejs, była używana przez firmę Atmel. Istnieje też technologia SMBus, stworzona w oparciu o I2C przez Intela.

I2C pozwala na komunikację pomiędzy wieloma, po części „samodzielnymi” urządzeniami, które na ogół nie wymagają szybkiej transmisji danych. Do komunikacji wykorzystuje się w sumie dwa przewody sygnałowe, podciągnięte do źródła zasilania przez rezystory pull-up, oraz wspólną masę. SDA, czyli linia danych, służy do przesyłania danych np. w postaci komend do innego układu. Linia zegarowa - SCL - służy do synchronizacji w czasie nadawania i odbierania informacji przez podłączone urządzenia.

Komunikacja I2C na Arduino

Komunikacja przez I2C jest obecnie bardzo często spotykana w różnych projektach – zarówno tych profesjonalnych, jak i hobbystycznych. Oprócz różnego rodzaju czujników, bardzo często wykorzystuje się ekspandery portów na I2C. Za ich pomocą możliwe jest podłączenie np. wyświetlacza LCD do Arduino UNO jedynie za pomocą 2 linii oraz masy. Przykład wykorzystania takiego ekspandera został opisany np. w naszym kursie budowy robotów:

Kurs budowy robotów – #9 – ekspander I/O, serwo
Kurs budowy robotów – #9 – ekspander I/O, serwo

Zbliżamy się do końca kursu budowy robotów, pora omówić więc pozostałe możliwości naszego shieldu, które będą przydatne podczas dalszego... Czytaj dalej »

Komunikacja I2C na STM32

Temat komunikacji za pomocą I2C został też dokładnie opisany w naszym darmowym kursie STM32. W kolejnych odcinkach omówiono tam wykorzystanie I2C do komunikacji z zewnętrzną pamięcią EEPROM oraz z czujnikiem ciśnienia, który spotkać można np. w zegarkach sportowych:

Kurs STM32L4 – #12 – zewnętrzna pamięć EEPROM (I2C)
Kurs STM32L4 – #12 – zewnętrzna pamięć EEPROM (I2C)

Do tej pory omówiliśmy dwa interfejsy szeregowe na STM32L4, czyli UART i SPI. Pierwszy wymagał dwóch linii, ale był dość…... Czytaj dalej »

Czy wpis był pomocny? Oceń go:

Średnia ocena 5 / 5. Głosów łącznie: 6

Nikt jeszcze nie głosował, bądź pierwszy!

Artykuł nie był pomocny? Jak możemy go poprawić? Wpisz swoje sugestie poniżej. Jeśli masz pytanie to zadaj je w komentarzu - ten formularz jest anonimowy, nie będziemy mogli Ci odpowiedzieć!