#include <Wire.h>
#include <LiquidCrystal_I2C.h>
const int i2c_addr = 0x27; // Alamat LCD
LiquidCrystal_I2C lcd(i2c_addr, 16, 2); // LCD dengan 16 karakter dan 2 baris
// Fungsi untuk menampilkan teks yang dipotong dan ditengah
void tampilkanDiTengah(const char* teks, int baris) {
int panjang_teks = strlen(teks); // Menghitung panjang teks
int posisi_mulai = 0; // Posisi mulai untuk menampilkan teks
// Jika teks lebih panjang dari 16 karakter, potong menjadi 16 karakter
if (panjang_teks > 16) {
panjang_teks = 16;
} else {
// Jika teks lebih pendek dari 16 karakter, hitung posisi mulai agar teks berada di tengah
posisi_mulai = (16 - panjang_teks) / 2;
}
// Atur posisi cursor dan tampilkan teks pada baris yang ditentukan
lcd.setCursor(posisi_mulai, baris);
for (int i = 0; i < panjang_teks; i++) {
lcd.write(teks[i]);
}
}
void setup() {
lcd.begin(16, 2); // Inisialisasi LCD dengan 16 kolom dan 2 baris
lcd.backlight(); // Nyalakan backlight LCD
// Tampilkan NIM di baris pertama
tampilkanDiTengah("NIM REDACTED", 0);
// Tampilkan Nama di baris kedua
tampilkanDiTengah("NAME REDACTED", 1);
}
void loop() {
//nothing
}