Serial Peripheral Interface SPI

2.2.3. USART Universal Synchronous and Ansynchronous Serial Receiver and

Transmitter USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART. USART memungkinkan transmisi data baik secara syncrhronous maupun asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART. Pada ATmega8535, secara umum pengaturan mode syncrhronous maupun asyncrhronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode syncrhronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous hanya membutuhkan 2 pin yaitu TXD dan RXD, sedangkan untuk mode syncrhronous harus 3 pin yaitu TXD, RXD dan XCK. Komunikasi serial data antara master dan slave pada SPI diatur melalui 4 buah pin yang terdiri dari SCLK, MOSI, MISO, dan SS sbb: 1. SCLK dari master ke slave yang berfungsi sebagai clock. 2. MOSI jalur data dari master dan masuk ke dalam slave. 3. MISO jalur data keluar dari slave dan masuk ke dalam master. 4. SS slave select merupakan pin yang berfungsi untuk mengaktifkan slave.

2.2.4. Serial Peripheral Interface SPI

Serial Peripheral Interface SPI adalah protokol data serial sinkron digunakan oleh mikrokontroler untuk berkomunikasi dengan satu atau lebih perangkat periferal cepat jarak pendek. Hal ini juga dapat digunakan untuk komunikasi antara dua mikrokontroler. Dengan koneksi SPI selalu ada perangkat satu master biasanya mikrokontroler yang mengontrol perangkat periferal 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 : 1. MOSI : Master Output Slave Input, yaitu jika dikonfigurasi sebagai Master maka pin MOSI sebagai output tetapi jika dikonfigurasi sebagai Slave maka pin MOSI sebagai input. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 2. MISO : Master Input Slave Output, yaitu jika dikonfigurasi sebagai Master maka pin MISO sebagai input tetapi jika dikonfigurasi sebagai Slave maka pin MISO sebagai output. 3. CLK : Clock, jika dikonfigurasi sebagai Master maka pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai Slave maka pin CLK berlaku sebagai input. Ada dua maca SPI, yaitu satu master dengan satu slave dan satu master dengan banyak slave. Pada gambar 2.3 ditunjukkan sambungan antar master dan slave dengan SPI. Gambar 2.3. Koneksi Master-Slave dengan SPI [7] Register yang berhubungan dengan SPI terdapat seperti gambar 2.4. Gambar 2.4. SPI Control Register [7] Setiap bit dari register SPCR mempunyai fungsinya masing-masing. Dan untuk mengaktifkan SPI, maka perlu diketahui setiat bit register tersebut, sebagai berikut: a. Bit 7 – SPIE: SPI Interrupt Enable. SPIE digunakan untuk mengaktifkan interupsi SPI. b. Bit-6 SPE SPI Enable. SPE digunakan untuk mengaktifkan dan menonaktifkan komunikasi SPI dimana jika SPI bernilai 1 maka komunikasi SPI aktif sedangkan jika bernilai 0 maka komunikasi SPI tidak aktif. c. Bit 5 – DORD: Data Order. DORD digunakan untuk memilih urutan pengiriman data, dari LSB atau MSB terlebih dahulu. Nilai satu untuk LSB dan nilai nol untuk MSB. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI d. Bit-4 MSTR Master or Slave Select. MSTR digunakan untuk mengkonfigurasi sebagai master atau slave secara software dimana jika MSTR bernilai 1 maka terkonfigurasi sebagai master sedangkan MSTR bernilai 0 maka terkonfigurasi sebagai slave. Pengaturan bit MSTR ini tidak akan bisa dilakukan jika pin SS dikonfigurasi sebagai input karena jika pin SS dikonfigurasi sebagai input maka penentuan master atau slavenya otomatis dilakukan secara hardware yaitu dengan membaca level tegangan pada SS. e. Bit-3 CPOL dan Bit-2 CPHA digunakan untuk pengaturan polaritas dan fasa dari clock. f. Bit-1 SPR10 SPI Clock Rate Select SPR1 dan SPR0 digunakan untuk menentukan kecepatan clock yang digunakan dalam komunikasi SPI. Tabel 2.1. Hubungan SCK dan Frekuensi Osilator [7] SPI2x SPR1 SPR0 SCK Frequency 4 1 16 1 64 1 1 128 1 2 1 1 8 1 1 32 1 1 1 64 Gambar 2.5. SPI Status Register [7] SPIF SPI Interrupt Flag merupakan bendera yang digunakan untuk mengetahui bahwa proses pengiriman data 1 byte sudah selesai. Jika proses pengiriman data sudah selesai maka SPIF akan bernilai satu high. SPIF ini berada dalam SPI Status Register SPSR. Gambar 2.6. SPI Data Register [7] PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI SPI Data Register SPDR SPDR merupakan register yang digunakan untuk menyimpan data yang akan dikirim atau diterima pada komunikasi SPI.

2.3. LCD Liquid Crystal Display