Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 19 maja 2025, o 22:07


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
    Autor Wiadomość
    PostNapisane: 18 gru 2011, o 15:50 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 paź 2011
    Posty: 580
    Lokalizacja: Warszawa
    Pomógł: 0

    Witam!!

    Dzisiaj pokarze wam jak można w prosty sposób zrobić kontrole dostępu opartą o matrycową klawiaturę 4x4(szesnastkową).

    Zatem nasz kodzik będzie dosyć prosty i zrozumiały, a pewne niejasności postaram się wyjaśnić.

    Kod:
    // Proste hasło z klawiatury 4x4
    #include <Password.h>
    #include <Keypad.h>
    Password password = Password( "1234" ); // Tutaj wprowadzamy nasze hasło

    const byte ROWS = 4; //ilosc wierszy
    const byte COLS = 4;  //ilosc kolumn

    char keys[ROWS][COLS] =
    {
      {'1','2','3','A'},
      {'4','5','6','B'},
      {'7','8','9','C'},
      {'*','0','#','D'}
    };

    byte rowPins[ROWS] = { 5, 4, 3, 2 };  //piny mikrokontrolera przypisane do wierszy
    byte colPins[COLS] = { 9, 8, 7, 6 };   //piny mikrokontrolera przypisane do kolumn

    Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

    void setup()
    {

      Serial.begin(9600);
      keypad.addEventListener(keypadEvent);
    }

    void loop()
    {
      keypad.getKey();
    }


    void keypadEvent(KeypadEvent eKey)
    {
      switch (keypad.getState())
      {
        case PRESSED:
       Serial.print("Pressed: ");
       Serial.println(eKey);
       switch (eKey)
    {
         case '*': checkPassword(); break;
         case '#': password.reset(); break;
         default: password.append(eKey);
         }
      }
    }

    void checkPassword()
    {
      if (password.evaluate())
      {
        Serial.println("Success");
        //Tu mozna dopisać cos co ma byc wykonane
      }
      else
      {
        Serial.println("Wrong");
        //Tu takze  mozna dopisać, np. wycie syreny:P
      }
    }


    Myślę, że wszystko jest jasne a działanie kodu nie wymaga zilustrowania :)

    Miłej zabawy.

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 gru 2011, o 10:12 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 lis 2011
    Posty: 582
    Lokalizacja: okolice Wrocławia :)
    Pomógł: 24

    Jeszcze tylko jakaś edycja hasła, zapis do eeprom i całkiem fajna zabawka wyjdzie

    :)

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 gru 2011, o 14:16 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 paź 2011
    Posty: 580
    Lokalizacja: Warszawa
    Pomógł: 0

    nom można dowolnie rozbudować już do potrzeb własnych :) LCD, eeprom, czujniki itp.. można zbudować centralkę czy też zwykły sterownik z kontrolą dostępu :P

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 gru 2011, o 14:20 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 paź 2011
    Posty: 580
    Lokalizacja: Warszawa
    Pomógł: 0

    lubię klawiaturkę 4x4 ale osobiście jako kontrolę dostępu wybrał bym wspomniane pastylki dallas :)
    a to tak tylko z ciekawości pokazałem :]

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO