#include <ESP32Servo.h>
#define TRIG_PIN 5
#define ECHO_PIN 18
#define SERVO_PIN 13
Servo radarServo;
long readDistanceCM() {
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
long duration = pulseIn(ECHO_PIN, HIGH, 30000);
if (duration == 0) return -1;
long cm = duration / 58;
return cm;
}
void setup() {
Serial.begin(9600); // <<< Processing ile aynı
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
radarServo.setPeriodHertz(50);
radarServo.attach(SERVO_PIN, 500, 2400);
}
void loop() {
for (int angle = 0; angle <= 180; angle += 2) {
radarServo.write(angle);
delay(35);
long dist = readDistanceCM();
if (dist < 0) dist = 999; // ölçüm yoksa uzak göster
// <<< ÖNEMLİ: '.' ile bitiriyoruz
Serial.print(angle);
Serial.print(",");
Serial.print(dist);
Serial.print(".");
}
for (int angle = 180; angle >= 0; angle -= 2) {
radarServo.write(angle);
delay(35);
long dist = readDistanceCM();
if (dist < 0) dist = 999;
Serial.print(angle);
Serial.print(",");
Serial.print(dist);
Serial.print(".");
}
}