1. Komponen[kembali]
c. Potensiometer
Potensiometer adalah salah satu jenis resistor yang nilai resistansinya dapat diatur sesuai dengan kebutuhan rangkaian elektronika ataupun kebutuhan pemakainya.
d. LCD
LCD atau Liquid Crystal Display adalah suatu jenis media display (tampilan) yang menggunakan kristal cair (liquid crystal) untuk menghasilkan gambar yang terlihat.
2. Rangkaian Simulasi[kembali]
3. Flowchart[kembali]
4. Listing Program[kembali]
//MASTER
#include <SPI.h>
#define BUTTON 2
int buttonStatus;
int buttonVal;
void setup (){
Serial.begin(115200);
pinMode(BUTTON, INPUT_PULLUP);
digitalWrite(SS, HIGH);
SPI.begin();
SPI.setClockDivider(SPI_CLOCK_DIV8);
}
void loop (){
byte masterSend;
buttonStatus = digitalRead(BUTTON);
if (buttonStatus == HIGH){
buttonVal = 1;
}else{
buttonVal = 0;
}
digitalWrite(SS, LOW);
masterSend = buttonVal;
SPI.transfer(masterSend);
digitalWrite(SS, HIGH);
delay(200);
}
5. Video[kembali]
6. Kondisi[kembali]
Percobaan 2 kondisi 12: Ganti LED menjadi Buzzer, Buatlah kondisi awal Buzzer mati, lalu hidup dengan delay 1000 ms
Analisa :
1. Jelaskan transmisi
data pada SPI dan gambarkan timing diagram dari transmisi data pada SPI
Jawab :
Serial Peripheral
Interface ( SPI ) merupakan salah satu mode komunikasi serial synchrounous kecepatan
tinggi yang dimiliki oleh ATmega 328.. Dalam
koneksi SPI, device yang terhubung satu sama lain akan bersifat Full Duplex,
yaitu ada device yang bertindak sebagai Master dan Slave.
SPI
beroperasi berdasarkan shift register baik master device maupun slave device,
keduanya akan mempunyai 8 bit shift register. Namun tergantung dari berbagai
macam arsitektur mikrokontroler, ada yang bisa memiliki 10 bit ataupun 12 bit
shift register.
Untuk
memulai komunikasi, bus master melakukan konfigurasi clock, dengan catatan
frekuensi atau kecepatan transfer data antara SPI master device dan slave
device harus sama, biasanya bisa mencapai beberapa MHz. Master akan memilih
perangkat slave dengan mengeluarkan logika 0, lalu master akan menunggu proses yang
telah dijadwalkan di master itu sendiri seperti uratan intrupsi timer, konversi analog ke digital (ADC), dll. Lalu setelah periode itu selesai master akan
mengeluarkan clock yang pertAnda akan dimulainya proses komunikasi Serial.
Setiap
satu clock SPI dilakukan, maka akan terjadi komunikasi full duplex antara
master device dengan slave device. Master mengirimkan satu Bit pada line MISO,
lalu slave akan membacanya. Setelah itu, pada line MISO slave device akan
mengirimkan data kembali ke master device dan master akan membacanya. Urutan
atau sekuen ini akan bertahan seperti di atas meskipun kita tidak menggunakan
komunikasi Full Duplex atau hanya menggunakan satu line komunikasi saja
(seperti simplex ).
Transmisi
data akan melibatkan dua shift register dari beberapa ukuran data yang
diberikan seperti 8 bit, 10 bit ataupun 12 bit. Namun pada umunya digunakan 8
bit shift register. Keduanya akan terkoneksi dalam topologi ring secara
virtual. Data yang dikirimkan biasanya akan bergeser satu per satu dari
bit pertama hingga bit kedelapan. Setelah register bergeser keluar, berarti
master dan slave sudah bertukar data. Lalu selanjutnya akan bergantian slave
dan master. Jika data yang dikirim banyak, maka shift register akan diisi ulang
dengan data yang baru. Lalu proses pengirimannya pun diulang. Proses pengiriman
akan dihentikan jika master mengirim sinyal toggle untuk mengakhiri pemilihan
slave.
Pada
gambar 4, bisa kita lihat saat clock dari master memberikan ta nda ke slave
device, shift register akan menggeser data di bit A0 dari master, menempati bit
ke 7 dari slave device. Lalu bit B0 dari slave device akan menempati bit ke 7
dari master device. Begitulah proses berulang dan terjadi setiap ada clock dari
master.
Pada gambarke 5,
kita bisa lihat saat clock ke 3 dari master device yang mengakibatkan 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. Hal ini akan berjalan sesuai dari perintah clock dari master.
Data dari tiap bit baik dari master maupun slave device akan bergeser 1 bit
sesuai dengan clock dari master. Selanjutnya kita akan melihat apa yang terjadi
saat clock mencapai hitungan ke 8.
pada
gambar 6, semua data sudah berpindah dari master ke slave dan dari slave ke
master.
7. Link Download[kembali]
Rangkaian proteus klik disini
Video simulasi klik disini
Flowchart klik disini
File listing program Master klik disini
File listing program Slave klik disini
Library Arduino Klik disini
Datasheet arduino disini
HTML klik disini
Tidak ada komentar:
Posting Komentar