Ikhtisar I2C

Dikembangkan oleh Philips pada tahun 1980-an, I2C telah menjadi salah satu protokol komunikasi serial yang paling umum dalam elektronik. I2C memungkinkan komunikasi antara komponen elektronik atau IC ke IC, apakah komponen berada pada PCB yang sama atau terhubung melalui kabel. Fitur kunci dari I2C adalah kemampuan untuk memiliki sejumlah besar komponen pada bus komunikasi tunggal dengan hanya dua kabel yang membuat I2C sempurna untuk aplikasi yang menuntut kesederhanaan dan biaya rendah atas kecepatan.

Ikhtisar Protokol I2C

I2C adalah protokol komunikasi serial yang hanya membutuhkan dua jalur sinyal yang dirancang untuk komunikasi antar chip pada PCB. I2C pada awalnya dirancang untuk komunikasi 100kbps tetapi mode transmisi data yang lebih cepat telah dikembangkan selama bertahun-tahun untuk mencapai kecepatan hingga 3.4Mbit. Protokol I2C telah ditetapkan sebagai standar resmi, yang menyediakan kompatibilitas yang baik antara implementasi I2C dan kompatibilitas mundur yang baik.

I2C Signals

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

Alasan bahwa I2C hanya dapat menggunakan dua sinyal untuk komunikasi dengan sejumlah periferal adalah bagaimana komunikasi di sepanjang bus ditangani. Setiap komunikasi I2C dimulai dengan alamat 7-bit (atau 10-bit) yang memanggil alamat periferal, sisanya komunikasi dimaksudkan untuk menerima komunikasi. Hal ini memungkinkan beberapa perangkat pada bus I2C untuk memainkan peran perangkat utama sesuai kebutuhan sistem yang mendikte. Untuk mencegah tabrakan komunikasi, protokol I2C termasuk kemampuan deteksi tabrakan dan tabrakan yang memungkinkan komunikasi yang lancar di sepanjang bus.

Keuntungan dan keterbatasan

Sebagai protokol komunikasi, I2C memiliki banyak kelebihan yang menjadikannya pilihan yang baik untuk banyak aplikasi desain tertanam. I2C membawa keuntungan sebagai berikut:

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

Aplikasi

Bus I2C adalah pilihan bagus untuk aplikasi yang membutuhkan biaya rendah dan implementasi yang sederhana daripada kecepatan tinggi. Misalnya, membaca IC memori tertentu, mengakses DAC dan ADC, membaca sensor , mengirimkan dan mengendalikan tindakan yang diarahkan pengguna, membaca sensor perangkat keras, dan berkomunikasi dengan beberapa mikrokontroler adalah penggunaan umum dari protokol komunikasi I2C.