1. KONDISI [KEMBALI]
Tambahkan Buzzer sebagai input. Sehingga input yang tersedia adalah LED dan Buzzer
- //MASTER#include <SPI.h> //Deklarasi library SPIvoid setup (void) {Serial.begin(115200); //Set baud rate 115200digitalWrite(SS, HIGH);// disable Slave SelectSPI.begin ();SPI.setClockDivider(SPI_CLOCK_DIV8); //divide the clock by 8}void loop (void) {char c;digitalWrite(SS, LOW); //enable Slave Select// send test stringfor (const char * p = "Hello, world!\r" ; c = *p; p++){SPI.transfer (c);Serial.print(c);}digitalWrite(SS, HIGH); // disable Slave Selectdelay(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 outputSPCR |= _BV(SPE); // turn on SPI in slave modeindx = 0; // buffer emptyprocess = false;SPI.attachInterrupt(); // turn on interrupt}ISR (SPI_STC_vect) // SPI interrupt routine{byte c = SPDR; // read byte from SPI Data Registerif (indx < sizeof buff) {buff [indx++] = c; // save data in the next index in the array buffif (c == '\r') //check for the end of the wordprocess = true;}}void loop (void) {if (process) {process = false; //reset the processSerial.println (buff); //print the array on serial monitorindx = 0; //reset button to zero}}
6. Prinsip Kerja
Pada rangkaian ini dilakukan komunikasi SPI( Serial Periperhal Interface) yang dilakukan komunikasi data secara seri yaitu data dikirimkan secara berurutan dari satu saluran.
Pada komunikasi SPI ada 4 pin yang digunakan untuk komunikasi antara 2 arduino yaitu MISO( Master Input Slave Output) , MOSI( Master Output Slave Input) , SCLK dan SS( Slave Select).
Pada rangkaian MASTER akan mengirimkan output berupa string di dalam program sehingga saat mengirim data akan dipakai pin MOSI karena MASTER mengirim output dan SLAVE akan menerima input, jika SLAVE ingin mengirim data kepada MASTER akan dipakai pin MISO karena MASTER akan menerima input dan SLAVE mengirim output.
Untuk komunikasi data maka pin SCLK akan berfungsi untuk memberikan sinyal clock sebagai sinkronisasi saat komunikasi.
Dari rangkaian pada MASTER terdapat button yang dirangkai dengan resistor dan VCC,dimana saat button ditekan maka dia akan bersifat close lalu arus mengalir ke pin 5 dan mengirim logika 1 ke dalam MASTER berarti mengirim data dan nantinya MASTER akan memberikan output kepada SLAVE sehingga pada kaki 5 dan 4 SLAVE juga akan memberikan logika 1 berarti data diterima lalu ada arus mengalir dan dapat menghidupkan LED dengan delay 2 detik serta menghidupkan buzzer
Pada komunikasi SPI ada 4 pin yang digunakan untuk komunikasi antara 2 arduino yaitu MISO( Master Input Slave Output) , MOSI( Master Output Slave Input) , SCLK dan SS( Slave Select).
Pada rangkaian MASTER akan mengirimkan output berupa string di dalam program sehingga saat mengirim data akan dipakai pin MOSI karena MASTER mengirim output dan SLAVE akan menerima input, jika SLAVE ingin mengirim data kepada MASTER akan dipakai pin MISO karena MASTER akan menerima input dan SLAVE mengirim output.
Untuk komunikasi data maka pin SCLK akan berfungsi untuk memberikan sinyal clock sebagai sinkronisasi saat komunikasi.
Dari rangkaian pada MASTER terdapat button yang dirangkai dengan resistor dan VCC,dimana saat button ditekan maka dia akan bersifat close lalu arus mengalir ke pin 5 dan mengirim logika 1 ke dalam MASTER berarti mengirim data dan nantinya MASTER akan memberikan output kepada SLAVE sehingga pada kaki 5 dan 4 SLAVE juga akan memberikan logika 1 berarti data diterima lalu ada arus mengalir dan dapat menghidupkan LED dengan delay 2 detik serta menghidupkan buzzer
7. LINK DOWNLOAD [KEMBALI]
Rangkaian Simulasi Proteus (Download)
Program Arduino (Download)
Video Rangkaian (Download)

Tidak ada komentar:
Posting Komentar