kh
Dependencies: mbed PinDetect Servo
authentication.cpp@3:2f7a7e2cd49e, 2018-11-13 (annotated)
- Committer:
- Sayak97
- Date:
- Tue Nov 13 03:19:06 2018 +0000
- Revision:
- 3:2f7a7e2cd49e
- Parent:
- 2:04bbd14722bd
DSFDS; ;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Sayak97 | 0:28e05e1a3d1e | 1 | /* |
Sayak97 | 0:28e05e1a3d1e | 2 | * Authors: Group 4 Adam Elghor, Brian Kaplan, Sayak Chatterjee, Moraa Onwonga |
Sayak97 | 0:28e05e1a3d1e | 3 | * Purpose: Controls Input and Output Data |
Sayak97 | 0:28e05e1a3d1e | 4 | * Language: C |
Sayak97 | 0:28e05e1a3d1e | 5 | */ |
Sayak97 | 1:2c365f6da61d | 6 | #include "authentication.h" |
Sayak97 | 0:28e05e1a3d1e | 7 | #include "powerManagement.h" |
Sayak97 | 0:28e05e1a3d1e | 8 | #include "parameters.h" |
Sayak97 | 0:28e05e1a3d1e | 9 | |
Sayak97 | 0:28e05e1a3d1e | 10 | int p1; |
Sayak97 | 0:28e05e1a3d1e | 11 | int p2; |
Sayak97 | 0:28e05e1a3d1e | 12 | int p3; |
Sayak97 | 0:28e05e1a3d1e | 13 | int p4; |
Sayak97 | 0:28e05e1a3d1e | 14 | |
Sayak97 | 0:28e05e1a3d1e | 15 | int entryNum1; |
Sayak97 | 0:28e05e1a3d1e | 16 | int entryNum2; |
Sayak97 | 0:28e05e1a3d1e | 17 | int entryNum3; |
Sayak97 | 0:28e05e1a3d1e | 18 | int entryNum4; |
Sayak97 | 0:28e05e1a3d1e | 19 | |
Sayak97 | 1:2c365f6da61d | 20 | |
Sayak97 | 3:2f7a7e2cd49e | 21 | AnalogIn pot1(p15); |
Sayak97 | 3:2f7a7e2cd49e | 22 | AnalogIn pot2(p16); |
Sayak97 | 3:2f7a7e2cd49e | 23 | AnalogIn pot3(p18); |
Sayak97 | 3:2f7a7e2cd49e | 24 | AnalogIn pot4(p19); |
Sayak97 | 1:2c365f6da61d | 25 | |
Sayak97 | 2:04bbd14722bd | 26 | bool bluetoothCode = false; |
Sayak97 | 2:04bbd14722bd | 27 | bool bluetoothSetup = false; |
Sayak97 | 2:04bbd14722bd | 28 | Serial blue(p28,p27); |
Sayak97 | 3:2f7a7e2cd49e | 29 | Serial pc(USBTX, USBRX); |
Sayak97 | 2:04bbd14722bd | 30 | |
Sayak97 | 0:28e05e1a3d1e | 31 | /* |
Sayak97 | 0:28e05e1a3d1e | 32 | * Function: setEntrySequence |
Sayak97 | 0:28e05e1a3d1e | 33 | * -------------------- |
Sayak97 | 0:28e05e1a3d1e | 34 | * Reads in user's entry sequence attempt |
Sayak97 | 0:28e05e1a3d1e | 35 | */ |
Sayak97 | 0:28e05e1a3d1e | 36 | void setEntrySequenceAttempt() { |
Sayak97 | 3:2f7a7e2cd49e | 37 | entryNum1 = float(pot1) * 6; |
Sayak97 | 3:2f7a7e2cd49e | 38 | entryNum2 = float(pot2) * 6; |
Sayak97 | 3:2f7a7e2cd49e | 39 | entryNum3 = float(pot3) * 6; |
Sayak97 | 3:2f7a7e2cd49e | 40 | entryNum4 = float(pot4) * 6; |
Sayak97 | 0:28e05e1a3d1e | 41 | } |
Sayak97 | 0:28e05e1a3d1e | 42 | |
Sayak97 | 0:28e05e1a3d1e | 43 | /* |
Sayak97 | 0:28e05e1a3d1e | 44 | * Function: CorrectEntrySequenceAttempt |
Sayak97 | 0:28e05e1a3d1e | 45 | * -------------------- |
Sayak97 | 0:28e05e1a3d1e | 46 | * Checks whether the user's entry sequence attempt is correct |
Sayak97 | 0:28e05e1a3d1e | 47 | * |
Sayak97 | 0:28e05e1a3d1e | 48 | * returns: true if the entry sequence attempt from the user matches |
Sayak97 | 0:28e05e1a3d1e | 49 | * the set entry sequence otherwise false |
Sayak97 | 0:28e05e1a3d1e | 50 | * |
Sayak97 | 0:28e05e1a3d1e | 51 | */ |
Sayak97 | 0:28e05e1a3d1e | 52 | bool CorrectEntrySequenceAttempt() { |
Sayak97 | 2:04bbd14722bd | 53 | if (bluetoothCode) { |
Sayak97 | 2:04bbd14722bd | 54 | return true; |
Sayak97 | 2:04bbd14722bd | 55 | |
Sayak97 | 2:04bbd14722bd | 56 | } |
Sayak97 | 2:04bbd14722bd | 57 | p1 = float(pot1) * 6; |
Sayak97 | 2:04bbd14722bd | 58 | p2 = float(pot2) * 6; |
Sayak97 | 2:04bbd14722bd | 59 | p3 = float(pot3) * 6; |
Sayak97 | 2:04bbd14722bd | 60 | p4 = float(pot4) * 6; |
Sayak97 | 0:28e05e1a3d1e | 61 | |
Sayak97 | 1:2c365f6da61d | 62 | return (checkPot(p1,entryNum1) && checkPot(p2,entryNum2) && checkPot(p3,entryNum3) && checkPot(p3,entryNum3)); |
Sayak97 | 0:28e05e1a3d1e | 63 | } |
Sayak97 | 0:28e05e1a3d1e | 64 | |
Sayak97 | 3:2f7a7e2cd49e | 65 | void printPotValues() { |
Sayak97 | 3:2f7a7e2cd49e | 66 | pc.printf("pot1 is %f", pot1); |
Sayak97 | 3:2f7a7e2cd49e | 67 | |
Sayak97 | 3:2f7a7e2cd49e | 68 | } |
Sayak97 | 3:2f7a7e2cd49e | 69 | |
Sayak97 | 0:28e05e1a3d1e | 70 | bool checkPot(int p1, int p2) { |
Sayak97 | 0:28e05e1a3d1e | 71 | return (p2 - p1) < 2 && (p1 - p2) > -2; |
Sayak97 | 0:28e05e1a3d1e | 72 | |
Sayak97 | 0:28e05e1a3d1e | 73 | } |
Sayak97 | 0:28e05e1a3d1e | 74 | |
Sayak97 | 2:04bbd14722bd | 75 | bool checkBluetooth() { |
Sayak97 | 2:04bbd14722bd | 76 | if (bluetoothSetup) { |
Sayak97 | 2:04bbd14722bd | 77 | bluetoothSetup = false; |
Sayak97 | 2:04bbd14722bd | 78 | return true; |
Sayak97 | 2:04bbd14722bd | 79 | } |
Sayak97 | 2:04bbd14722bd | 80 | return false; |
Sayak97 | 2:04bbd14722bd | 81 | } |
Sayak97 | 2:04bbd14722bd | 82 | |
Sayak97 | 0:28e05e1a3d1e | 83 | |
Sayak97 | 0:28e05e1a3d1e | 84 | |
Sayak97 | 0:28e05e1a3d1e | 85 | /* |
Sayak97 | 2:04bbd14722bd | 86 | * Function: parse_bluetooth |
Sayak97 | 0:28e05e1a3d1e | 87 | * -------------------- |
Sayak97 | 0:28e05e1a3d1e | 88 | * bluetooth stuff EDIT LATER |
Sayak97 | 0:28e05e1a3d1e | 89 | * |
Sayak97 | 0:28e05e1a3d1e | 90 | * returns: |
Sayak97 | 0:28e05e1a3d1e | 91 | * |
Sayak97 | 0:28e05e1a3d1e | 92 | */ |
Sayak97 | 2:04bbd14722bd | 93 | void parse_bluetooth() |
Sayak97 | 2:04bbd14722bd | 94 | { |
Sayak97 | 2:04bbd14722bd | 95 | switch (blue.getc()) { |
Sayak97 | 2:04bbd14722bd | 96 | case 'o': |
Sayak97 | 2:04bbd14722bd | 97 | bluetoothCode = true; |
Sayak97 | 2:04bbd14722bd | 98 | break; |
Sayak97 | 2:04bbd14722bd | 99 | case 'l': |
Sayak97 | 2:04bbd14722bd | 100 | bluetoothCode = false; |
Sayak97 | 2:04bbd14722bd | 101 | break; |
Sayak97 | 2:04bbd14722bd | 102 | case 's': |
Sayak97 | 2:04bbd14722bd | 103 | bluetoothSetup = true; |
Sayak97 | 2:04bbd14722bd | 104 | break; |
Sayak97 | 2:04bbd14722bd | 105 | } |
Sayak97 | 2:04bbd14722bd | 106 | |
Sayak97 | 0:28e05e1a3d1e | 107 | } |
Sayak97 | 0:28e05e1a3d1e | 108 | |
Sayak97 | 2:04bbd14722bd | 109 | void start_bluetooth() { |
Sayak97 | 2:04bbd14722bd | 110 | blue.attach(&parse_bluetooth, Serial::RxIrq); |
Sayak97 | 2:04bbd14722bd | 111 | } |
Sayak97 | 0:28e05e1a3d1e | 112 | |
Sayak97 | 0:28e05e1a3d1e | 113 | /* |
Sayak97 | 0:28e05e1a3d1e | 114 | * Function: sdCard |
Sayak97 | 0:28e05e1a3d1e | 115 | * -------------------- |
Sayak97 | 0:28e05e1a3d1e | 116 | * sdCard stuff EDIT LATER |
Sayak97 | 0:28e05e1a3d1e | 117 | * |
Sayak97 | 0:28e05e1a3d1e | 118 | * returns: |
Sayak97 | 0:28e05e1a3d1e | 119 | * |
Sayak97 | 0:28e05e1a3d1e | 120 | */ |
Sayak97 | 0:28e05e1a3d1e | 121 | void sdCard() { |
Sayak97 | 0:28e05e1a3d1e | 122 | |
Sayak97 | 0:28e05e1a3d1e | 123 | } |
Sayak97 | 0:28e05e1a3d1e | 124 | |
Sayak97 | 2:04bbd14722bd | 125 |