Kapii_Ornegi

Dependencies:   mbed Servo MFRC522 TextLCD keypad

Committer:
freedaom
Date:
Sun Dec 15 07:31:34 2019 +0000
Revision:
0:eb13172d8708
Child:
1:ce3de3f1306d
kapi_guvenlik_onur

Who changed what in which revision?

UserRevisionLine numberNew contents of line
freedaom 0:eb13172d8708 1 #include "mbed.h"
freedaom 0:eb13172d8708 2 #include "TextLCD.h"
freedaom 0:eb13172d8708 3 #include "Keypad.h"
freedaom 0:eb13172d8708 4 #include <string>
freedaom 0:eb13172d8708 5 #include "Servo.h"
freedaom 0:eb13172d8708 6
freedaom 0:eb13172d8708 7 #include "MFRC522.h"/**/
freedaom 0:eb13172d8708 8
freedaom 0:eb13172d8708 9 #define SIFRE "**123A"
freedaom 0:eb13172d8708 10 #define uzunluk 6
freedaom 0:eb13172d8708 11
freedaom 0:eb13172d8708 12 string sifre= "";
freedaom 0:eb13172d8708 13 uint8_t hata=4;
freedaom 0:eb13172d8708 14
freedaom 0:eb13172d8708 15 char key_table[] = {
freedaom 0:eb13172d8708 16 '1', '2', '3', 'A',
freedaom 0:eb13172d8708 17 '4', '5', '6', 'B',
freedaom 0:eb13172d8708 18 '7', '8', '9', 'C',
freedaom 0:eb13172d8708 19 '*', '0', '#', 'D'
freedaom 0:eb13172d8708 20 };
freedaom 0:eb13172d8708 21
freedaom 0:eb13172d8708 22 Keypad key(PA_12,PA_11,PB_12,PB_2,PB_1,PB_15,PB_14,PB_13);
freedaom 0:eb13172d8708 23 TextLCD lcd(PA_0,PA_1,PA_4,PB_0,PC_1,PC_0); // rs, e, d4-d7..
freedaom 0:eb13172d8708 24
freedaom 0:eb13172d8708 25 DigitalOut buzzer(D7);
freedaom 0:eb13172d8708 26 Servo servo1(PA_15);
freedaom 0:eb13172d8708 27
freedaom 0:eb13172d8708 28 MFRC522 RfChip(PA_7, PA_6, PA_5, PB_6, PC_7);/**/
freedaom 0:eb13172d8708 29
freedaom 0:eb13172d8708 30 int main()
freedaom 0:eb13172d8708 31 {
freedaom 0:eb13172d8708 32 uint32_t key_num;
freedaom 0:eb13172d8708 33 RfChip.PCD_Init();/**/
freedaom 0:eb13172d8708 34
freedaom 0:eb13172d8708 35 Onur:
freedaom 0:eb13172d8708 36
freedaom 0:eb13172d8708 37 lcd.cls();
freedaom 0:eb13172d8708 38 servo1.SetPosition(20);
freedaom 0:eb13172d8708 39 lcd.printf("Sifre : ");
freedaom 0:eb13172d8708 40 printf("Sifre : ");
freedaom 0:eb13172d8708 41
freedaom 0:eb13172d8708 42 while(true) {
freedaom 0:eb13172d8708 43 while ((key_num = key.read()) != 0) {
freedaom 0:eb13172d8708 44
freedaom 0:eb13172d8708 45 buzzer=1;
freedaom 0:eb13172d8708 46 wait_ms(50);
freedaom 0:eb13172d8708 47 buzzer=0;
freedaom 0:eb13172d8708 48
freedaom 0:eb13172d8708 49 lcd.printf("*");
freedaom 0:eb13172d8708 50 printf("%c", *(key_table + key_num-1));
freedaom 0:eb13172d8708 51
freedaom 0:eb13172d8708 52 sifre += *(key_table + key_num-1);
freedaom 0:eb13172d8708 53
freedaom 0:eb13172d8708 54 if(uzunluk == sifre.length()) {
freedaom 0:eb13172d8708 55
freedaom 0:eb13172d8708 56 if(sifre == SIFRE) {
freedaom 0:eb13172d8708 57 lcd.cls();
freedaom 0:eb13172d8708 58 lcd.printf("Giris Basarili..");
freedaom 0:eb13172d8708 59 printf("Giris Basarili...");
freedaom 0:eb13172d8708 60 servo1.SetPosition(150);
freedaom 0:eb13172d8708 61 wait(3);
freedaom 0:eb13172d8708 62 lcd.cls();
freedaom 0:eb13172d8708 63 sifre = "";
freedaom 0:eb13172d8708 64 hata=4;
freedaom 0:eb13172d8708 65 goto Onur;
freedaom 0:eb13172d8708 66 } else {
freedaom 0:eb13172d8708 67 lcd.cls();
freedaom 0:eb13172d8708 68 lcd.printf("Hatali Giris..");
freedaom 0:eb13172d8708 69 for(uint8_t a = 10; a > 1; a--) {
freedaom 0:eb13172d8708 70 buzzer=1;
freedaom 0:eb13172d8708 71 wait_ms(50);
freedaom 0:eb13172d8708 72 buzzer=0;
freedaom 0:eb13172d8708 73 wait_ms(10);
freedaom 0:eb13172d8708 74 }
freedaom 0:eb13172d8708 75 buzzer=0;
freedaom 0:eb13172d8708 76 hata--;
freedaom 0:eb13172d8708 77 printf("Hatali Giris..");
freedaom 0:eb13172d8708 78 servo1.SetPosition(20);
freedaom 0:eb13172d8708 79 wait(3);
freedaom 0:eb13172d8708 80 lcd.cls();
freedaom 0:eb13172d8708 81 sifre = "";
freedaom 0:eb13172d8708 82 if(hata == 1) {
freedaom 0:eb13172d8708 83 hata = 4;
freedaom 0:eb13172d8708 84 lcd.printf(" saniye \n bekleyiniz..");
freedaom 0:eb13172d8708 85 for(uint8_t sure = 60; sure > 0; sure--) {
freedaom 0:eb13172d8708 86 lcd.locate(0,0);
freedaom 0:eb13172d8708 87 lcd.printf("%d ",sure);
freedaom 0:eb13172d8708 88 wait(1);
freedaom 0:eb13172d8708 89 }
freedaom 0:eb13172d8708 90 }
freedaom 0:eb13172d8708 91 goto Onur;
freedaom 0:eb13172d8708 92 }
freedaom 0:eb13172d8708 93 }
freedaom 0:eb13172d8708 94
freedaom 0:eb13172d8708 95 }
freedaom 0:eb13172d8708 96 wait(0.2);
freedaom 0:eb13172d8708 97 /////////////////////// /*
freedaom 0:eb13172d8708 98 if ( ! RfChip.PICC_IsNewCardPresent()) {
freedaom 0:eb13172d8708 99 wait_ms(100);
freedaom 0:eb13172d8708 100 continue;
freedaom 0:eb13172d8708 101 }
freedaom 0:eb13172d8708 102
freedaom 0:eb13172d8708 103 if ( ! RfChip.PICC_ReadCardSerial()) {
freedaom 0:eb13172d8708 104 wait_ms(100);
freedaom 0:eb13172d8708 105 continue;
freedaom 0:eb13172d8708 106 }
freedaom 0:eb13172d8708 107
freedaom 0:eb13172d8708 108 printf("Kart ID: ");
freedaom 0:eb13172d8708 109 for (uint8_t i = 0; i < RfChip.uid.size; i++) {
freedaom 0:eb13172d8708 110 printf(" %X", RfChip.uid.uidByte[i]);
freedaom 0:eb13172d8708 111 }
freedaom 0:eb13172d8708 112 printf("\n");
freedaom 0:eb13172d8708 113
freedaom 0:eb13172d8708 114 if(RfChip.uid.uidByte[0]==0x53 && RfChip.uid.uidByte[1]==0x25 && RfChip.uid.uidByte[2]==0xB6 && RfChip.uid.uidByte[3]== 0x0) {
freedaom 0:eb13172d8708 115 lcd.cls();
freedaom 0:eb13172d8708 116 lcd.printf("Giris Basarili..");
freedaom 0:eb13172d8708 117 printf("Giris Basarili...\n");
freedaom 0:eb13172d8708 118 servo1.SetPosition(150);
freedaom 0:eb13172d8708 119 wait(3);
freedaom 0:eb13172d8708 120 lcd.cls();
freedaom 0:eb13172d8708 121 sifre = "";
freedaom 0:eb13172d8708 122 hata=4;
freedaom 0:eb13172d8708 123 goto Onur;
freedaom 0:eb13172d8708 124 }
freedaom 0:eb13172d8708 125
freedaom 0:eb13172d8708 126 else {
freedaom 0:eb13172d8708 127 lcd.cls();
freedaom 0:eb13172d8708 128 lcd.printf("Hatali Giris..");
freedaom 0:eb13172d8708 129 for(uint8_t a = 10; a > 1; a--) {
freedaom 0:eb13172d8708 130 buzzer=1;
freedaom 0:eb13172d8708 131 wait_ms(50);
freedaom 0:eb13172d8708 132 buzzer=0;
freedaom 0:eb13172d8708 133 wait_ms(10);
freedaom 0:eb13172d8708 134 }
freedaom 0:eb13172d8708 135 buzzer=0;
freedaom 0:eb13172d8708 136 hata--;
freedaom 0:eb13172d8708 137 printf("Hatali Giris..\n");
freedaom 0:eb13172d8708 138 servo1.SetPosition(20);
freedaom 0:eb13172d8708 139 wait(3);
freedaom 0:eb13172d8708 140 lcd.cls();
freedaom 0:eb13172d8708 141 sifre = "";
freedaom 0:eb13172d8708 142 if(hata == 1) {
freedaom 0:eb13172d8708 143 hata = 4;
freedaom 0:eb13172d8708 144 lcd.printf(" saniye \n bekleyiniz..");
freedaom 0:eb13172d8708 145 for(uint8_t sure = 60; sure > 0; sure--) {
freedaom 0:eb13172d8708 146 lcd.locate(0,0);
freedaom 0:eb13172d8708 147 lcd.printf("%d ",sure);
freedaom 0:eb13172d8708 148 wait(1);
freedaom 0:eb13172d8708 149 }
freedaom 0:eb13172d8708 150 }
freedaom 0:eb13172d8708 151 goto Onur;
freedaom 0:eb13172d8708 152 }
freedaom 0:eb13172d8708 153 return 0;
freedaom 0:eb13172d8708 154 }
freedaom 0:eb13172d8708 155 }