PES 4 - Smart Medication Dispenser / PES4_ProgrammeforDesignReview2

Dependencies:   SDFileSystem mbed

Fork of PES4_Programme by PES 4 - Smart Medication Dispenser

Committer:
cittecla
Date:
Wed Mar 28 13:51:49 2018 +0000
Revision:
41:f054a83f9556
Parent:
40:b5e533e1e033
Child:
42:ba59ed6a2a06
Child:
63:be13158bb4dd
Updated variables.h from copy.; changed a few variables to fit the lower camel case convention

Who changed what in which revision?

UserRevisionLine numberNew contents of line
cittecla 3:94026b29e994 1 #include "main.h"
cittecla 2:72886e996098 2
itslinear 17:bbafd216e059 3
aeschsim 40:b5e533e1e033 4 int state = 47;
cittecla 41:f054a83f9556 5 int oldState;
cittecla 2:72886e996098 6
cittecla 2:72886e996098 7 Serial pc(USBTX, USBRX); // tx, rx
aeschsim 40:b5e533e1e033 8
aeschsim 40:b5e533e1e033 9 /* PWM Test Tool */
aeschsim 40:b5e533e1e033 10 int channel;
aeschsim 40:b5e533e1e033 11 int dutyCycle;
cittecla 2:72886e996098 12
cittecla 2:72886e996098 13 int main()
cittecla 2:72886e996098 14 {
cittecla 2:72886e996098 15 pc.baud(460800);
cittecla 2:72886e996098 16 printf("start...\r\n");
cittecla 2:72886e996098 17
aeschsim 34:9d6dd3a12641 18 while(1) {
cittecla 41:f054a83f9556 19 if(state != oldState) {
aeschsim 34:9d6dd3a12641 20 printf("state: %d\r\n",state);
cittecla 41:f054a83f9556 21 oldState = state;
aeschsim 34:9d6dd3a12641 22 }
aeschsim 34:9d6dd3a12641 23 switch (state) {
aeschsim 34:9d6dd3a12641 24 case 0:
aeschsim 34:9d6dd3a12641 25 printf("Hello World");
aeschsim 40:b5e533e1e033 26 state = 47;
aeschsim 34:9d6dd3a12641 27 break;
aeschsim 34:9d6dd3a12641 28 case 1:
aeschsim 34:9d6dd3a12641 29 break;
aeschsim 34:9d6dd3a12641 30 case 2:
aeschsim 34:9d6dd3a12641 31 break;
aeschsim 34:9d6dd3a12641 32 case 3:
aeschsim 34:9d6dd3a12641 33 break;
cittecla 2:72886e996098 34
aeschsim 34:9d6dd3a12641 35 case 10:
aeschsim 34:9d6dd3a12641 36 break;
aeschsim 34:9d6dd3a12641 37 case 11:
aeschsim 34:9d6dd3a12641 38 break;
cittecla 2:72886e996098 39
aeschsim 34:9d6dd3a12641 40 case 15:
aeschsim 34:9d6dd3a12641 41 break;
aeschsim 34:9d6dd3a12641 42 case 16:
aeschsim 34:9d6dd3a12641 43 break;
aeschsim 34:9d6dd3a12641 44 case 17:
aeschsim 34:9d6dd3a12641 45 break;
aeschsim 34:9d6dd3a12641 46
aeschsim 34:9d6dd3a12641 47 case 25:
aeschsim 34:9d6dd3a12641 48 break;
aeschsim 34:9d6dd3a12641 49 case 26:
aeschsim 34:9d6dd3a12641 50 break;
aeschsim 34:9d6dd3a12641 51 case 27:
aeschsim 34:9d6dd3a12641 52 break;
aeschsim 34:9d6dd3a12641 53 case 28:
aeschsim 34:9d6dd3a12641 54 break;
cittecla 2:72886e996098 55
cittecla 2:72886e996098 56
aeschsim 34:9d6dd3a12641 57 case 35:
aeschsim 34:9d6dd3a12641 58 break;
aeschsim 34:9d6dd3a12641 59 case 36:
aeschsim 34:9d6dd3a12641 60 break;
aeschsim 34:9d6dd3a12641 61 case 37:
aeschsim 34:9d6dd3a12641 62 break;
aeschsim 34:9d6dd3a12641 63 case 38:
aeschsim 34:9d6dd3a12641 64 break;
aeschsim 27:bf0577ecfa6e 65
aeschsim 40:b5e533e1e033 66 /**************************************************************/
aeschsim 40:b5e533e1e033 67 /* Test Zone */
aeschsim 40:b5e533e1e033 68
aeschsim 40:b5e533e1e033 69 /* Time test tool: set Time */
aeschsim 34:9d6dd3a12641 70 case 45:
aeschsim 34:9d6dd3a12641 71 s_time time;
aeschsim 34:9d6dd3a12641 72 time.second = 30;
aeschsim 34:9d6dd3a12641 73 time.minute = 53;
aeschsim 34:9d6dd3a12641 74 time.hour = 12;
aeschsim 34:9d6dd3a12641 75 time.day = 27;
aeschsim 34:9d6dd3a12641 76 time.weekday = 2;
aeschsim 34:9d6dd3a12641 77 time.month = 3;
aeschsim 34:9d6dd3a12641 78 time.year = 18;
aeschsim 34:9d6dd3a12641 79 pc.printf("set now time\r\n");
aeschsim 34:9d6dd3a12641 80 setTime(&time);
aeschsim 35:a9bf045dc014 81 pc.printf("read time: %02d:%02d:%02d, %02d.%02d.20%02d, weekday: %d\r\n",time.hour, time.minute, time.second, time.day, time.month, time.year, time.weekday);
aeschsim 40:b5e533e1e033 82 state = 47;
aeschsim 34:9d6dd3a12641 83 pc.printf("change state to: %d\r\n",state);
aeschsim 34:9d6dd3a12641 84 break;
aeschsim 40:b5e533e1e033 85
aeschsim 40:b5e533e1e033 86 /* Time test tool: get Time */
aeschsim 34:9d6dd3a12641 87 case 46:
aeschsim 34:9d6dd3a12641 88 wait(5);
aeschsim 34:9d6dd3a12641 89 time = getTime();
aeschsim 35:a9bf045dc014 90 pc.printf("read time: %02d:%02d:%02d, %02d.%02d.20%02d, weekday: %d\r\n",time.hour, time.minute, time.second, time.day, time.month, time.year, time.weekday);
aeschsim 40:b5e533e1e033 91 state = 47;
aeschsim 40:b5e533e1e033 92 break;
aeschsim 40:b5e533e1e033 93
aeschsim 40:b5e533e1e033 94 /* Console State Switch */
aeschsim 40:b5e533e1e033 95 case 47:
aeschsim 40:b5e533e1e033 96 pc.printf("State Switch: Enter next State: \n\r");
aeschsim 40:b5e533e1e033 97 pc.printf("45\tset Time\n\r46\tread Time\n\r47\tState Switch\n\r48\tServo Board Test Tool\n\t49\tempty\n\r50\tempty\n\r");
aeschsim 40:b5e533e1e033 98 pc.scanf("%d", &state);
aeschsim 40:b5e533e1e033 99 pc.printf("Switch to State %d\n\r",state);
aeschsim 40:b5e533e1e033 100 fflush(stdin);
aeschsim 34:9d6dd3a12641 101 break;
aeschsim 40:b5e533e1e033 102
aeschsim 40:b5e533e1e033 103 /* Servo-Board Test Tool */
aeschsim 34:9d6dd3a12641 104 case 48:
aeschsim 40:b5e533e1e033 105 pc.printf("Servo-Board Test Tool\n\rEnter Channel Number and then Duty Cycle\n\r");
aeschsim 40:b5e533e1e033 106 pc.printf("for exit, enter Channel > 15");
aeschsim 40:b5e533e1e033 107 channel = 0;
aeschsim 40:b5e533e1e033 108 while (channel < 16) {
aeschsim 40:b5e533e1e033 109 pc.printf("Channel Number: ");
aeschsim 40:b5e533e1e033 110 pc.scanf("%d", &channel);
aeschsim 40:b5e533e1e033 111 pc.printf("\r\nDuty Cycle 0..100: ");
aeschsim 40:b5e533e1e033 112 pc.scanf("%d", &dutyCycle);
aeschsim 40:b5e533e1e033 113 setPWM((char)channel, (char)dutyCycle);
aeschsim 40:b5e533e1e033 114 fflush(stdin);
aeschsim 40:b5e533e1e033 115 }
aeschsim 40:b5e533e1e033 116 pc.printf("leave Servo-Board Test Tool\n\r");
aeschsim 40:b5e533e1e033 117 state = 47;
aeschsim 40:b5e533e1e033 118 break;
aeschsim 40:b5e533e1e033 119
aeschsim 40:b5e533e1e033 120 case 49:
aeschsim 40:b5e533e1e033 121 state = 47;
aeschsim 34:9d6dd3a12641 122 break;
cittecla 2:72886e996098 123
cittecla 2:72886e996098 124
aeschsim 34:9d6dd3a12641 125 case 50:
aeschsim 40:b5e533e1e033 126
aeschsim 40:b5e533e1e033 127 state = 47;
aeschsim 40:b5e533e1e033 128 break;
aeschsim 40:b5e533e1e033 129
aeschsim 40:b5e533e1e033 130 default:
aeschsim 40:b5e533e1e033 131 state = 47; /* Go to State Switch */
aeschsim 34:9d6dd3a12641 132 break;
aeschsim 34:9d6dd3a12641 133 }
cittecla 2:72886e996098 134 }
aeschsim 34:9d6dd3a12641 135 pc.printf("exit while 1 loop");
cittecla 2:72886e996098 136 }