#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Arduino.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
unsigned long currentMillis;
unsigned long prevMillis = 0;
const unsigned long interval = 1000;
int i; // Deklarasikan i disini
const int buzzerPin = 7 // pin 7
// PIN SETUP
int led1 = 10;
int led2 = 8;
int led3 = 9;
int led4 = 2;
int led5 = 3;
int led6 = 12;
int led7 = 13;
int buzzer = 7; // deklarasikan
int button = 6;
int melody[] = {
262, 262, 294, 262, 349, 330, // “Happy Teachers Day”
262, 262, 294, 262, 392, 349 // “Thank you for guiding me”
};
int noteDurations[] = {
4, 4, 4, 4, 4, 2,
4, 4, 4, 4, 4, 2
};
void setup() {
Serial.begin(9600);
lcd.init();
lcd.backlight();
pinMode(buzzerPin, OUTPUT); // I
int songLength = sizeof (melody)
for (int thisNote = 0; thisNote < songLength; thisNote++) {
// hitung jumblah nada dalam lagu
int deration = 1000 / noteDurations[thisNote];
// mainkan nada dengan fungsi tone(pin, frekuensi, durasi)
tone(buzzerpin, melody[thisNote], duration);
// beri jedaa singkay antar nada agar terdengar jelas
int pauseBetweenNotes = duration * 1.30;
delay(pauseBetweenNotes);
// hentikan nada sebelum memulai yang baru
noTone(buzzerPin);
}
pinMode(buzzer, OUTPUT);
pinMode(button, INPUT_PULLUP);
pinMode(led4, OUTPUT);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Press the button");
lcd.setCursor(0,1);
lcd.print("to play message");
}
void loop() {
int baca = digitalRead(button);
if (baca == LOW){ // LOW tombol di tekan
for (int i = 0; i < 12; i++)
digitalWrite(led4, HIGH);
} else {
digitalWrite(led4, LOW);
}
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Happy Teachers");
lcd.setCursor(0,1);
lcd.print("Day! kak andi!");
for (int i = 0; i < 12; i++) {
digitalWrite(led1, HIGH);
delay(20);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(20);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(20);
digitalWrite(led3, LOW);
if (currentMillis - prevMillis = interval)
prevMillis = currentMillis;
Serial.println ();
digitalWrite(led4, HIGH);
delay(100);
digitalWrite(led4, LOW);
delay(100);
digitalWrite(led5, HIGH);
delay(100);
digitalWrite(led5, LOW);
delay(100);
digitalWrite(led6, HIGH);
delay(100);
digitalWrite(led6, LOW);
delay(100);
}
}