#include <LiquidCrystal.h>
#define TRIG_PIN 2
#define ECHO_PIN 3
// Inisialisasi pin LCD: RS, E, D4, D5, D6, D7
LiquidCrystal lcd(9,8,7,6,5,4);
void setup() {
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
// Inisialisasi LCD 16x2
lcd.begin(20, 4);
// Pindah ke baris kedua
lcd.setCursor(4, 0);
lcd.print("SENSOR JARAK");
}
void loop() {
long durasi;
int jarak_cm;
// Mengirimkan sinyal puls trigger
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
// Membaca durasi sinyal puls echo
durasi = pulseIn(ECHO_PIN, HIGH);
// Menghitung jarak dalam centimeter
jarak_cm = durasi * 0.034 / 2;
// Menampilkan jarak ke lcd
lcd.setCursor(0, 1);
lcd.print("Jarak: ");
lcd.setCursor(7, 1);
lcd.print(jarak_cm);
lcd.setCursor(12, 1);
lcd.println(" cm");
}
Loading
st-nucleo-c031c6
st-nucleo-c031c6