Apa itu Antarmuka Periferal Serial?

Antarmuka periferal serial (SPI) adalah antarmuka aliran data komunikasi serial dupleks penuh, empat-kawat, dupleks penuh yang beroperasi dalam hubungan master-slave. Transfer data dalam perangkat serial terjadi satu bit pada satu waktu, membuat SPI menjadi antarmuka berkecepatan rendah. Ini biasanya digunakan sebagai penghubung antara sirkuit terintegrasi dengan perangkat periferal lambat terpasang yang diakses sebentar-sebentar. Ini bersaing dengan perangkat transmisi data paralel, tetapi karena efisiensi SPI meningkat, keuntungan yang pertama berkurang. SPI kadang-kadang disebut sebagai “microwire”, meskipun ini dianggap sebagai subset protokol SPI.

Transfer data oleh antarmuka periferal serial terjadi melalui protokol dupleks penuh. Data ditransfer dan diterima di kedua arah secara bersamaan. Aplikasi yang menggunakan SPI mendapatkan banyak efisiensi dalam mode ini; salah satu aplikasi tersebut adalah antara coder-decoder (codec) dan Digital Signal Processor (DSP). Aplikasi lain termasuk sensor suhu dan tekanan, serta memori flash.

Setiap kali dua perangkat antarmuka periferal serial berkomunikasi, satu perangkat disebut sebagai “master”, sedangkan perangkat lainnya adalah “slave”. Perangkat master memulai semua komunikasi dengan mengirimkan sinyal ke perangkat slave. Bus antarmuka periferal serial dapat menghubungkan beberapa perangkat budak ke satu master.

Perangkat antarmuka periferal serial menggunakan tiga register—register kontrol (SPCR), register status (SPSR), dan register data (SPDR)—dalam mengirim data, bersama dengan empat sinyal berbeda. Sinyal pertama disebut serial clock (SCLK), yang hanya dihasilkan oleh perangkat master. Ini diikuti oleh master-out slave-in (MOSI), master-in slave-out (MISO), dan slave select (SSn), di mana “n” adalah jumlah perangkat slave yang terhubung dengan perangkat master.

Dalam konfigurasi single-slave, seorang insinyur yang ingin menggunakan antarmuka periferal serial akan menghubungkan SCLK ke input perangkat slave. MOSI kemudian membawa data dari perangkat master ke perangkat slave sementara MISO mentransfer data dari slave ke master. Untuk menentukan perangkat mana yang master dan mana yang budak, yang pertama menghubungkan Master SSn ke Slave SSn dan menghasilkan sinyal input/output diskrit tujuan umum ke yang terakhir.

Untuk menghubungkan beberapa slave ke satu master dalam antarmuka periferal serial, sinyal SSn yang terpisah dihubungkan dari perangkat master ke slave yang terpisah. Misalnya, SS1 terhubung ke Slave 1, SS2 terhubung ke Slave 2, dan seterusnya. Mirip dengan konfigurasi single-slave, SCLK terhubung dari perangkat master ke beberapa slave. MOSI dari master ke slave terhubung, begitu juga dengan MISO dari slave ke master.