Menyalakan 4 LED Dengan 4 Push Button Menggunakan Arduino UNO

Bismillahirrahmanirrahim

Assalamu’alaikum warahmatullahi wabarakatuh

Pada kesempatan ini saya akan membuat project Menyalakan 4 LED Dengan 4 Push Button Menggunakan Arduino UNO. Disini saya akan menggunakan  pin 2, 3, 4, 5 sebagai input, dan pin 10, 11, 12, 13 sebagai output pada Arduino UNO untuk Menyalakan LED Menggunakan Push Button. saya akan menjelaskan mulai dari hardware dan software serta cara kerjanya, agar para pembaca dapat mengerti dengan apa yang saya sampaikan . Aamiin.

Alat dan Bahan

  • 4 Buah LED 5mm atau LED 3mm (Warna Bebas)
  • 4 Buah Push Button
  • 4 Buah Resistor 220 Ω (Ohm)
  • Kabel Jumper secukupnya
  • 1 Buah Protoboard
  • 1 Buah Arduino

Rangkaian Menyalakan 4 LED Dengan 4 Push Button Menggunakan Arduino UNO

menyalakan-4-led-dengan-4-push-button-menggunakan-arduino-uno

Sketch Program Menyalakan 4 LED Dengan 4 Push Button Menggunakan Arduino UNO

ada beberapa program untuk menjalakan program ini saya akan memberikan 2 contoh program.

Sketch Program Pertama :

unsigned int inputPin[] = {2,3,4,5}; // mengubah pin 2, 3, 4, 5 sebagai inputPin
unsigned int ledPin[] = {10,11,12,13}; // mengubah pin 10, 11, 12, 13 sebagai ledPin

void setup() 
{
//Sebuah Variable global yang disimpan pada awal program di fungstion setup(). serta Sebuah variable ini di deklarasikan pada saat block function atau block statement pengulangan, dan hanya dapat di gunakan pada block yang bersangkutan.

 for(int indeks = 0; indeks < 4; indeks++) 
 { 
 pinMode(ledPin[indeks], OUTPUT); //mengubah ledPin sebagai OUTPUT
 pinMode(inputPin[indeks], INPUT); //mengubah inputPin sebagai INPUT
 
 digitalWrite(inputPin[indeks],HIGH); 
 //membaca dan memberi status inputPin dengan indeks sesuai dengan nilainya.
 } 
} 

void loop() 
{ 
 for(int indeks = 0; indeks < 4; indeks++) 
 { 
 int val = digitalRead(inputPin[indeks]); //membaca nilai dari indeks
 if (val == LOW) // cek switch yang ditekan 
 { 
 digitalWrite(ledPin[indeks], HIGH); //bila switch ditekan maka menyala
 } 
 else 
 { 
 digitalWrite(ledPin[indeks], LOW); //apabila tidak ada maka mati
 } 
 } 
}

Sketch Program Kedua :

int outputPin10 = 10;
int outputPin11 = 11;
int outputPin12 = 12;
int outputPin13 = 13;

int inputPin2 = 2; // tombol untuk LED 10
int inputPin3 = 3; // tombol untuk LED 11
int inputPin4 = 4; // tombol untuk LED 12
int inputPin5 = 5; // tombol untuk LED 13

int kondisiInputPin2 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin3 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin4 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin5 = 0; //kondisi awal tombol 0 = mati

void setup()
// memberikan status pin menjadi output atau input
{
   pinMode(outputPin10, OUTPUT);
   pinMode(outputPin10, OUTPUT);
   pinMode(outputPin10, OUTPUT);
   pinMode(outputPin10, OUTPUT);

   pinMode(inputPin2, INPUT);
   pinMode(inputPin3, INPUT);
   pinMode(inputPin4, INPUT);
   pinMode(inputPin5, INPUT);
}

