#include <Wire.h> // Library untuk komunikasi I2C
#include <LiquidCrystal_I2C.h> // Library untuk LCD I2C
#include <Ultrasonic.h> // Library untuk sensor ultrasonik
#define TRIGGER_PIN 12 // Pin trigger sensor ultrasonik
#define ECHO_PIN 14 // Pin echo sensor ultrasonik
#define I2C_ADDR 0x27 // Alamat LCD I2C, bisa berbeda tergantung pada modul LCD yang digunakan
#define LCD_COLS 16 // Jumlah kolom pada LCD
#define LCD_ROWS 2 // Jumlah baris pada LCD
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLS, LCD_ROWS); // Inisialisasi LCD dengan alamat dan ukuran yang benar
Ultrasonic ultrasonic(TRIGGER_PIN, ECHO_PIN); // Inisialisasi sensor ultrasonik
void setup() {
Serial.begin(9600); // Memulai komunikasi serial
lcd.init(); // Inisialisasi LCD
lcd.backlight(); // Menghidupkan backlight LCD
lcd.setCursor(0, 0); // Set kursor ke posisi awal
lcd.print("rifky");
}
void loop() {
delay(500); // Delay untuk stabilitas pembacaan
// Membaca jarak dari sensor ultrasonik
float distance_cm = ultrasonic.distanceRead();
// Menampilkan hasil pada LCD
lcd.setCursor(0, 1); // Set kursor ke baris kedua
lcd.print("jarak: ");
lcd.print(distance_cm);
lcd.print(" cm ");
// Menampilkan hasil pada Serial Monitor (opsional)
Serial.print("jarak: ");
Serial.print(distance_cm);
Serial.println(" cm");
}