kh
Dependencies: mbed PinDetect Servo
main.cpp@1:2c365f6da61d, 2018-11-10 (annotated)
- Committer:
- Sayak97
- Date:
- Sat Nov 10 20:08:46 2018 +0000
- Revision:
- 1:2c365f6da61d
- Parent:
- 0:28e05e1a3d1e
- Child:
- 2:04bbd14722bd
hjughj'; \; \;
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 the functions of the safe |
Sayak97 | 0:28e05e1a3d1e | 4 | * Language: C |
Sayak97 | 0:28e05e1a3d1e | 5 | */ |
Sayak97 | 0:28e05e1a3d1e | 6 | #include "open.h" |
Sayak97 | 0:28e05e1a3d1e | 7 | #include "lock.h" |
Sayak97 | 0:28e05e1a3d1e | 8 | #include "setup.h" |
Sayak97 | 0:28e05e1a3d1e | 9 | #include "sleep.h" |
Sayak97 | 0:28e05e1a3d1e | 10 | #include "parameters.h" |
Sayak97 | 0:28e05e1a3d1e | 11 | |
Sayak97 | 0:28e05e1a3d1e | 12 | |
Sayak97 | 0:28e05e1a3d1e | 13 | /* |
Sayak97 | 0:28e05e1a3d1e | 14 | * Function: SafeStateMachine |
Sayak97 | 0:28e05e1a3d1e | 15 | * -------------------- |
Sayak97 | 0:28e05e1a3d1e | 16 | * Routine for the safe's basic functions. |
Sayak97 | 0:28e05e1a3d1e | 17 | * |
Sayak97 | 0:28e05e1a3d1e | 18 | * |
Sayak97 | 0:28e05e1a3d1e | 19 | * |
Sayak97 | 0:28e05e1a3d1e | 20 | */ |
Sayak97 | 0:28e05e1a3d1e | 21 | void SafeStateMachine() { |
Sayak97 | 0:28e05e1a3d1e | 22 | |
Sayak97 | 0:28e05e1a3d1e | 23 | |
Sayak97 | 0:28e05e1a3d1e | 24 | enum states state = SETUP; |
Sayak97 | 0:28e05e1a3d1e | 25 | |
Sayak97 | 0:28e05e1a3d1e | 26 | while (1) { |
Sayak97 | 0:28e05e1a3d1e | 27 | switch (state) { |
Sayak97 | 0:28e05e1a3d1e | 28 | case OPEN:/*state in which the the case is open*/ |
Sayak97 | 0:28e05e1a3d1e | 29 | state = open(); |
Sayak97 | 0:28e05e1a3d1e | 30 | break; |
Sayak97 | 0:28e05e1a3d1e | 31 | case LOCK:/*state in which the case us closed*/ |
Sayak97 | 0:28e05e1a3d1e | 32 | state = lock(); |
Sayak97 | 0:28e05e1a3d1e | 33 | break; |
Sayak97 | 0:28e05e1a3d1e | 34 | case SETUP:/*state in which the the case is changing its settings*/ |
Sayak97 | 0:28e05e1a3d1e | 35 | state = setup(); |
Sayak97 | 0:28e05e1a3d1e | 36 | break; |
Sayak97 | 0:28e05e1a3d1e | 37 | default: |
Sayak97 | 1:2c365f6da61d | 38 | state = lock(); |
Sayak97 | 0:28e05e1a3d1e | 39 | } |
Sayak97 | 0:28e05e1a3d1e | 40 | } |
Sayak97 | 0:28e05e1a3d1e | 41 | } |
Sayak97 | 0:28e05e1a3d1e | 42 | |
Sayak97 | 1:2c365f6da61d | 43 | int main() { |
Sayak97 | 1:2c365f6da61d | 44 | SafeStateMachine(); |
Sayak97 | 1:2c365f6da61d | 45 | } |
Sayak97 | 0:28e05e1a3d1e | 46 | |
Sayak97 | 0:28e05e1a3d1e | 47 | |
Sayak97 | 1:2c365f6da61d | 48 |