Загрузка данных


#define TRIG 7
#define ECHO 6
#define LED 3

long duration;
int distance;
int brightness;

void setup() {
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
  pinMode(LED, OUTPUT);

  Serial.begin(9600);
}

void loop() {

  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);

  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);

  digitalWrite(TRIG, LOW);

  duration = pulseIn(ECHO, HIGH);

  Расстояние в миллиметрах
  distance = duration * 0.343 / 2;

  Serial.print("Distance = ");
  Serial.print(distance);
  Serial.println(" mm");

  Меньше 30 мм
  if (distance < 30) {
    brightness = map(distance, 0, 30, 255, 0);
    analogWrite(LED, brightness);
  }

   30 мм и больше
  if (distance >= 30) {
    analogWrite(LED, 0);
  }

  delay(50);
}