kh

Dependencies:   mbed PinDetect Servo

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?

UserRevisionLine numberNew 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