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



Teraz jest 18 lis 2024, o 06:40


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 3 gości


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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO