1. Kondisi[kembali]
Buatlah kondisi awal LED mati, lalu hidup berkedip dengan delay 500 ms.
2. Rangkaian Simulasi [kembali]
3. Flowchart [kembali]
Flowchart Master
Flowchart Slave
4. Listing Program [kembali]
//MASTER
#define button 2
//Deklarasi pin 2 untuk button
void setup() //Semua kode dalam fungsi ini
dieksekusi sekali
{
pinMode(button, INPUT_PULLUP);
Serial.begin(9600); //Set baud rate 9600
}
void loop() //Semua kode dalam fungsi ini
dieksekusi berulang
{
int nilai = digitalRead(button);
//Button ditekan
if (nilai == 0)
{
Serial.print("1");
}
else
{
Serial.print("2");
}
delay(200);
}
|
//SLAVE
#define led 12
//Deklarasi pin 12 untuk LED
void setup() //Semua kode dalam fungsi ini dieksekusi
sekali
{
pinMode(led, OUTPUT); //Deklarasi LED
sebagai output
Serial.begin(9600); //Set baud rate 9600
}
void loop() //Semua program
dalam fungsi ini dieksekusi berulang
{
if (Serial.available() > 0)
{
int data = Serial.read();
if (data == '1') //Jika data yang
dikirimkan berlogika
{
digitalWrite(led, HIGH); //LED menyala
}
else
{
digitalWrite(led, LOW); //LED mati
}
}
}
|
5. Video [kembali]
.6. Analisa [kembali]
Pada rangkaian inin dilakukan komunikasi UART (Universal Asynchronous Receiver-Transmitter), yaitu komunikasi perangkat lunak yang tidak mempertimbangkan singkronisasi waktu pada penerima dan pengirim data. Disini master akan selalu bernilai HIGH, namun apabila button ditekan maka pin master akan terhubung dengan ground sehingga akan menerima hasil pembacaan LOW. Hasil pembacaan LOW ini selanjutnya akan dikirimkan ke slave untuk memerintahkan slave agar menyalakan lampu LED dengan berkedip-kedip.
7. Link Download [kembali]
Link Download untuk ProteusLink Download untuk Video
Link Download untuk Program
Link Download untuk Flowchart
Link Download untuk HTML
Link Download untuk Datasheet Arduino
Tidak ada komentar:
Posting Komentar