-
Notifications
You must be signed in to change notification settings - Fork 0
/
forever.py
97 lines (81 loc) · 2.56 KB
/
forever.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
import search, buttons, time, registerUser, registerAuthorizer, lockOutput, irsensor
import baseMethods, sys, lcddriver
import RPi.GPIO as GPIO
display = lcddriver.lcd()
search = search.Search()
but = buttons.Buttons()
lockOutput = lockOutput.LockOutput()
irsens=irsensor.Irsens()
baseMethod = baseMethods.BaseMethods()
count = 0
def sButPressed(title):
if title == "Register User":
regUser = registerUser.RegisterUser()
regUser.main()
elif title == "Register Authorizer":
regAutho = registerAuthorizer.RegisterAuthorizer()
regAutho.main()
def mButPressed():
global count
count += 1
if count == 1:
display.lcd_clear()
display.lcd_display_string("Register User",1)
while but.button_1() or but.button_2():
pass
time.sleep(0.5)
timestamp1 = time.time()
while (time.time() - timestamp1) <= 120:
if but.button_2():
sButPressed("Register User") #registration process initiated
break
elif but.button_1():
count += 1
break
if count == 2:
while but.button_1() or but.button_2():
pass
display.lcd_clear()
display.lcd_display_string("Register", 1)
display.lcd_display_string("Authorizer", 2)
time.sleep(0.5)
timestamp1 = time.time()
while (time.time() - timestamp1) <= 120:
if but.button_2():
sButPressed("Register Authorizer")
break
elif but.button_1():
count += 1
break
else:
count = 0
if baseMethod.verifyFinger():
display.lcd_clear()
display.lcd_display_string('Verification Error', 1)
time.sleep(1.4)
sys.exit(0)
GPIO.setmode(GPIO.BCM)
while but.button_1() or but.button_2():
pass
while True:
if irsens.ir(): # buzzer high
pass
if but.button_1():
mButPressed()
time.sleep(0.5)
else:
time.sleep(0.05)
display.lcd_display_string("Put Finger", 1)
finalOutput = search.main()
if finalOutput[0] == 0:
display.lcd_clear()
display.lcd_display_string("Access Granted", 1)
lockOutput.main()
time.sleep(1)
display.lcd_clear()
# GPIO.setup(n, GPIO.IN) #n is the relay pin output
if finalOutput == [304]:
display.lcd_clear()
display.lcd_display_string("Access Denied", 1)
time.sleep(1)
display.lcd_clear()