Lap Akhir 2 Modul 3 MIKRO
komunikasi SPI
1. Hardware [Kembali]
2. Gambar Rangkaian Simulasi [Kembali]
3. Flowchart [Kembali]
MASTER
SLAVE
4. List Program [Kembali]
//MASTER
#include <SPI.h> //Deklarasi
library SPI
void
setup (void) {
Serial.begin(115200);
//Set baud rate 115200
digitalWrite(SS,
HIGH);
// disable Slave Select SPI.begin ();
SPI.setClockDivider(SPI_CLOCK_DIV8); //divide the clock by 8
}
void loop
(void) {
char c;
digitalWrite(SS,
LOW); //enable Slave Select
// send
test string
for
(const char * p = "Hello, world!\r" ; c = *p; p++)
{
SPI.transfer
(c);
Serial.print(c);
}
digitalWrite(SS,
HIGH); // disable Slave Select
delay(2000);
}
//SLAVE
#include
<SPI.h>
char buff
[50];
volatile
byte indx;
volatile
boolean process;
void
setup (void) {
Serial.begin
(115200);
pinMode(MISO,
OUTPUT); // have to send on master in so it set as output SPCR |= _BV(SPE); //
turn on SPI in slave mode indx = 0; // buffer empty
process =
false;
SPI.attachInterrupt();
// turn on interrupt
}
ISR
(SPI_STC_vect) // SPI interrupt routine
{
byte c = SPDR; // read byte from SPI Data Register if (indx < sizeof
buff) {
buff [indx++] = c; // save data in the next index in the array buff if
(c == '\r') //check for the end of the word
process =
true;
}
}
void loop
(void) {
if
(process) {
process =
false; //reset the process
Serial.println (buff); //print the array on serial monitor indx = 0; //reset
button to zero
}
}
6. Prinsip Kerja Rangkaian [Kembali]
1
1) Apa pengaruh jika SPI.h tidak
dideklarasikan dalam program
Library SPI.h adalah library khusus bertugas menangani komunikasi serial
sinkron SPI di arduino. Serial sinkron adalah komunikasi data secara serial
yang membutuhkan jalur clock untuk sincronisasi antara transmitter dan
receivernya. Library ini bisa langsung digunakan dalam sketch arduino utama
atau pendukung dari library lain . sebagai contoh , library “Ethernet.h’ atau
SD.h harus menyertakan SPI.h dalam sketch utama karena secara hardware kedua
library ini menggunakan protocol komunikasi SPI.
2) Prinsip kerja SPI
SPI adalah salah satu tipe
komunikasi yang menggunakan 3 jalur yaitu MISO, MOSI dan SCL, dimana arduino
master akan mengirim data ke slave melalui 3 jalur ini dan kaki SS akan memilih
slave mana yang akan dituju dengan memberi logika 0 ke slave yang akan dituju
nantinya. Dan slave akan mengeksekusi apa saja yang akan dikirim oleh master
nantinya.
1.
untuk mengubah data digital dalam format BCD untuk ditampilkan dalam format angka desimal secara visual
Read more at: http://elektronika-dasar.web.id/dekoder-bcd-ke-7-segmen-cmos-4511/
Copyright © Elektronika Dasar
Read more at: http://elektronika-dasar.web.id/dekoder-bcd-ke-7-segmen-cmos-4511/
Copyright © Elektronika Dasar
Fungsi dari dekoder BCD
ke 7 penampil 7 segmen ini adalah untuk mengubah data digital dalam
format BCD untuk ditampilkan dalam format angka desimal secara visual
Read more at: http://elektronika-dasar.web.id/dekoder-bcd-ke-7-segmen-cmos-4511/
Copyright © Elektronika Dasar
Read more at: http://elektronika-dasar.web.id/dekoder-bcd-ke-7-segmen-cmos-4511/
Copyright © Elektronika Dasar
Fungsi dari dekoder BCD
ke 7 penampil 7 segmen ini adalah untuk mengubah data digital dalam
format BCD untuk ditampilkan dalam format angka desimal secara visual
Read more at: http://elektronika-dasar.web.id/dekoder-bcd-ke-7-segmen-cmos-4511/
Copyright © Elektronika Dasar
Read more at: http://elektronika-dasar.web.id/dekoder-bcd-ke-7-segmen-cmos-4511/
Copyright © Elektronika Dasar