I2C (Polski)
I²C lub I2C (Inter-IC) to synchroniczna, wielozadaniowa (kontroler/cel), przełączana pakietowo, jednostronna, szeregowa magistrala komunikacyjna wynaleziona w 1982 roku przez Philips Semiconductors.
Używana jest do komunikacji układów z urządzeniami wejścia/wyjścia ogólnego przeznaczenia (GPIO).
Podobnym rozszerzeniem I2C jest SMBus, który jest bardziej szczegółowo wykorzystywany do celów monitorowania sprzętu.
Instalacja
Moduły I2C zawyczaj istnieją w większości pakietów kerneli.
Narzędzia przestrzeni użytkownika można zainstalować z i2c-tools. Bleeding edge (absolutnie najnowsze wersje) znajduje się na i2c-tools-gitAUR.
Narzędzia specyficzne dla SMBus można pozyskać z lm_sensors.
Ładowanie modułów
W niektórych przypadkach konieczne może być załadowanie modułu przy starcie systemu:
/etc/modules-load.d/i2c-dev.conf
i2c-dev
Nie będzie to wymagane, gdy FS#76233 zostanie naprawione.
W zależności od posiadanego systemu i jego wykorzystania, konieczne może być załadowanie innych modułów, takich jak i2c_i801
lub i2c_smbus
.
Jeśli moduły zostały poprawnie załadowane, powinieneś zobaczyć urządzenia /dev/i2c-*
.
Uprawnienia do korzystania z urządzeń /dev/i2c-*
mogą być przyznane poprzez dodanie użytkownika do grupy i2c
.
Użycie
i2cdetect
potrafi wykryć wszystkie aktywne urządzenia I2C:
$ i2cdetect -l
i2c-0 i2c Synopsys DesignWare I2C adapter I2C adapter i2c-1 i2c Synopsys DesignWare I2C adapter I2C adapter i2c-2 i2c Synopsys DesignWare I2C adapter I2C adapter i2c-3 i2c Synopsys DesignWare I2C adapter I2C adapter i2c-4 smbus SMBus I801 adapter at f040 SMBus adapter i2c-5 i2c i915 gmbus dpb I2C adapter i2c-6 i2c i915 gmbus dpc I2C adapter i2c-7 i2c i915 gmbus misc I2C adapter i2c-8 i2c AUX B/DDI B/PHY B I2C adapter
Kiedy urządzenie I2C jest podłączone do znanej magistrali, i2cdetect
może je zbadać, aby znaleźć aktywne adresy:
$ i2cdetect 1
0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- 76 --
Należy pamiętać, że program ten może zmylić magistralę I2C, powodując utratę danych i wiele więcej.