#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
#include <Keypad.h>
const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
char keys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {5, 4, 3, 2}; //connect to the column pinouts of the keypad
//Create an object of keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup(){
Serial.begin(9600);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
lcd.init();
lcd.clear();
lcd.backlight(); // Make sure backlight is on
}
void loop(){
char key = keypad.getKey();// Read the key
// Print if key pressed
if (key){
Serial.print("Key Pressed : ");
Serial.println(key);
}
if(key == '1'){
digitalWrite(10, HIGH);
}
if(key == '2'){
digitalWrite(11, HIGH);
}
else if(key == 'C'){
digitalWrite(11, LOW);
digitalWrite(10, LOW);
}
if (key){
Serial.print("Key Pressed : ");
Serial.println(key);
lcd.setCursor(5,0);
lcd.print("LED ON ");
lcd.clear();
}
if(key=='1'){
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
lcd.setCursor(5,0);
lcd.print("LED ON ");
}
if(key=='2'){
digitalWrite(11, HIGH);
digitalWrite(10, HIGH);
lcd.setCursor(5,0);
lcd.print("LED ON ");
}
if(key=='D'){
digitalWrite(10, LOW);
digitalWrite(11, LOW);
lcd.setCursor(5,1);
lcd.print("LED OFF ");
}
}