Anda di halaman 1dari 10

CARA KERJA SPI

Pada SPI full duplex artinya master dan slave dapat menerima atau
mengirim data dalam waktu bersamaan
SPI beroperasi berdasar shift register yang biasanya 8 bit shift register
Master melakukan konfigurasi clock (Freq atau kecepatan transfer data
antara SPI master device dan slave device harus sama)
Antarmuka SPI

Terdapat empat jalur:


1. SCLK(Serial Clock)  Clock dikirimkan ke Slave untuk menandakan komunikasi dan
shifting terhadap shift register
2. MOSI(Master Output Slave Input)  sinyal output master berupa shift register dari
menuju input dari slave
3. MISO( Master Input Slave Output)  sinyal input master untuk menerima data shift
register dari slave
4. SS’( Slave Select)  pin yang digunakan untuk memilih slave mana yang akan diajak
berkomunikasi oleh master
Data yang dikirim bergeser satu per satu dari bit ke 1 hingga bit ke 8
Setelah register bergeres berarti master dan slave bertukar data lalu bergantian
slave dan master
Jika data yang dikirim banyak, maka shift register akan diisi ulang dengan data
yang baru.
Proses pengiriman akan dihentikan jika master mengirim sinyal toggle untuk
mengakhiri pemilihan slave.
Saat clock pertama shift
register menggeser data di bit
A0 master menempati bit 7
Slave. Bit B0 slave menempati
bit 7 master
Saat clock ketiga shift register
menggeser nilai dari Slave di
bit B2 berpindah menempati
bit ke 7 dari master device.
Lalu Bit A2 dari master device
akan bergeser 1 bit ke bit 7
dari slave device.
Data dari tiap bit baik dari
master maupun slave device
akan bergeser 1 bit sesuai
dengan clock dari master.
Sehingga

Setelah 8 clock selesai, master menerima data dari slave yang sudah ada di shift register
master
Begitu pula slave menerima data dari master yang tersimpan di shift register slave
device.
Multiple Slave SPI Mode
Bus SPI memungkinkan
terdiri dari beberapa slave
device dan hanya ada 1
master namun sedikit
kompleks
Pin SS memilih slave mana
yang menerima dan
mengirim data
Pin SS active low jadi harus
memberi pulsa 0 untuk
memilih slave

Agar tidak tabrakan data, tidak boleh memberi logic 0 ke pin SS1, SS2. SS3 secara
bersamaan
Untuk bergantian harus menunggu transfer data telah selesai dari satu slave, Lalu diberi
logic 1 yang menandakan slave tersebut idle, Baru pada slave selanjutnya diberi logic low
Clock Polarity and Phase
Ada protocol dari master data agar tidak terjadi kesahalan pengiriman dan
data yang hilang
CPOL – Clock Polarity:
 Untuk memilih polaritas clock pada saat kondisi idle. Set bit ini pada kondisi
high1 untuk mengaktifkan clock tinggi pada saat idle, dan sebaliknya set bit
ini low atau 0 untuk mengaktifkan clock rendah pada saat idle.
 saat Bit CPOL bernilai low maka clock SCK akan bersifat Rising Edge
 saat Bit CPOL kondisi high maka SCK akan bersifat Falling Edge
 (Rising adalah perubahan pulsa pada saat 0 ke 1, falling sebaliknya adalah
kondisi pada saat pulsa berubah dari 1 ke atau 0).
Clock Polarity and Phase
Ada protocol dari master data agar tidak terjadi kesahalan pengiriman dan
data yang hilang
CPHA – Clock Phase:
Bit untuk sampling data.
Set Bit satu atau high untuk sampling data saat SCK dalam edge yang
pertama
Set bit 0 atau low untuk sampling data saat SCK dalam edge yang
kedua.
Sehingga
Terdapat empat mode komunikasi data pada SPI

Anda mungkin juga menyukai