#include <Wire.h> //untuk lcd, komunikasi I2C
#include <LiquidCrystal_I2C.h> //menginisialisasi lcd
#include <HX711.h> //menginisialisasikan sensor besar atau HX711
LiquidCrystal_I2C lcd(0x27, 16, 2); // Inisialisasi LCD
#define DOUT 3 // Pin DT HX711
#define CLK 2 // Pin SCK HX711
HX711 scale;
unsigned long previousMillis = 0;
const long interval = 1000; // Interval untuk update setiap 1 detik
void setup() {
Serial.begin(9600); //menampilkan di serial monitor
scale.begin(DOUT, CLK); //konfigurasi dan inisialisasi sensor berat HX711 yang digunakan
scale.set_scale(); //mengatur faktor kalibrasi pada sensor HX711
lcd.init(); // Inisialisasi LCD
lcd.backlight(); // Mengaktifkan backlight pada LCD
lcd.setCursor(0, 0);
lcd.print("Berat: "); // Menampilkan teks "Berat: " pada baris pertama LCD
}
void loop() {
scale.set_scale(); // Set ulang faktor kalibrasi jika diperlukan
float berat = scale.get_units() / 420.00; // Menghitung berat dalam satuan yang diinginkan (misalnya kg)
lcd.setCursor(0, 1);
lcd.print(berat, 2); // Menampilkan nilai berat pada LCD dengan 2 angka desimal
lcd.setCursor(5, 1);
lcd.print(" kg"); // Menampilkan satuan dibelakang nilai yang dihasilkan
delay(100); // Memberi jeda 1 detik sebelum mengulang loop
}