#1 2017-06-17 22:20:52

NIKI
Участник
Зарегистрирован: 2017-06-17
Сообщений: 2

датчик движения+ зуммер

задача :  если есть движение сработал датчик зуммер пищит,нет движения датчик не пищит.
Подскажите почему зумер не пищит ,надо настроить сам датчик движения,или ошибка в коде.(датчик движения для ардуино 501 помойму,зумер модуль для ардуино готовый.
код
//Время калибровки датчика (10-60 сек. по даташиту)
int calibrationTime = 30;     
int pinPirSensor= 4;// датчик движения
int pinBuzzer= 5; // зуммер
int ledPin = 13;   //вывод сигнального диода

void setup()
{
  Serial.begin(9600);
  pinMode(pinPirSensor,INPUT_PULLUP);
  pinMode(pinBuzzer,OUTPUT);
  digitalWrite(pinBuzzer,LOW);   //отключим на всякий случай пищалку
//дадим датчику время на калибровку
  Serial.print("Calibrating");
  for(int i = 0; i < calibrationTime; i++)
   {
    //Во время калибровки будет мигать сигнальный диод
    i % 2 ? digitalWrite(ledPin, HIGH) : digitalWrite(ledPin, LOW);
    delay(1000);
  }
  //По окончанию калибровки зажжем сигнальный диод
  digitalWrite(ledPin, HIGH);
  delay(50);
}


void loop()
{
if (digitalRead(pinPirSensor)==HIGH) //Если обнаружено движение   
{
digitalWrite(pinBuzzer, LOW);   //пищалка пищит


if (digitalRead(pinPirSensor)==LOW)//Если  движение нет
{
    digitalWrite(pinBuzzer, HIGH);  //пищалка  непищит
}
}
}

#2 2017-06-17 22:44:30

vvr
Участник
Зарегистрирован: 2015-04-12
Сообщений: 343

Re: датчик движения+ зуммер

потому что не правильно написали

void loop()
{
if (digitalRead(pinPirSensor)==HIGH) //Если обнаружено движение   
{
digitalWrite(pinBuzzer, LOW);   //пищалка пищит


if (digitalRead(pinPirSensor)==LOW)//Если  движение нет
{
    digitalWrite(pinBuzzer, HIGH);  //пищалка  непищит
}
}
}

попробуйте

void loop()
{
  if (digitalRead(pinPirSensor) == HIGH) //Если обнаружено движение
  {
    digitalWrite(pinBuzzer, LOW);   //пищалка пищит
  }

  else if (digitalRead(pinPirSensor) == LOW) //Если  движение нет
  {
    digitalWrite(pinBuzzer, HIGH);  //пищалка  непищит
  }
}

ещё проще

void loop()
{
  if (digitalRead(pinPirSensor) == HIGH) //Если обнаружено движение
    digitalWrite(pinBuzzer, LOW);   //пищалка пищит

  else
    digitalWrite(pinBuzzer, HIGH);  //пищалка  непищит
}

#3 2017-06-17 22:53:40

NIKI
Участник
Зарегистрирован: 2017-06-17
Сообщений: 2

Re: датчик движения+ зуммер

Спасибо дорогой

Быстрое сообщение

Введите сообщение и нажмите Отправить

Подвал раздела