Advertisement
Guest User

Untitled

a guest
Dec 8th, 2019
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.19 KB | None | 0 0
  1. int trigPin = 12; // номер пина Trig
  2. int echoPin = 11; // номер пина Echo
  3. int bLed = 9; // номер пина к которому подключён синий LED
  4. int buzz = 13; // номер пина к которому подключён пьезоизлучатель
  5.   int brightness = 0;
  6. void setup() {
  7.   // Настраиваем пины
  8.   pinMode(trigPin, OUTPUT);
  9.   pinMode(echoPin, INPUT);
  10.   pinMode(bLed, OUTPUT);
  11.   pinMode(buzz, OUTPUT);
  12.  
  13. }
  14.  
  15. void loop() {
  16.   int duration, distance;
  17.   int cm;
  18.   // для большей точности установим значение LOW на пине Trig
  19.   digitalWrite(trigPin, LOW);
  20.   delayMicroseconds(2);
  21.   // Теперь установим высокий уровень на пине Trig
  22.   digitalWrite(trigPin, HIGH);
  23.   // Подождем 10 μs
  24.   delayMicroseconds(10);
  25.   digitalWrite(trigPin, LOW);
  26.   // Узнаем длительность высокого сигнала на пине Echo
  27.   duration = pulseIn(echoPin, HIGH);
  28.   // Рассчитаем расстояние
  29.   distance = duration / 58;
  30.    Serial.print(duration);
  31.  Serial.println(" cm");
  32.  
  33.   if (distance > 15) { // Если расстояние > 20 см то
  34.     digitalWrite(bLed, LOW); // Включаем только синий LED
  35.     digitalWrite(buzz, LOW);
  36.   } else if (distance < 20 && distance > 11) { // Расстояние < 10
  37.     analogWrite(bLed, 10);    // устанавливаем значение
  38.     makeBeep(200, 500);
  39.   } else if (distance < 10 && distance > 6) { // Расстояние < 10
  40.     analogWrite(bLed, 75);    // устанавливаем значение
  41.     makeBeep(1000, 300);
  42.    } else if (distance < 5 && distance > 0 ) { // Расстояние < 10
  43.     analogWrite(bLed, 255);    // устанавливаем значение
  44.     makeBeep(1000, 100);
  45.    }
  46.   delay(100); // Ждём 100 милисекунд
  47. }
  48.  
  49.  
  50. void makeBeep(int soundFrequency, int duration) {
  51.   analogWrite(buzz, soundFrequency); // включаем звук
  52.   delay(duration);  // пищим какое-то время,
  53.   analogWrite(buzz, 0); // выключаем звук
  54.   delay(duration); // ждём опять
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement