I²C (Inter-Integrated Circuit)

I2C Bus logoI²C, dalam bahasa Inggris singkatan dari Inter-Integrated Circuit atau I-2-C adalah databus serial yang dikembangkan oleh Philips Semiconductor (sekarang NXP Semiconductors).

Databus ini umumnya digunakan internal dalam perangkat untuk komunikasi antara berbagai elemen sirkuit, seperti halnya antara controller dan IC perifer. Sistem yang dikembangkan Philips pada tahun 1980-an ini, awalnya dibuat untuk memudahkan pengontrolan antar berbagai chip di dalam sebuah sistem televisi. Sejak pertengahan 1990-an, I²C mulai digunakan oleh beberapa pesaing berupa sistem yang kompatibel dengan Philips I²C, termasuk oleh Siemens AG (sekarang Infineon Technologies AG), NEC, STMicroelectronics, Motorola (sekarang Freescale), Intersil, dan beberapa perusahan lainnya.

Sementara itu, Atmel memperkenalkannya (alasan lisensi) dengan menggunakan istilah TWI (Dual-Wire Interface) yang kemudian juga digunakan oleh beberapa produsen lain. Secara teknis TWI dan I²C adalah identik. Setelah paten asli kadaluarsa pada tangal 1 Oktober 2006, tidak ada lagi biaya lisensi untuk penggunaan I²C. Istilah I²C juga bukan merupakan merek dagang terdaftar dari NXP Semiconductor. Perlindungan merek dagang hanya berupa logo saja.

Sistem Bus I²C

I²C dirancang sebagai bus master-slave. Sebuah transfer data selalu dimulai oleh master, yang direspon oleh slave (budak) dengan alamat yang ditentukan oleh master. Dimungkinkan ada beberapa master berupa modus multi-master. Dalam modus ini, dua perangkat master dapat berkomunikasi satu sama lainnya secara langsung, sementara salah satu perangkat beroperasi sebagai budak. Arbitrase (kontrol akses terhadap bus) diatur dengan spesifikasi yang ditetapkan.

I2C.sirkuit_contoh_500

I²C-bus dengan satu master dan tiga slave

Pada gambar tertera diatas tiga unit perangkat I²C masing-masing memiliki dua saluran sinyal: clock (SCL) dan saluran data (SDA). Keduanya dengan pull-up resistor RP tersambung ke tegangan pasokan Vdd. Semua perangkat yang terhubung memiliki output kolektor terbuka, sehingga terbentuk sirkuit Wired-AND bersama melalui pull-up resistor.

Fitur Utama dari Bus I²C meliputi:

  • Hanya memerlukan dua jalur bus;
  • Tidak ada persyaratan baud rate yang ketat seperti misalnya pada RS232, master yang menyediakan bus clock;
  • Relasi master dan slave sederhana, dan terjadi di antara semua komponen;
  • Setiap perangkat yang terhubung ke bus dialamatkan perangkat lunak menggunakan alamat yang unik;
  • I2C adalah bus multi-master sejati yang mampu mendeteksi baik tabrakan (collosion) maupun arbitrase.

Acuan: http://www.i2c-bus.org/ (English) dan Wikipedia (Basa Sunda)