Tugas Pendahuluan 1 Modul 3


 [KEMBALI KE MENU SEBELUMNYA]


Percobaan 1 Kondisi 1
Komunikasi UART Menggunakan Arduino

1. Prosedur [Kembali]

  • Rangkai semua komponen 
  • Buat program di aplikasi arduino IDE
  • Setelah selesai masukkan program ke arduino 
  • Jalankan program pada simulasi dan cobakan sesuai kondisi






Prinsip Kerja :

Pada rangkaian percobaan 1 kondisi 1, terdapat dua Arduino Uno yang digunakan, dimana satu Arduino bertindak sebagai master dan yang lainnya sebagai slave. Arduino master terhubung ke bagian input, yaitu dipswitch yang terhubung dalam kondisi pull down. Sedangkan, Arduino slave terhubung ke bagian output, di mana terdapat LED.
Ketika salah satu switch dinyalakan atau berada dalam kondisi high, maka satu LED akan menyala, yakni LED yang terhubung ke pin 2. Namun, jika empat switch dinyalakan atau dalam kondisi high, maka tiga LED akan menyala. Namun, jika tidak dalam kedua kondisi tersebut, maka LED tidak akan menyala.


Flowchart:

Arduino Master

Arduino Slave




Listing Program :
//MASTER
#define DS1 2
#define DS2 3
#define DS3 4
#define DS4 5
#define DS5 6
#define DS6 7
#define DS7 8
#define DS8 9
void setup() 
{ 
 Serial.begin(9600);
 pinMode(DS1, INPUT);
 pinMode(DS2, INPUT);
 pinMode(DS3, INPUT);
 pinMode(DS4, INPUT);
 pinMode(DS5, INPUT);
 pinMode(DS6, INPUT);
 pinMode(DS7, INPUT);
 pinMode(DS8, INPUT);
}
void loop()
{
 int count = 0;
  for (int pin = DS1; pin <= DS8; pin++) {
    count += digitalRead(pin);
  }
 if (count == 1)
 {
 Serial.write('A');
 }
 else if (count == 4)
 {
 Serial.write('B');
 }
 delay(20);
}
//SLAVE
int led[] = {2, 3, 4, 5, 6, 7, 8, 9};
char message;
void setup() 
{ 
 Serial.begin(9600);
 for (int i = 0; i < 8; i++)
 {
 pinMode(led[i], OUTPUT);
 }
}
void loop()
{
 if (Serial.available())
{
 message = Serial.read();
 if (message == 'A')
 {
 digitalWrite(led[0], 1);
 }
 else if (message == 'B')
 {
 digitalWrite(led[2], 1);
 digitalWrite(led[5], 1);
  digitalWrite(led[7], 1);
 }
}
delay(20);
 digitalWrite(led[0], 0);
 digitalWrite(led[1], 0);
 digitalWrite(led[2], 0);
 digitalWrite(led[3], 0);
 digitalWrite(led[4], 0);
 digitalWrite(led[5], 0);
 digitalWrite(led[6], 0);
 digitalWrite(led[7], 0);
}

4. Kondisi [Kembali]

(Semua Switch dalam kondisi Pull-down, 1 switch mengaktifkan 1 led sementara 4 switch mengaktifkan 3 led)

HTML klik disini  
Rangkaian Simulasi  klik disini
Video Simulasi   klik disini
Listing Program Master klik disini
Listing Program Slave klik disini







Komentar

Postingan populer dari blog ini

Kontrol Tanaman Bayam

Tugas Besar - Kontrol Hidroponik Tanaman Mint

Modul 1 Praktikum Sistem Digital