#include <Keypad.h>
#include <LiquidCrystal_I2C.h>
#include <ESP32Servo.h>
Servo servo;
Servo servo1;
LiquidCrystal_I2C lcd(0x27,16,2);
const byte baris = 4;
const byte kolom = 4;
char pin[baris][kolom]= {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte pinbaris[baris] = {16,17,18,19};
byte pinkolom[kolom] = {15,2,23,4};
Keypad kiped = Keypad( makeKeymap(pin),pinbaris, pinkolom, baris, kolom);
int num = 0 ;
int pasword1= 1234;
int pasword2 = 2345 ;
void setup(){
Serial.begin(9600);
servo.attach(12);
servo1.attach(14);
lcd.init();
lcd.setBacklight(HIGH);
}
void loop(){
char tombol = kiped.getKey();
switch(tombol){
case '0' ... '9':
num = num * 10 + (tombol - '0');
lcd.setCursor(0,0);
lcd.print(num);
break;
case '#':
if(num == pasword1){
lcd.setCursor(0,0);
lcd.print("pasword benar");
servo1.write(180);
num = 0;
}
else if (num == pasword2){
lcd.setCursor(0,0);
servo.write(180);
lcd.print("pasword betul");
delay(5000);
num = 0 ;
lcd.clear();
}
break;
case '*':
num = 0;
lcd.clear();
break;
}
}
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
keypad1:R1
keypad1:R2
keypad1:R3
keypad1:R4
keypad1:C1
keypad1:C2
keypad1:C3
keypad1:C4
lcd1:GND
lcd1:VCC
lcd1:SDA
lcd1:SCL
servo1:GND
servo1:V+
servo1:PWM
servo2:GND
servo2:V+
servo2:PWM