#include <LiquidCrystal.h>
#define TRIG 9
#define ECHO 10
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
long duration;
int distance;
const int tinggiSensor = 200; // tinggi sensor dari lantai (cm)
int tinggiBadan;
void setup() {
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
lcd.begin(16, 2);
Serial.begin(9600);
}
void loop() {
// kirim pulsa trigger
digitalWrite(TRIG, LOW);
delayMicroseconds(2);
digitalWrite(TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG, LOW);
// baca echo
duration = pulseIn(ECHO, HIGH);
distance = duration * 0.034 / 2; // hasil dalam cm
// hitung tinggi badan
tinggiBadan = tinggiSensor - distance;
// pastikan tidak minus
if (tinggiBadan < 0) {
tinggiBadan = 0; // atau bisa ganti dengan pesan khusus
}
// tampilkan di Serial Monitor
Serial.print("Tinggi Badan: ");
Serial.print(tinggiBadan);
Serial.println(" cm");
// tampilkan di LCD
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Tinggi Badan:");
lcd.setCursor(0, 1);
lcd.print(tinggiBadan);
lcd.print(" cm");
delay(1000);
}