Home » Microcontroller » Arduino #3: Rangkaian dan Program Running LED

Arduino #3: Rangkaian dan Program Running LED

by YogaBayu
by YogaBayu

Kali ini saya akan membuat sebuah project sederhana dengan menggunakan LED dan tentunya mikrokontroler arduino. Untuk teman teman yang belum mengetahui apa itu running LED, Running LED adalah animasi lampu yang bergerak dari satu LED ke LED lainnya secara periodik. Contoh running LED adalah papan nama elektronik yang sering kita temui dijalan.

Running LED dapat kita buat desainnya sesuka hati seperti membuat pola tertentu, gambar, atau yang lain. Sebenarnya project ini dapat dibuat tanpa menggunakan arduino yaitu dengan memanfaatkan IC NE555 serta IC 4017. Tetapi cara tersebut memerlukan bahan yang lebih banyak dan agak ribet tentunya.

Sedikit info kenapa saya disini menggunakan cara arduino dibanding rangkaian NE555 + IC 4017 ? karena fungsi dari kedua IC tersebut yaitu IC NE555 yang merupakan IC jenis timer dan IC 4017 sebagai jenis IC counter dapat digantikan dengan fungsi timer pada arduino. (teman -teman dapat melihat tentang timer pada aduino lebih jelas pada datasheet Arduino).

Pada Project kali ini kita membutuhkan beberapa bahan yaitu:

  • Mikrokontroler Arduino (disini saya menggunakan jenis Arduino UNO)
  • 4 buah LED 5 mm
  • 4 buah resistor ukuran 470 ohm
  • kabel Jumper secukupnya
  • projectboard (jika membutuhkan )

Rangkaian

Berikut rangkaian dari project running LED ini:

wiring led
wiring LED

Penjelasan rangkaian:

  • Pin Digital 2 -> Resistor 470 -> Anoda LED -> Katoda LED -> GND
  • Pin Digital 4 -> Resistor 470 -> Anoda LED -> Katoda LED -> GND
  • Pin Digital 6 -> Resistor 470 -> Anoda LED -> Katoda LED -> GND
  • Pin Digital 8 -> Resistor 470 -> Anoda LED -> Katoda LED -> GND

Rangkaian running LED diatas adalah rangakain yang sangat sederhana. Kalau ada pertanyaan “Kenapa menggunakan resistor 470 sebelum LED ?” jawabannya yaitu untuk menghambat arus. Penempatan resistor ini dapat sebelum atau sesudah LED, yang penting arus belum mengarah ke ground.

Untuk ukuran nya sendiri dapat diganti dengan resistor yang teman-teman miliki, yang terpenting jangan terlalu besar juga jangan terlalu kecil karena semakin besar resistor mempengaruhi terang nya LED.

Mungkin ada yang timbul pertanyaan “kalau semisal tidak memakai LED bagaimana ?” jawaban nya adalah kalau teman-teman menggunakan arduino uno wajib pakai resistor untuk ukuran LED 5mm karena output pin digital arduino uno adalah 5VDC yang dimungkinkan dapat merusak LED teman-teman.

Satu hal lagi desain rangkaian di atas saya buat menggunakan software Eagle, dengan fungsi utama untuk desain rangkaian elektronika.

Selain dengan menggunakan wagle teman-teman dapat mendesain dengan software desain yang lain seperti proteus atau pun fritzing. Semua software tersebut tentunya terdapat kelebihan dan kekurangan nya masing – masing.

Program

Berikut adalah program arduino running LED dengan menggunakan software Arduino IDE:

void setup() {
pinMode(2,OUTPUT);
pinMode(4,OUTPUT);
pinMode(6,OUTPUT);
pinMode(8,OUTPUT);
}

void loop() {
  digitalWrite(2,HIGH);
  digitalWrite(4,LOW);
  digitalWrite(6,LOW);
  digitalWrite(8,LOW);
  delay(500);

  digitalWrite(2,LOW);
  digitalWrite(4,HIGH);
  digitalWrite(6,LOW);
  digitalWrite(8,LOW);
  delay(500);
  
  digitalWrite(2,LOW);
  digitalWrite(4,LOW);
  digitalWrite(6,HIGH);
  digitalWrite(8,LOW);
  delay(500);
  
  digitalWrite(2,LOW);
  digitalWrite(4,LOW);
  digitalWrite(6,LOW);
  digitalWrite(8,HIGH);
  delay(500);
  
}

Penjelasan Program:

Pada void Setup() terdapat program pinMode(2,OUTPUT); yang artinya adalah pin digital 2 digunakan sebagai OUTPUT ke LED (untuk project ini).

Deklarasi pin arduino (UNO,Mega,Leonardo,dll) untuk pin digital langsung ditulis nomor pin nya, sedangkan untuk pin Analog menambahkan huruf “A” didepan nomor pin.

Contoh:

pinMode(A2,INPUT) yang artinya pin analog 2 arduino digunakan untuk Input atau menerima inputan. dan pin analog hanya bisa digunakan sebagai pin INPUTdan tidak bisa digunakan untuk pin OUTPUT .

Selanjutnya pada bagian

digitalWrite(2,HIGH) yang berarti pin 2 arduino yang tadi digunakan untuk OUTPUT diberi logika high atau 1 yang akan mengeluarkan signal listrik sebesar 5 V (output pin digital).

digitalWrite(2,LOW) berarti pin OUTPUT digital 2 arduino diberi logika LOW / 0 yang akan mengeluarkan signal listrik sebesar 0 V.

delay(500); berarti jeda waktu atau arduino akan berhenti selama 500ms (pada arduino pewaktu dimulai dari ms / millisecond) sebelum melanjutkan ke program dibawahnya.

You may also like