#define BLYNK_TEMPLATE_ID "TMPL6rqxzXThI"
#define BLYNK_TEMPLATE_NAME "Renaldi Endrawan"
#define BLYNK_AUTH_TOKEN "FLRexwPs9yTXOdV3iLXn1zI35fVV-C0m" // Ganti dengan Auth Token Anda
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <BlynkSimpleEsp32.h>
#define trigPin 18 // Pin untuk Trigger (disesuaikan dengan pin ESP32)
#define echoPin 19 // Pin untuk Echo (disesuaikan dengan pin ESP32)
char ssid[] = "Wokwi-GUEST"; // Nama WiFi fiktif untuk simulasi
char pass[] = ""; // Password WiFi fiktif untuk simulasi
WidgetLCD lcd(V1);
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT); // Pin Echo harus diset sebagai INPUT
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass); // Inisialisasi Blynk
lcd.clear();
lcd.print(3, 0, "Jarak CM");
}
void loop() {
long duration, distance;
// Mengirimkan pulsa singkat ke Trigger
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Membaca waktu dari Echo
duration = pulseIn(echoPin, HIGH);
distance = (duration / 2) / 29.1;
// Menampilkan jarak di Serial Monitor
Serial.print(distance);
Serial.println(" cm");
// Menampilkan jarak di LCD pada aplikasi Blynk
lcd.clear();
lcd.print(0, 0, "Jarak cm:");
lcd.print(7, 1, distance);
// Mengirimkan data jarak ke Virtual Pin V2 di Blynk
Blynk.virtualWrite(V2, distance);
// Menjalankan fungsi Blynk
Blynk.run();
delay(1000); // Jeda untuk stabilisasi sensor
}