начал делать программу для открытия двери, но она отказывается работать

Тема в разделе "Arduino & Shields", создана пользователем Winny, 8 авг 2019.

  1. Winny

    Winny Нуб

    Код (C++):
    #include <SPI.h>
    #include <MFRC522.h>
    #include <Wire.h>
    boolean zamok;
    #define ZAMOKPIN 13              //пин, к которому подключена электрощеколда
    MFRC522 rfid(10, 9); // пины SDA, RST                      
    unsigned long Key, KeyTemp;  // для храниения № ключа  

    void op(){
       digitalWrite(ZAMOKPIN, HIGH); //команда для открытия защеколды
       Serial.println ("open");
    }                                 //op = open
    void cl(){
       digitalWrite(ZAMOKPIN, LOW); //команда для зарытия защеколды
       Serial.println ("close");
    }                                 // cl = close
    void RFIDKEY(){                                                      
       if ( ! rfid.PICC_IsNewCardPresent()) {return;}// Поиск нового ключа
       if ( ! rfid.PICC_ReadCardSerial()) {return;}  // Выбор ключа
       Key = 0;
       for (byte i = 0; i < rfid.uid.size; i++){     // Выдача серийного № ключа
       KeyTemp = rfid.uid.uidByte[i];
       Key = Key * 256 + KeyTemp;
    }
       if (Key == 2523223287){     // № верного ключа
       zamok = true;
    }
    }
    void setup() {
      SPI.begin();  //  инициализация SPI
      rfid.PCD_Init();     // инициализация rfid модуля
      pinMode (ZAMOKPIN, OUTPUT);   //пин электрощеколды
      Serial.begin(9600);
    }

    void loop() {
      if ( zamok == true ){
        op();
        delay(5000);
        cl();
        zamok = false;
         }else{
          RFIDKEY();
      }
    }
    схема подключения rfid.png
    В будущем планирую добавить управление с помощью ИК-пульта и COM порта
     
  2. b707

    b707 Гуру

    вопрос-то в чем?
     
  3. parovoZZ

    parovoZZ Гуру

    ну вот потерял ключ. Дальше что? Тащить программатор или ещё что, выковыривать контроллер откуда-то, перепрошивать.... Не продумано.
     
    NikitOS нравится это.
  4. NikitOS

    NikitOS Король шутов Администратор

    У меня кровь из глаз потекла после третьей строки в коде.. Жуть...
     
  5. Asper Daffy

    Asper Daffy Иксперд

    Да, ни в чём. Просто, человек в жилетку поплакаться пришёл.
     
  6. Airbus

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

    Как что?Болгарка поможет!
     
  7. parovoZZ

    parovoZZ Гуру

    такая?
    [​IMG]
     
    Airbus нравится это.
  8. Airbus

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

    Да типа такой
     
  9. Vovka

    Vovka Гик

    А что такое "защеколда" ???
     
  10. SergeiL

    SergeiL Оракул Модератор

    Делайте вывод в последовательный порт, запускайте монитор порта и смотрите, куда попадаете, что получаете в переменные. Так и разберетесь.
     
  11. b707

    b707 Гуру

    это щеколда с нормально закрытым положением :)
     
    Daniil и NikitOS нравится это.
  12. Vovka

    Vovka Гик

    Интересно, но что тогда означает "команда для зарытия защеколды" ? :D
     
  13. NikitOS

    NikitOS Король шутов Администратор

    Подача низкого уровня на управляющий контакт (высокий открывает)
     
  14. parovoZZ

    parovoZZ Гуру

    это означает взять лопату и ЗАРЫТЬ
     
    Igor68 нравится это.
  15. Igor68

    Igor68 Гуру

    И прикрутить аккумулятор:) Вдруг электричества не будет:)
    А вообще пусть человек пробует.
    Только что-то его не слышно. Может он сначала светодиодом помигает...
    Думаю потом будет его вопрос про выбор транзистора для ключа, ну и почему электромагнит не срабатывает. А можно его от 220 запитать. Ну и т.д.
    А сейчас просто - помогите с программой.

    Не ругайтесь! Тут даже такие дядьки большие кодить не могут. А другие и вовсе: "хочу кодить, но учиться не буду... ну разве только по видео чуть-чуть"
     
    Asper Daffy и NikitOS нравится это.
  16. NikitOS

    NikitOS Король шутов Администратор

    Ага, по видео только и учиться... Текст лучше... ИМХО
    Люблю видео в котором что-то кодят, а потом код не дают, счастье-то какое! (нет)
     
  17. Daniil

    Daniil Гуру

    Пора бы уже замутить свой texttube.
    Открывается текстовый редактор, снизу аудиодорожка. Автор что-то щебечет и печатает, зритель все слышит и видит что печатает/удаляет/вставляет автор в виде текста. В любой момент паузу можно нажать и выдернуть из текстового редактора то, что напечатал автор.
     
    Asper Daffy нравится это.
  18. NikitOS

    NikitOS Король шутов Администратор

    Что?
     
  19. Daniil

    Daniil Гуру

    как ютуб, только, в текстовом формате)
     
  20. И как быть, если редактировать смогут 100500 пользователей ?