//================MONSTERCHIP INDONESIA==================
#include <Wire.h>
#include <LiquidCrystal_I2C.h> // Memasukan Library LiquidCrystal_I2C untuk mengendalikan LCD I2C.
LiquidCrystal_I2C lcd(0x27, 16, 2); // Inisialisasi objek LCD dengan alamat I2C, jumlah kolom, dan jumlah baris.
String messageStatic = "Static message"; // text statis
String messageToScroll = "SMK N 1 KENDAL"; // text yang berjalan
void scrollText(int row, String message, int delayTime, int lcdColumns) {
// Fungsi untuk scrolling teks pada layar LCD.
for (int i = 0; i < lcdColumns; i++) {
message = " " + message; // Tambahkan spasi di depan pesan text untuk menscroll text.
}
message = message + " "; // Tambahkan spasi lagi di akhir pesan text.
for (int pos = 0; pos < message.length(); pos++) {
lcd.setCursor(0, row); // Atur posisi kursor LCD ke baris "row" dan kolom 0.
lcd.print(message.substring(pos, pos + lcdColumns)); // Cetak potongan pesan text sesuai dengan jumlah kolom.
delay(delayTime); // menunda sejenak.
}
}
void setup() {
lcd.init(); // Inisialisasi modul LCD.
lcd.backlight(); // Nyalakan pencahayaan LCD.
}
void loop() {
lcd.setCursor(0, 0); // Atur posisi kursor ke baris 0, kolom 0.
lcd.print(messageStatic); // Cetak pesan text statis.
scrollText(1, messageToScroll, 250, 16); // Panggil fungsi untuk menscroll text ke baris 1 dengan waktu tunda 250 ms.
}