// 08 September 2023
// Alfan, Ayum, Rani
// Program Mengakses GPIO dan PWMn
// mengatur pin
const int buttonPin1 = A0; // pin 4 terhubung ke push button
const int buttonpin2 = A1;
const int buttonpin3 = A2;
const int ledPin1 = 1; // pin 5 terhubung ke LED
const int ledpin2 = 2;
const int ledpin3 = 3;
const int ledpin4 = 4;
const int ledpin5 = 5;
const int ledpin6 = 6;
// menambahkan variable untuk menyimpan keadaan pushbutton
int buttonState1 = 0;
int buttonstate2 = 0;
int buttonstate3 = 0;
void setup() {
Serial.begin(115200); // komunikasi serial diatur di 115200
pinMode(buttonPin1, INPUT); // inisialisasi pushbutton sebagai input
pinMode(buttonpin2, INPUT);
pinMode(buttonpin3, INPUT);
pinMode(ledPin1, OUTPUT); // inisialisasi led sebagai output
pinMode(ledpin2, OUTPUT);
pinMode(ledpin3, OUTPUT);
pinMode(ledpin4, OUTPUT);
pinMode(ledpin5, OUTPUT);
pinMode(ledpin6, OUTPUT);
}
void loop() {
buttonState1 = digitalRead(buttonPin1); // membaca nilai pushbutton secara digital dan menyimpannya ke variable buttonState
Serial.println(buttonState1); // menampilkan nilai buttonState di serial monitor
// Jika buttonState bernilai HIGH atau pushbutton ditekan, maka akan menyalakan led
if (buttonState1 == HIGH) {
digitalWrite(ledPin1, HIGH); // menyalakan led
}
// Jika tidak ditekan, maka matikan lampu
else {
digitalWrite(ledPin1, LOW); // mematikan led
}
// jika button1 ditekan, maka running led
if (buttonState1 == HIGH) {
// kiri ke kanan
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, HIGH);
delay(100);
// kiri ke kanan
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, HIGH);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, HIGH);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, HIGH);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, HIGH);
delay(100);
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, HIGH);
}
if (buttonstate2 == HIGH) {
digitalWrite(ledPin1, HIGH);
}
if (buttonState1 == HIGH) {
// kiri ke kanan
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
// kiri ke kanan
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, HIGH);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, HIGH);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, HIGH);
}
if (buttonstate3 == HIGH) {
digitalWrite(ledPin1, HIGH);
}
if (buttonstate3 == HIGH) {
// kiri ke kanan
digitalWrite(ledpin2, HIGH);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, HIGH);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
// kiri ke kanan
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, LOW);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, LOW);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, LOW);
delay(100);
digitalWrite(ledpin2, LOW);
digitalWrite(ledpin3, LOW);
digitalWrite(ledpin4, HIGH);
digitalWrite(ledpin5, HIGH);
digitalWrite(ledpin6, HIGH);
delay(100);
}
}