#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define BUZZER_PIN 10 // Mengubah pin buzzer ke pin 10
LiquidCrystal_I2C lcd(0x27, 20, 4); // Alamat I2C, lebar 20, tinggi 4
// Frekuensi untuk setiap not dan nama not
int notes[] = {262, 294, 330, 349, 392, 440, 494, 523}; // C4, D4, E4, F4, G4, A4, B4, C5
String noteNames[] = {"Do", "Re", "Mi", "Fa", "Sol", "La", "Si", "Do"};
// Tidak ada pin LED yang digunakan
void setup() {
pinMode(BUZZER_PIN, OUTPUT); // Atur pin buzzer sebagai output
lcd.init(); // Inisialisasi LCD
lcd.backlight(); // Nyalakan backlight LCD
}
void loop() {
for (int i = 0; i < 8; i++) {
tone(BUZZER_PIN, notes[i]); // Mainkan not dengan frekuensi yang sesuai
lcd.clear(); // Hapus tampilan LCD
lcd.setCursor(0, 0); // Atur kursor ke baris pertama
lcd.print("Playing Note: "); // Tampilkan teks
lcd.setCursor(0, 1); // Pindah ke baris kedua
lcd.print(noteNames[i]); // Tampilkan nama not
delay(500); // Durasi tiap not 500 ms
noTone(BUZZER_PIN); // Matikan suara buzzer
delay(100); // Jeda antar not
}
delay(1000); // Jeda 1 detik sebelum ulang tangga nada
}