#include <LiquidCrystal_I2C.h>
#include <Keypad.h>
LiquidCrystal_I2C lcd(32,16,2);
char hex[4][4]={
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte row[4]={2,3,4,5},col[4]={6,7,8,9};
Keypad k(makeKeymap(hex),row,col,4,4);
int led=13,buzz=12;
String pass="5678",temp="";
void setup()
{
lcd.init();
lcd.setCursor(0,0);
lcd.backlight();
lcd.print("press any key...");
Serial.begin(9600);
pinMode(led,OUTPUT);
pinMode(buzz,OUTPUT);
}
void loop()
{
char ch=k.getKey();
if(ch && ch!='*' && ch!='#')
{
lcd.backlight();
temp=temp+ch;
Serial.println(temp);
lcd.setCursor(0,1);
lcd.print(temp);
}
if(ch=='*')
{
if(pass==temp)
{
digitalWrite(led,HIGH);
digitalWrite(buzz,LOW);
lcd.setCursor(0,0);
lcd.print("password correct");
}
else{
digitalWrite(led,LOW);
digitalWrite(buzz,HIGH);
lcd.setCursor(0,0);
lcd.print("password incorrect");
lcd.setCursor(0,1);
lcd.print("try again press #");
}
}
if(ch=='#')
{
temp="";
digitalWrite(led,LOW);
digitalWrite(buzz, LOW);
lcd.clear();
lcd.noBacklight();
lcd.backlight();
lcd.print("press any key");
}
}