Components and supplies
1
Jumper wires (generic)
1
RobotGeek 180 Degree Robot Servo
1
Buzzer
1
Keypad
1
Arduino UNO
1
RobotGeek 4 Line I2C LCD Control Panel
1
Breadboard (generic)
Apps and platforms
1
Arduino IDE
Project description
Code
Passworder
arduino
1#include <Servo.h> 2Servo sg90; 3#include <Password.h> 4#include <Keypad.h> 5#include <LiquidCrystal_I2C.h> 6Password password = Password("12AB"); 7int dlugosc = 4; 8LiquidCrystal_I2C lcd(0x27 , 16 , 2); 9 10int buzzer = 13; 11char tus; // number of clicks 12const byte satir = 4; 13const byte sutun = 4; 14char tus_takimi [sutun] [satir] = 15{ 16{'1','2','3','A'}, 17{'4','5','6','B'}, 18{'7','8','9','C'}, 19{'*','0','#','D'} 20}; 21byte satir_pinleri[sutun] = {13,12,11,10}; 22byte sutun_pinleri[satir] = {9,8,7,6}; 23Keypad keypad = Keypad( makeKeymap(tus_takimi), satir_pinleri, sutun_pinleri, satir, sutun ); 24void setup() 25{ 26Serial.begin(9600); 27keypad.addEventListener(keypadEvent); 28sg90.attach(9); 29pinMode(buzzer, OUTPUT); 30 31 32lcd.begin(); 33lcd.setCursor(1,0); 34lcd.print("Please Enter"); 35lcd.setCursor(0,1); 36lcd.print("Password to Open"); 37} 38void loop() 39{ 40keypad.getKey(); 41} 42void keypadEvent(KeypadEvent eKey) 43{ 44switch (keypad.getState()) 45{ 46case PRESSED: 47int i; 48for( i = 1; i <= 1; i++ ) 49{ 50digitalWrite(buzzer, HIGH); 51delay(50); 52digitalWrite(buzzer, LOW); 53delay(50); 54} 55Serial.print("Pressed: "); 56Serial.println(eKey); 57switch (eKey) 58{ 59/* 60case '#': 61break; 62case '*': 63break; 64*/ 65default: 66tus=tus+1; 67password.append(eKey); 68} 69//Serial.println(tus); 70if(tus == 1) 71{ 72lcd.clear(); 73lcd.setCursor(1,0); 74lcd.print("Password:"); 75lcd.setCursor(0,1); 76lcd.print("*_"); 77} 78if(tus == 2) 79{ 80lcd.clear(); 81lcd.setCursor(1,0); 82lcd.print("Password:"); 83lcd.setCursor(0,1); 84lcd.print("**_"); 85} 86if(tus == 3) 87{ 88lcd.clear(); 89lcd.setCursor(1,0); 90lcd.print("Password:"); 91lcd.setCursor(0,1); 92lcd.print("***_"); 93} 94if(tus == 4) 95{ 96lcd.clear(); 97lcd.setCursor(1,0); 98lcd.print("Password:"); 99lcd.setCursor(0,1); 100lcd.print("****_"); 101} 102if(tus == 5) 103{ 104lcd.clear(); 105lcd.setCursor(1,0); 106lcd.print("Password:"); 107lcd.setCursor(0,1); 108lcd.print("*****_"); 109} 110if(tus == 6) 111{ 112lcd.clear(); 113lcd.setCursor(1,0); 114lcd.print("Password:"); 115lcd.setCursor(0,1); 116lcd.print("******_"); 117} 118if(tus == 7) 119{ 120lcd.clear(); 121lcd.setCursor(1,0); 122lcd.print("Password:"); 123lcd.setCursor(0,1); 124lcd.print("*******_"); 125} 126if(tus == 8) 127{ 128lcd.clear(); 129lcd.setCursor(1,0); 130lcd.print("Password:"); 131lcd.setCursor(0,1); 132lcd.print("********"); 133} 134if(tus == dlugosc) 135{ 136delay(250); 137checkPassword(); 138tus = 0; 139} 140} 141} 142void checkPassword() 143{ 144if (password.evaluate()) 145{ 146int i; 147for( i = 1; i <= 2; i++ ) 148{ 149digitalWrite(buzzer, HIGH); 150delay(70); 151digitalWrite(buzzer, LOW); 152delay(70); 153} 154tus = 0; 155Serial.println("Password OK"); 156sg90.write(180); 157digitalWrite(buzzer, HIGH); 158delay(800); 159digitalWrite(buzzer, LOW); 160sg90.write(0); 161lcd.clear(); 162lcd.setCursor(0,0); 163lcd.print("Password OK"); 164delay(1000); 165lcd.clear(); 166lcd.setCursor(1,0); 167lcd.print("Please Enter"); 168lcd.setCursor(0,1); 169lcd.print("Password to Open"); 170} 171else 172{ 173int i; 174for( i = 1; i <= 1; i++ ) 175{ 176digitalWrite(buzzer, HIGH); 177delay(200); 178digitalWrite(buzzer, LOW); 179delay(200); 180} 181tus = 0; 182password.reset(); 183Serial.println("Error!"); 184 185 186digitalWrite(buzzer, HIGH); 187delay(800); 188 189digitalWrite(buzzer, LOW); 190lcd.clear(); 191lcd.setCursor(0,0); 192lcd.print("Error!"); 193delay(1000); 194lcd.clear(); 195lcd.setCursor(1,0); 196lcd.print("Please Enter"); 197lcd.setCursor(0,1); 198lcd.print("Password to Open"); 199} 200}
Passworder
arduino
1#include <Servo.h> 2Servo sg90; 3#include <Password.h> 4#include <Keypad.h> 5#include <LiquidCrystal_I2C.h> 6Password password = Password("12AB"); 7int dlugosc = 4; 8LiquidCrystal_I2C lcd(0x27 , 16 , 2); 9 10int buzzer = 13; 11char tus; // number of clicks 12const byte satir = 4; 13const byte sutun = 4; 14char tus_takimi [sutun] [satir] = 15{ 16{'1','2','3','A'}, 17{'4','5','6','B'}, 18{'7','8','9','C'}, 19{'*','0','#','D'} 20}; 21byte satir_pinleri[sutun] = {13,12,11,10}; 22byte sutun_pinleri[satir] = {9,8,7,6}; 23Keypad keypad = Keypad( makeKeymap(tus_takimi), satir_pinleri, sutun_pinleri, satir, sutun ); 24void setup() 25{ 26Serial.begin(9600); 27keypad.addEventListener(keypadEvent); 28sg90.attach(9); 29pinMode(buzzer, OUTPUT); 30 31 32lcd.begin(); 33lcd.setCursor(1,0); 34lcd.print("Please Enter"); 35lcd.setCursor(0,1); 36lcd.print("Password to Open"); 37} 38void loop() 39{ 40keypad.getKey(); 41} 42void keypadEvent(KeypadEvent eKey) 43{ 44switch (keypad.getState()) 45{ 46case PRESSED: 47int i; 48for( i = 1; i <= 1; i++ ) 49{ 50digitalWrite(buzzer, HIGH); 51delay(50); 52digitalWrite(buzzer, LOW); 53delay(50); 54} 55Serial.print("Pressed: "); 56Serial.println(eKey); 57switch (eKey) 58{ 59/* 60case '#': 61break; 62case '*': 63break; 64*/ 65default: 66tus=tus+1; 67password.append(eKey); 68} 69//Serial.println(tus); 70if(tus == 1) 71{ 72lcd.clear(); 73lcd.setCursor(1,0); 74lcd.print("Password:"); 75lcd.setCursor(0,1); 76lcd.print("*_"); 77} 78if(tus == 2) 79{ 80lcd.clear(); 81lcd.setCursor(1,0); 82lcd.print("Password:"); 83lcd.setCursor(0,1); 84lcd.print("**_"); 85} 86if(tus == 3) 87{ 88lcd.clear(); 89lcd.setCursor(1,0); 90lcd.print("Password:"); 91lcd.setCursor(0,1); 92lcd.print("***_"); 93} 94if(tus == 4) 95{ 96lcd.clear(); 97lcd.setCursor(1,0); 98lcd.print("Password:"); 99lcd.setCursor(0,1); 100lcd.print("****_"); 101} 102if(tus == 5) 103{ 104lcd.clear(); 105lcd.setCursor(1,0); 106lcd.print("Password:"); 107lcd.setCursor(0,1); 108lcd.print("*****_"); 109} 110if(tus == 6) 111{ 112lcd.clear(); 113lcd.setCursor(1,0); 114lcd.print("Password:"); 115lcd.setCursor(0,1); 116lcd.print("******_"); 117} 118if(tus == 7) 119{ 120lcd.clear(); 121lcd.setCursor(1,0); 122lcd.print("Password:"); 123lcd.setCursor(0,1); 124lcd.print("*******_"); 125} 126if(tus == 8) 127{ 128lcd.clear(); 129lcd.setCursor(1,0); 130lcd.print("Password:"); 131lcd.setCursor(0,1); 132lcd.print("********"); 133} 134if(tus == dlugosc) 135{ 136delay(250); 137checkPassword(); 138tus = 0; 139} 140} 141} 142void checkPassword() 143{ 144if (password.evaluate()) 145{ 146int i; 147for( i = 1; i <= 2; i++ ) 148{ 149digitalWrite(buzzer, HIGH); 150delay(70); 151digitalWrite(buzzer, LOW); 152delay(70); 153} 154tus = 0; 155Serial.println("Password OK"); 156sg90.write(180); 157digitalWrite(buzzer, HIGH); 158delay(800); 159digitalWrite(buzzer, LOW); 160sg90.write(0); 161lcd.clear(); 162lcd.setCursor(0,0); 163lcd.print("Password OK"); 164delay(1000); 165lcd.clear(); 166lcd.setCursor(1,0); 167lcd.print("Please Enter"); 168lcd.setCursor(0,1); 169lcd.print("Password to Open"); 170} 171else 172{ 173int i; 174for( i = 1; i <= 1; i++ ) 175{ 176digitalWrite(buzzer, HIGH); 177delay(200); 178digitalWrite(buzzer, LOW); 179delay(200); 180} 181tus = 0; 182password.reset(); 183Serial.println("Error!"); 184 185 186digitalWrite(buzzer, HIGH); 187delay(800); 188 189digitalWrite(buzzer, LOW); 190lcd.clear(); 191lcd.setCursor(0,0); 192lcd.print("Error!"); 193delay(1000); 194lcd.clear(); 195lcd.setCursor(1,0); 196lcd.print("Please Enter"); 197lcd.setCursor(0,1); 198lcd.print("Password to Open"); 199} 200}
Downloadable files
unknown_TQCfHQC3tY.jpeg
unknown_TQCfHQC3tY.jpeg

Comments
Only logged in users can leave comments