сигнализация на ардуино

Тема в разделе "Глядите, что я сделал", создана пользователем lol, 21 дек 2018.

  1. lol

    lol Нерд

    здравствуйте, имеется сигнализация + дисплейчик

    Код (C++):
    #include <LiquidCrystal_I2C.h>
    #include <Wire.h>
    LiquidCrystal_I2C lcd(0x3F,16,2);

    void setup() {
      pinMode(2,INPUT);
      pinMode(3,OUTPUT);
      pinMode(4,INPUT);
    lcd.init();                    
      lcd.backlight();// Включаем подсветку дисплея
      lcd.print("V-1.2 demo");
      lcd.setCursor(0, 1);
      lcd.print("signalization");
    }

    void loop() {
    boolean relay= digitalRead(2);
    boolean openkn= digitalRead(4);

       if(relay== 1 & openkn== 0) {
         lcd.init();                    
      lcd.backlight();// Включаем подсветку дисплея
      lcd.print("nezakonnoe");
      lcd.setCursor(0, 1);
      lcd.print("proniknovenie");
       digitalWrite(3,1);
       delay(400);
        digitalWrite(3,0);
        delay(400);
        digitalWrite(3,1);
       delay(400);
       digitalWrite(3,0);
       delay(400);
       digitalWrite(3,1);
       delay(400);
       digitalWrite(3,0);
       delay(400);
       digitalWrite(3,1);
       delay(400);
       digitalWrite(3,0);
       delay(400);
       digitalWrite(3,1);
       delay(20000);
       digitalWrite(3,0);
          lcd.init();                    
      lcd.backlight();// Включаем подсветку дисплея
      lcd.print("V-1.2 demo");
      lcd.setCursor(0, 1);
      lcd.print("signalization");
     }
     
     



    у кого нибудь есть варианты доработки???
     
  2. Airbus

    Airbus Радиохулиган Модератор

    А в чем проблема?
     
  3. parovoZZ

    parovoZZ Гуру

    обязательно дописать professional
    а то ведь не поверят. скажут что лох какой-то код писал
     
    timon и KindMan нравится это.
  4. lol

    lol Нерд

    всмысле???
     
  5. lol

    lol Нерд

    всё хорошо, просто интересно можно ли как-то доработать
     
  6. ИгорьК

    ИгорьК Гуру

    В delay применяйте 400 на 401 везде. Так будет лучше.
     
    SergeiL нравится это.
  7. Airbus

    Airbus Радиохулиган Модератор

    Я так и не понял что делает это устройство.И что в loop накуеверчено.Зачем там boolean?
     
  8. lol

    lol Нерд

    если датчик сработал и кнопка не нажата, то на дисплей выводится сообщение и мигает светодиод. boolean для удобства для доработок, которых пока нет))))
     
  9. lol

    lol Нерд

    что за бред???
     
  10. KindMan

    KindMan Гуру

    Давно читаю ваши сообщения, прям не одидал такого от вас ;)

    GSM передатчик добавить, а то как узнать о проникновении, если вы вдруг вышли?
     
    Airbus нравится это.
  11. lol

    lol Нерд

    хорошая идея
     
  12. Airbus

    Airbus Радиохулиган Модератор

    Смысл?Она по любому сработает.На сброс надо дать секунд 10 логично ведь?Если за 10 секунд не сбросили пусть сиренит.Или что там у Вас?
     
  13. lol

    lol Нерд

    в принципе вы правы.
     
  14. lol

    lol Нерд

    вы про кнопку???
     
  15. Airbus

    Airbus Радиохулиган Модератор

    Да и boolean зачем?
     
  16. lol

    lol Нерд

    кнопка чтобы можно было разблокировать, и войти в какое либо помещение
     
  17. lol

    lol Нерд

    что бы допустим выводить состояние датчика вывести в com-порт.
     
  18. ZAZ-965

    ZAZ-965 Гуру

    @lol, в процессе обучения? Ну... это нормально! ©
    Варианты - для опроса кнопок использовать прерывания(attachInterrupt или ISR(INT0_vect)), микроконтроллер отправлять в сон (avr/sleep.h), сирену вынести в отдельную функцию (повторяющиеся операторы оформить циклом).
     
  19. timon

    timon Гик

    Это что за сигнализация такая с кнопкой «обокрасть бесплатно без смс»? )))
    Поменяйте кнопку на рф-карточку хотя бы )
     
  20. KindMan

    KindMan Гуру

    Из серии - "Маша мы ушли, ключ под ковриком» забыл, в каком городе было, вор зашёл и вынес всё по такой записке.
     
    timon нравится это.