Ikhtisar dan Manfaat Bus I2C

click fraud protection

Dikembangkan oleh Philips pada 1980-an, I2C (atau dieja I2C) telah menjadi salah satu protokol komunikasi serial yang paling umum digunakan dalam elektronik. I2C memfasilitasi komunikasi antara komponen elektronik atau terintegrasi sirkuit, apakah komponennya sama PCB atau dihubungkan dengan kabel.

Fase dua dari Protokol I2C
Mwnuk / CC OLEH 2.0 / Wikimedia Commons

Apa itu Protokol I2C?

I2C adalah protokol komunikasi serial yang hanya membutuhkan dua jalur sinyal. Itu dirancang untuk komunikasi antara chip pada papan sirkuit tercetak (PCB). I2C awalnya dirancang untuk 100 Kbps komunikasi. Namun, mode transmisi data yang lebih cepat telah dikembangkan selama bertahun-tahun untuk mencapai kecepatan hingga 3,4 Mbit.

Fitur utama I2C adalah kemampuannya untuk memiliki banyak komponen dalam satu perangkat bus komunikasi hanya dengan dua kabel, yang membuat I2C sempurna untuk aplikasi sederhana. Protokol I2C telah ditetapkan sebagai standar resmi, memungkinkan kompatibilitas mundur di antara implementasi I2C.

Sinyal I2C

Protokol I2C menggunakan dua jalur sinyal dua arah untuk berkomunikasi dengan perangkat di bus komunikasi. Dua sinyal yang digunakan adalah:

  • Jalur Data Serial (SDL)
  • Jam Data Serial (SDC)

Alasan mengapa I2C hanya dapat menggunakan dua sinyal untuk berkomunikasi dengan beberapa periferal adalah bagaimana komunikasi di sepanjang bus ditangani. Setiap komunikasi I2C dimulai dengan 7-sedikit (atau 10-bit) alamat yang memanggil alamat periferal.

Hal ini memungkinkan beberapa perangkat di bus I2C untuk memainkan peran perangkat utama sebagai kebutuhan sistem mendikte. Untuk mencegah tabrakan komunikasi, protokol I2C menyertakan kemampuan arbitrasi dan deteksi tabrakan, yang memungkinkan komunikasi lancar di sepanjang bus.

Manfaat I2C

Sebagai protokol komunikasi, I2C memiliki keunggulan sebagai berikut:

  • Kecepatan transmisi data yang fleksibel.
  • Komunikasi jarak jauh dari SPI.
  • Setiap perangkat di bus dapat dialamatkan secara independen.
  • Perangkat memiliki hubungan primer/sekunder yang sederhana.
  • Ini hanya membutuhkan dua jalur sinyal.
  • Ia mampu menangani beberapa komunikasi utama dengan menyediakan arbitrase dan deteksi tabrakan komunikasi.

Keterbatasan I2C

Dengan semua keunggulan ini, I2C juga memiliki beberapa keterbatasan yang mungkin perlu dirancang. Batasan I2C yang paling penting meliputi:

  • Karena hanya 7-bit (atau 10-bit) yang tersedia untuk pengalamatan perangkat, perangkat pada bus yang sama dapat berbagi alamat yang sama. Beberapa perangkat dapat mengonfigurasi beberapa bit terakhir dari alamat, tetapi ini memberlakukan batasan perangkat pada bus yang sama.
  • Hanya beberapa kecepatan komunikasi terbatas yang tersedia, dan banyak perangkat tidak mendukung transmisi pada kecepatan yang lebih tinggi. Dukungan parsial untuk setiap kecepatan pada bus diperlukan untuk mencegah perangkat yang lebih lambat menangkap transmisi parsial yang dapat mengakibatkan gangguan operasional.
  • Sifat bersama dari bus I2C dapat mengakibatkan seluruh bus hang ketika satu perangkat di bus berhenti beroperasi. Bersepeda daya ke bus dapat memulihkan operasi yang tepat.
  • Karena perangkat mengatur kecepatan komunikasinya sendiri, perangkat operasional yang lebih lambat dapat menunda pengoperasian perangkat yang lebih cepat.
  • I2C menarik lebih banyak daya daripada bus komunikasi serial lainnya karena topologi saluran komunikasi terbuka.
  • Keterbatasan bus I2C biasanya membatasi jumlah perangkat di bus menjadi sekitar selusin.

Aplikasi I2C

I2C adalah pilihan yang bagus untuk aplikasi yang membutuhkan biaya rendah dan implementasi sederhana daripada kecepatan tinggi. Misalnya, penggunaan umum protokol komunikasi I2C meliputi:

  • Membaca IC memori tertentu.
  • Mengakses DAC dan ADC.
  • Mengirimkan dan mengontrol tindakan yang diarahkan pengguna.
  • Membaca sensor perangkat keras.
  • Berkomunikasi dengan beberapa mikrokontroler.