Anda di halaman 1dari 8

PERBEDAAN

I2C (Inter-Integrated Circuit) dan


SPI (Serial Peripheral Interface)

Disusun oleh :
Alam ikmalul fikri
( 17107003 )
Serial Peripheral Interface ( SPI ) merupakan salah satu mode
komunikasi serial synchrounous kecepatan tinggi yang dimiliki oleh
ATmega 328. Komunikasi SPI membutuhkan 3 jalur yaitu MOSI,
MISO, dan SCK. Melalui komunikasi ini data dapat saling dikirimkan
baik antara mikrokontroller maupun antara mikrokontroller dengan
peripheral lain di luar mikrokontroller.
Penjelasan 3 jalur utama dari SPI adalah sebagai berikut :

MOSI : Master Output Slave Input Artinya jika dikonfigurasi


sebagai master maka pin MOSI sebagai output tetapi jika dikonfigurasi
sebagai slave maka pin MOSI sebagai input.

MISO : Master Input Slave Output Artinya jika dikonfigurasi


sebagai master maka pin MISO sebagai input tetapi jika dikonfigurasi
sebagai slave maka pin MISO sebagai output.

CLK : Clock Jika dikonfigurasi sebagai master maka pin CLK


berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin
CLK berlaku sebagai input.
I2C (Inter-Integrated Circuit) merupakan koneksi dibuat untuk
menyediakan komunikasi antara perangkat-perangkat terintegrasi,
seperti sensor, RTC, dan juga EEPROM. Komunikasi I2C bersifat
synchronous namun berbeda dengan SPI karena I2C menggunakan
protocol dan hanya menggunakan dua kabel untuk komunikasi, yaitu
Sychronous clock (SCL) dan Sychronous data (SDA). Secara berurutan
data dikirim dari master ke slave kemudian (setelah komunikasi master ke
slave selesai) dari slave ke master.
Sinyal dasar I2C meliputi sinyal START, STOP dan ACK sebagai berikut: SCK merupakan
sinyal clock untuk ‘mendorong’ data di SDA, dalam keadaan tidak ada transfer data SDA dan SCK
harus dalam keadaan ‘1’. Data di SDA boleh berubah hanya pada saat SCK=’0’ seperti digambarkan
dalam diagram waktu Gambar 2, isi SDA diambil peralatan I2C pada saat SCL berubah dari ‘1’
menjadi ‘0’. Jika terjadi perubahan SDA pada saat SCL = ‘1’, perubahan itu diartikan sebagai sinyal
START atau STOP.

Sinyal START menandakan master akan mulai mengirim data, sinyal ini terlihat di bagian kiri
Gambar 3 berupa perubahan tegangan SDA dari ‘1’ menjadi ‘0’ pada saat SCK=’1’. Sinyal STOP
menandakan master akan mengakhiri komunikasi data, sinyal ini terlihat di bagian kanan Gambar 3
berupa perubahan tegangan SDA dari ‘0’ menjadi ‘1’ pada saat SCK=’1’.
Sinyal ACK, merupakan sinyal balasan dari slave setelah menerima data 1
byte. Pada kondisi ini, slave “menarik” sda menjadi low selama satu sinyal clock.
Sinyal ACK ini dapat dilihat pada Gambar 4, dimana pengiriman sinyal ini
menandakan bahwa slave telah menerima 1 byte data.
Perbedaan SPI dan I2C
SPI menggunakan 4 jalur serial, yaitu SCLK (Serial Clock),
MOSI (Master Out Slave In), MISO (Master In Slave Out), dan
SS (Slave Select).
I2C menggunakan dua jalur serial atau sering disebut juga Two
Wire Interface (TWI , yaitu SCL (Serial Clock) dan SDA (Serial
Data).
Pada komunikasi SPI data dapat saling dikirimkan baik antara
mikrokontroller maupun antara mikrokontroller dengan
peripheral lain di luar mikrokontroller.
I2C lebih sederhana dan searah, sedangkan SPI lebih kompleks
tetapi bisa komunikasi dua arah dan berkecepatan lebih tinggi.
REFERENSI
[1] M. A. Mazidi, The Microcontroller and Embedded System, New Jersey: C. Pearson
Education, inc, 2011.
[2] Admin, "http://www.insinyoer.com/," 15 juli 2015. [Online]. Available:
http://www.insinyoer.com/dasar-dasar-serial-peripheral-interface-spi-mikrokontroler/.
[Accessed 5 Desember 2019].

[3] Admin, "http://fungkynotes.blogspot.com/," 30 September 2019. [Online]. Available:


http://fungkynotes.blogspot.com/2019/09/komunikasi-i2c-inter-integrated-circuit.html.
[Accessed 5 Desember 2019].

[4] A. Wagyana, Antarmuka I2C dan SPI, Yogyakarta: UNJ, 2018.

Anda mungkin juga menyukai