Banner Ausblenden
Kleines Logo

Willkommen auf PSI-Online

Sicherheitscode

Dieser Sicherheitscode ist Variabel und kann nach belieben geändert werden.

 

 

#include     //Fügt die Keypad.h ein
 
char* secretCode = "7894561230";      //Das ist der Code für das "Schloss"
int position = 0;
 
const byte rows = 4;                         //Legt die Tastenbelegung fest, diese ist nicht immer gleich
const byte cols = 4;
char keys[rows][cols] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};
 
byte rowPins[rows] = {11, 10, 9, 8};
byte colPins[cols] = {7, 6, 5, 4};
 
Keypad keypad = Keypad(makeKeymap(keys),
                       rowPins, colPins,
                       rows, cols);
 
int redPin = 13;                //Initialisiert den Pin 13
int greenPin = 12;           //Initialisiert den Pin 12
 
void setup()
{
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  setLocked(true);                                //Sorgt dafür, dass das "Schloss" bei Programm Start geschlossen ist
  Serial.begin(9600);

}

 void setLocked(int locked)                    //Gibt Order was bei setLocked geschehen soll
{
  if (locked) {
    digitalWrite(redPin, HIGH);
    digitalWrite(greenPin, LOW);
    Serial.println("Locked");
  }
  else {
    digitalWrite(redPin, LOW);
    digitalWrite(greenPin, HIGH);
  }
}

void Willkommen()           //Legt den Willkomens Gruß in Lichtform fest
{
  digitalWrite(redPin, HIGH);
  delay(1);
  digitalWrite(greenPin, LOW);
  delay(250);
  digitalWrite(redPin, LOW);
  delay(1);
  digitalWrite(greenPin, HIGH);
  delay(250);
  digitalWrite(redPin, HIGH);
  delay(1);
  digitalWrite(greenPin, LOW);
  delay(250);

 
}

void loop()
{
  char key = keypad.getKey();
  if (key == '*' || key == '#') {
    position = 0;
    setLocked(true);
  }
 
  if (key == secretCode[position]) {
    position++;
  }
 
  if (position == 11) {
    setLocked(true);
    position = 0;

    

  }
  delay(50);                 //Das Delay schützt vor Überhitzung
 
}

Erstellt: Maximilian Reitz (04.03.2015) Letzte Änderung: Maximilian Reitz (04.03.2015)