void loop()
{
   kondisiInputPin2 = digitalRead(inputPin2);
   kondisiInputPin3 = digitalRead(inputPin3);
   kondisiInputPin4 = digitalRead(inputPin4);
   kondisiInputPin5 = digitalRead(inputPin5);
  
   if (kondisiInputPin2 == HIGH) // jika tombol pin 2 ditekan
   {
      digitalWrite(outputPin10, HIGH); // LED pin 10 menyala
   }
   else if (kondisiInputPin3 == HIGH) // jika tombol pin 3 ditekan
   {
      digitalWrite(outputPin11, HIGH); // LED pin 11 menyala
   }
   else if (kondisiInputPin4 == HIGH) // jika tombol pin 4 ditekan
   {
      digitalWrite(outputPin12, HIGH); // LED pin 12 menyala
   }
   else if (kondisiInputPin5 == HIGH) // jika tombol pin 5 ditekan
   {
      digitalWrite(outputPin13, HIGH); // LED pin 13 menyala
   }
   else
   {
      digitalWrite(outputPin10,LOW); // LED pin 10 mati
      digitalWrite(outputPin11,LOW); // LED pin 11 mati
      digitalWrite(outputPin12,LOW); // LED pin 12 mati
      digitalWrite(outputPin13,LOW); // LED pin 13 mati
   }
}

Keterangan :

  • Fungsi void setup () dalam sebuah program arduino adalah semua perintah yang akan di baca sekali.
  • Fungsi void loop () dalam sebuah program arduino adalah semua perintah yang akan di baca berulang-ulang.

Hasil Project Menyalakan 4 LED Dengan 4 Push Button Menggunakan Arduino UNO

hasil dari project ini adalah ketika menekan push button pin 2  maka led pada pin 10 akan menyala, ketika menekan push button pin 3  maka led pada pin 11 akan menyala, ketika menekan push button pin 4  maka led pada pin 12 akan menyala, dan ketika menekan push button pin 5  maka led pada pin 13 akan menyala.

 

Terimakasih, saya harap blog ini dapat bermanfaat, dan apa bila ada pertanyaan jangan malu untuk bertanya

Wassalamu’alaikum warahmatullahi wabarakatuh

Subscribe
Notify of
16 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
Muhammad Aldhi Nur Alam


int outputPin10 = 10;
int outputPin11 = 11;
int outputPin12 = 12;
int outputPin13 = 13;

int inputPin2 = 2; // tombol untuk LED 10
int inputPin3 = 3; // tombol untuk LED 11
int inputPin4 = 4; // tombol untuk LED 12
int inputPin5 = 5; // tombol untuk LED 13

int kondisiInputPin2 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin3 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin4 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin5 = 0; //kondisi awal tombol 0 = mati

void setup()
// memberikan status pin menjadi output atau input
{
pinMode(outputPin10, OUTPUT);
pinMode(outputPin10, OUTPUT);
pinMode(outputPin10, OUTPUT);
pinMode(outputPin10, OUTPUT);

pinMode(inputPin2, INPUT);
pinMode(inputPin3, INPUT);
pinMode(inputPin4, INPUT);
pinMode(inputPin5, INPUT);
}

void loop()
{
kondisiInputPin2 = digitalRead(inputPin2);
kondisiInputPin3 = digitalRead(inputPin3);
kondisiInputPin4 = digitalRead(inputPin4);
kondisiInputPin5 = digitalRead(inputPin5);

if (kondisiInputPin2 == HIGH) // jika tombol pin 2 ditekan
{
digitalWrite(outputPin10, HIGH); // LED pin 10 menyala
}
else if (kondisiInputPin3 == HIGH) // jika tombol pin 3 ditekan
{
digitalWrite(outputPin11, HIGH); // LED pin 11 menyala
}
else if (kondisiInputPin4 == HIGH) // jika tombol pin 4 ditekan
{
digitalWrite(outputPin12, HIGH); // LED pin 12 menyala
}
else if (kondisiInputPin5 == HIGH) // jika tombol pin 5 ditekan
{
digitalWrite(outputPin10,LOW); // LED pin 10 mati
digitalWrite(outputPin11,LOW); // LED pin 11 mati
digitalWrite(outputPin12,LOW); // LED pin 12 mati
digitalWrite(outputPin13,LOW); // LED pin 13 mati

kondisiInputPin2 = 0;
kondisiInputPin3 = 0;
kondisiInputPin4 = 0;
kondisiInputPin5 = 0;
}
else
{
digitalWrite(outputPin10,LOW); // LED pin 10 mati
digitalWrite(outputPin11,LOW); // LED pin 11 mati
digitalWrite(outputPin12,LOW); // LED pin 12 mati
digitalWrite(outputPin13,LOW); // LED pin 13 mati
}
}

coding di atas, jika tombol pin 5 di tekan, maka semua button akan mereset, menjadi mati.

maaf lama di balasnya, kemarin kemarin lagi fokus skripsi dan sedang sakit di rawat juga.
terimakasih

Azija Zafia
Azija Zafia
5 years ago

gan bisa enggak buat program yang dia logika kerjanya jika tombol satu ditekan maka motor dc 12V akan berputar searah jarum jam dan mati jika mengenai sensor IR dua,, dan jika tombol dua ditekan maka motor akan berputar berlawanan arah jarum jam dan akan mati jika mengenai sensor IR 1,,,dia pakai l298n gan tapi outpunya cuman pakai satu motor aja gan…..terimakaih gan….owh iya gan saya cewek bukan mas-mas gan…..

Reza Samudra
Reza Samudra
4 years ago

Gan mau tanya, kalo buat rangkaian OR atau AND gimana ya ? maksudnya saya mau kontrol 1 output dengan 2 input

Anonymous *
4 years ago

Mas aku mau tanya urgent nih .. itu pake proteus versi apa? Lib sama modelnya ko beda yah sama punya ku proteus 8.7
.
.
Aku punya projek kecil tentang konveyer dengan push button kira2 bisa tolong aku ndak?
Terima kasih

Muhammad Aldhi Nur Alam

maaf lama di balasnya, kemarin kemarin lagi fokus skripsi dan sedang sakit di rawat juga. terimakasih

Muhammad Aldhi Nur Alam

tidak ada gan, mungkin anda bisa menambah lagi coding “if – else” nya sesuai pin yang anda inginkan.
atau anda males dengan coding “if – else” yang aga ribet, bisa dengan cara coding sistem “case”.
semoga bermfaat.

Muhammad Aldhi Nur Alam


#include

#define TxD 4
#define RxD 3
#define LED_PIN 13

SoftwareSerial bluetoothSerial(TxD, RxD);

char bluetoothcontrol;

void setup() {
bluetoothSerial.begin(9600);
Serial.begin(9600);
pinMode(LED_PIN, OUTPUT)
;
}

void loop() {
if(bluetoothSerial.available()){
bluetoothcontrol = bluetoothSerial.read();
Serial.println(bluetoothcontrol);
if(bluetoothcontrol=='1'){
digitalWrite(LED_PIN, HIGH);
}
if(bluetoothcontrol=='2'){
digitalWrite(LED_PIN, LOW);
}
}
}

dalam coding tersebut.
ketika mengirim “1” kepada arduino maka led pin menyala atau high
ketika mengirim “2” kepada arduino maka led pin mati atau low

Muhammad Aldhi Nur Alam

maaf lama di balasnya, kemarin kemarin lagi fokus skripsi dan sedang sakit di rawat juga.

Azija Zafia
Azija Zafia
5 years ago

saya kira itu cukup dengan menambah led dan button yang kurang saja…
dan tinggal mengcopypaste program yang sudah ada…
hanya saja dia tidak menggunakan arduino uno melainkan arduino mega…
int outputPin1 = 1;
int outputPin2 = 2;
int outputPin3 = 3;
int outputPin4 = 4;
int outputPin5 = 5;
int outputPin6 = 6;
int outputPin7 = 7;
int outputPin8 = 8;
int outputPin9 = 9;
int outputPin10 = 10;

int inputPin31 = 31; // tombol untuk LED 1
int inputPin32 = 32; // tombol untuk LED 2
int inputPin33 = 33; // tombol untuk LED 3
int inputPin34 = 34; // tombol untuk LED 4
int inputPin35 = 35; // tombol untuk LED 5
int inputPin36 = 36; // tombol untuk LED 6
int inputPin37 = 37; // tombol untuk LED 7
int inputPin38 = 38; // tombol untuk LED 8
int inputPin39 = 39; // tombol untuk LED 9
int inputPin40 = 40; // tombol untuk LED 10

int kondisiInputPin31 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin32 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin33 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin34 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin35 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin36 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin37 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin38 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin39 = 0; //kondisi awal tombol 0 = mati
int kondisiInputPin40 = 0; //kondisi awal tombol 0 = mati

void setup()
// memberikan status pin menjadi output atau input
{
pinMode(outputPin1, OUTPUT);
pinMode(outputPin2, OUTPUT);
pinMode(outputPin3, OUTPUT);
pinMode(outputPin4, OUTPUT);
pinMode(outputPin5, OUTPUT);
pinMode(outputPin6, OUTPUT);
pinMode(outputPin7, OUTPUT);
pinMode(outputPin8, OUTPUT);
pinMode(outputPin9, OUTPUT);
pinMode(outputPin10, OUTPUT);

pinMode(inputPin31, INPUT);
pinMode(inputPin32, INPUT);
pinMode(inputPin33, INPUT);
pinMode(inputPin34, INPUT);
pinMode(inputPin35, INPUT);
pinMode(inputPin36, INPUT);
pinMode(inputPin37, INPUT);
pinMode(inputPin38, INPUT);
pinMode(inputPin39, INPUT);
pinMode(inputPin40, INPUT);
}

void loop()
{
kondisiInputPin31 = digitalRead(inputPin31);
kondisiInputPin32 = digitalRead(inputPin32);
kondisiInputPin33 = digitalRead(inputPin33);
kondisiInputPin34 = digitalRead(inputPin34);
kondisiInputPin35 = digitalRead(inputPin35);
kondisiInputPin36 = digitalRead(inputPin36);
kondisiInputPin37 = digitalRead(inputPin37);
kondisiInputPin38 = digitalRead(inputPin38);
kondisiInputPin39 = digitalRead(inputPin39);
kondisiInputPin40 = digitalRead(inputPin40);

if (kondisiInputPin31 == HIGH) // jika tombol pin 31 ditekan
{
digitalWrite(outputPin1, HIGH); // LED pin 1 menyala
}
else if (kondisiInputPin32 == HIGH) // jika tombol pin 32 ditekan
{
digitalWrite(outputPin2, HIGH); // LED pin 2 menyala
}
else if (kondisiInputPin33 == HIGH) // jika tombol pin 33 ditekan
{
digitalWrite(outputPin3, HIGH); // LED pin 3 menyala
}
else if (kondisiInputPin34 == HIGH) // jika tombol pin 34 ditekan
{
digitalWrite(outputPin4, HIGH); // LED pin 4 menyala
}
else if (kondisiInputPin35 == HIGH) // jika tombol pin 35 ditekan
{
digitalWrite(outputPin5, HIGH); // LED pin 5 menyala
}
else if (kondisiInputPin36 == HIGH) // jika tombol pin 36 ditekan
{
digitalWrite(outputPin6, HIGH); // LED pin 6 menyala
}
else if (kondisiInputPin37 == HIGH) // jika tombol pin 37 ditekan
{
digitalWrite(outputPin7, HIGH); // LED pin 7 menyala
}
else if (kondisiInputPin38 == HIGH) // jika tombol pin 38 ditekan
{
digitalWrite(outputPin8, HIGH); // LED pin 8 menyala
}
else if (kondisiInputPin39 == HIGH) // jika tombol pin 39 ditekan
{
digitalWrite(outputPin9, HIGH); // LED pin 9 menyala
}
else if (kondisiInputPin40 == HIGH) // jika tombol pin 40 ditekan
{
digitalWrite(outputPin10, HIGH); // LED pin 10 menyala
}
else
{
digitalWrite(outputPin1,LOW); // LED pin 1 mati
digitalWrite(outputPin2,LOW); // LED pin 2 mati
digitalWrite(outputPin3,LOW); // LED pin 3 mati
digitalWrite(outputPin4,LOW); // LED pin 4 mati
digitalWrite(outputPin5,LOW); // LED pin 5 mati
digitalWrite(outputPin6,LOW); // LED pin 6 mati
digitalWrite(outputPin7,LOW); // LED pin 7 mati
digitalWrite(outputPin8,LOW); // LED pin 8 mati
digitalWrite(outputPin9,LOW); // LED pin 9 mati
digitalWrite(outputPin10,LOW); // LED pin 10 mati
}
}

mohon maaf gan

Dhe Mahesa Gumilang
Dhe Mahesa Gumilang
4 years ago

mas ini, kalo push button ditekan nyala… terus kalo ditekan lagi mati?

Dhe Mahesa Gumilang
Dhe Mahesa Gumilang
4 years ago

Mas adakah contoh program (On-Off led dengan PushButton yang kondisinya tersimpan di eeprom… Kalo pb di tekan led nyala…ditekan lagi led mati….. kalo jack dc di cabut terus dicolokin lagi…masuk kondisi led terakhir nyala… terimakasi mas

T- Sowite
T- Sowite
4 years ago

kalau running text dengan pushbutton gimana mas,, contoh pushbutton 1 menampilkan nilai sensor 1, pushbutton 2 menampilkan sensor 2 pada 1 led