Page 82 - MODUL PRAKTIKUM MIKROKONTROLER - MIKROPROSESOR
P. 82
Modul Praktikum Sistem Mikroprosesor & Mikrokontroler
(MT-UN-2022)
Ilustrasi cara kerja protokol komunikasi I2C adalah sebagai berikut:
Rp merupakan Resistor Pullup sebesar 4.7 KΩ, untuk jarak pendek resistor
pullup ini bisa ditiadakan, namun untuk jarak yang oanjang atau jumlah client/slave
yang banyak, resistor pullup ini diperlukan. Jumlah slave/client yang dapat terhubung
dalam satu jalur bus I2C adalah sebanyak 112. Setiap client/Slave wajib memiliki
alamat yang unik agar tidak terjadi tabrakan data (data collision) atau data yang invalid.
Panjang kabel I2C maksimal bisa mencapai 250 m tergantung pada besaran
kapasitansi, resistor pullup dan kecepatan clock sinkronisasi data.
I2C Hardware
Jalur I2C pada mikrokontroler dapat dijadikan sebagai digital output ataupun
digital input (disebut juga tri-state). Dalam mode tri-state, jalur koneksi bukan HIGH
atau LOW, namun merupakan nilai float. Jika client/slave berbeda level tegangan
dengan master, maka harus digunakan level converter. Pada arduino UNO pin yang
berfungsi sebagai komunikasi I2C adalah A4 dan A5 sebagai SDA dan SCL.
I2C Protocol
I2C menggunakan dua jalur (two wires) untuk transmit (mengirim) dan receive
(menerima) data. Kedua jalur ini disebut Serial Clock Line (SCL) dan Serial Data Line
(SDA). Timing diagram I2C terdapat pada gambar berikut:
75