Minggu, 13 September 2020

Arduino Projects : LED Berjalan (Running LED) + 5 Animasi LED

Arduino Project - Project yang akan kita buat hari ini adalah LED berjalan atau running LED. Pada project ini saya akan berikan 8 program animasi LED. Komponen yang kamu perlukan untuk project ini :

  • 1x Arduino Uno
  • 1x Breadboard
  • 4x LED
  • 4x Resistor 220 ohm
  • 5x Kabel Jumper
Lalu buatlah rangkaian seperti gambar dibawah ini :

Catatan :
  • Pin GND arduino terhubung ke breadboard (kabel hitam).
  • Pin Katoda LED terhubung ke GND melalui resistor 220 ohm.
  • pin Anoda LED 1 terhubung ke pin 2 arduino (kabel merah).
  • pin Anoda LED 2 terhubung ke pin 3 arduino (kabel kuning).
  • pin Anoda LED 3 terhubung ke pin 4 arduino (kabel hijau).
  • pin Anoda LED 4 terhubung ke pin 5 arduino (kabel oren).
Kemudian salinlah kode program dibawah ini ke dalam arduino IDE:
Running LED
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;

void setup(){
 pinMode(led1, OUTPUT);
 pinMode(led2, OUTPUT);
 pinMode(led3, OUTPUT);
 pinMode(led4, OUTPUT);
} 

void loop(){
 digitalWrite(led1, HIGH);
 digitalWrite(led2, LOW);
 digitalWrite(led3, LOW);
 digitalWrite(led4, LOW);
 delay(500);
 digitalWrite(led1, LOW);
 digitalWrite(led2, HIGH);
 digitalWrite(led3, LOW);
 digitalWrite(led4, LOW);
 delay(500);
 digitalWrite(led1, LOW);
 digitalWrite(led2, LOW);
 digitalWrite(led3, HIGH);
 digitalWrite(led4, LOW);
 delay(500);
 digitalWrite(led1, LOW);
 digitalWrite(led2, LOW);
 digitalWrite(led3, LOW);
 digitalWrite(led4, HIGH);
 delay(500);
 digitalWrite(led1, LOW);
 digitalWrite(led2, LOW);
 digitalWrite(led3, LOW);
 digitalWrite(led4, LOW);
 delay(500);
}

Penjelasan kode :
  • Semua perintah yang ada didalam void setup() akan dibaca sekali.
  • Semua perintah yang ada didalam void loop() akan dibaca berulang kali.
  • int led1 s/d int led4 merupakan sebuah variabel yang bertipe data integer.
  • Pada variabel int led1 = 2; nilai 2 menunjukkan nomor pin yang digunakan pada arduino.
  • pinMode untuk mengatur apakah pin arduino yang digunakan akan menjadi INPUT atau OUTPUT.
  • digitalWrite untuk mengatur apakah pin arduino akan dibuat HIGH (hidup) atau LOW (mati).
  • delay untuk memberikan jeda (500 = 0,5 detik).

Animasi 1 : Flip-Flop 2 LED
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;

void setup(){
 pinMode(led1, OUTPUT);
 pinMode(led2, OUTPUT);
 pinMode(led3, OUTPUT);
 pinMode(led4, OUTPUT);
} 

void loop(){
 digitalWrite(led1, HIGH);
 digitalWrite(led2, HIGH);
 digitalWrite(led3, LOW);
 digitalWrite(led4, LOW);
 delay(500);
 digitalWrite(led1, LOW);
 digitalWrite(led2, LOW);
 digitalWrite(led3, HIGH);
 digitalWrite(led4, HIGH);
 delay(500);
}

Animasi 2 : Left In Left Out (LILO)
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;

void setup() {
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
}

void loop() {
  digitalWrite(led1, HIGH);
  delay(500);
  digitalWrite(led2, HIGH);
  delay(500);
  digitalWrite(led3, HIGH);
  delay(500);
  digitalWrite(led4, HIGH);
  delay(500);
  digitalWrite(led1, LOW);
  delay(500);
  digitalWrite(led2, LOW);
  delay(500);
  digitalWrite(led3, LOW);
  delay(500);
  digitalWrite(led4, LOW);
  delay(500);
}
Animasi 3 : Right In Left Out (RILO)
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;

void setup() {
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
}

void loop() {
  digitalWrite(led4, HIGH);
  delay(500);
  digitalWrite(led3, HIGH);
  delay(500);
  digitalWrite(led2, HIGH);
  delay(500);
  digitalWrite(led1, HIGH);
  delay(500);
  digitalWrite(led1, LOW);
  delay(500);
  digitalWrite(led2, LOW);
  delay(500);
  digitalWrite(led3, LOW);
  delay(500);
  digitalWrite(led4, LOW);
  delay(500);
}
Animasi 4 : Left In Right Out (LIRO)
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;

void setup() {
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
}

void loop() {
  digitalWrite(led1, HIGH);
  delay(500);
  digitalWrite(led2, HIGH);
  delay(500);
  digitalWrite(led3, HIGH);
  delay(500);
  digitalWrite(led4, HIGH);
  delay(500);
  digitalWrite(led4, LOW);
  delay(500);
  digitalWrite(led3, LOW);
  delay(500);
  digitalWrite(led2, LOW);
  delay(500);
  digitalWrite(led1, LOW);
  delay(500);
}
Animasi 5 : Right In Right Out (RIRO)
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;

void setup() {
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
}

void loop() {
  digitalWrite(led4, HIGH);
  delay(500);
  digitalWrite(led3, HIGH);
  delay(500);
  digitalWrite(led2, HIGH);
  delay(500);
  digitalWrite(led1, HIGH);
  delay(500);
  digitalWrite(led4, LOW);
  delay(500);
  digitalWrite(led3, LOW);
  delay(500);
  digitalWrite(led2, LOW);
  delay(500);
  digitalWrite(led1, LOW);
  delay(500);
}

Hei terima kasih ya udah berkunjung ke blog pribadi ku. Salam kenal untuk kamu. Datang lagi ya lain kali. Kamu bisa kunjungi juga sosial media ku dibawah ini ya.

0 komentar:

Posting Komentar

Contact Me

Phone :

+62 853 6987 xxxx

Address :

Batam, Kepulauan Riau,
Indonesia

Email :

jamaljumaidi@gmail.com