Demo Team / Mbed 2 deprecated bluefruit

Dependencies:   mbed

Committer:
ShalajLawania
Date:
Tue Nov 18 09:49:40 2014 +0000
Revision:
4:4775701a0d62
Parent:
3:b519acc65986
Child:
5:9af1305f7779
Updated

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ShalajLawania 1:266895757ab3 1 /* This Bluetooth Remote uses a Bluefruit E-Z Key
ShalajLawania 1:266895757ab3 2
ShalajLawania 1:266895757ab3 3 The default switch-key mapping for Bluefruit E-Z Key is
ShalajLawania 1:266895757ab3 4 #0 - Up Arrow
ShalajLawania 1:266895757ab3 5 #1 - Down Arrow
ShalajLawania 1:266895757ab3 6 #2 - Left Arrow
ShalajLawania 1:266895757ab3 7 #3 - Right Arrow
ShalajLawania 1:266895757ab3 8 #4 - Return
ShalajLawania 1:266895757ab3 9 #5 - Space
ShalajLawania 1:266895757ab3 10 #6 - the number '1'
ShalajLawania 1:266895757ab3 11 #7 - the number '2'
ShalajLawania 1:266895757ab3 12 #8 - lowercase 'w'
ShalajLawania 1:266895757ab3 13 #9 - lowercase 'a'
ShalajLawania 1:266895757ab3 14 #10 - lowercase 's'
ShalajLawania 1:266895757ab3 15 #11 - lowercase 'd'
ShalajLawania 1:266895757ab3 16
ShalajLawania 4:4775701a0d62 17 These however can be remapped to include any keys the user needs (Shift, Esc, Backspace, VolumeUp, Play/Pause) along with Mouse movement coordinates and buttons
ShalajLawania 1:266895757ab3 18
ShalajLawania 1:266895757ab3 19 This Remote records all user input after one input has been entered.
ShalajLawania 1:266895757ab3 20 */
ShalajLawania 1:266895757ab3 21
ShalajLawania 0:4959c491059f 22 #include "mbed.h"
ShalajLawania 0:4959c491059f 23 #include "string.h"
ShalajLawania 4:4775701a0d62 24 #include "OneButton.h"
ShalajLawania 4:4775701a0d62 25 #include "TwoButton.h"
ShalajLawania 1:266895757ab3 26
ShalajLawania 1:266895757ab3 27 void TwoButtons(char l)
ShalajLawania 1:266895757ab3 28 {
ShalajLawania 1:266895757ab3 29 t2_stop();
ShalajLawania 1:266895757ab3 30
ShalajLawania 1:266895757ab3 31 if(onebutton == 0) {
ShalajLawania 1:266895757ab3 32 twobutton_instant(l);
ShalajLawania 1:266895757ab3 33 } else {
ShalajLawania 1:266895757ab3 34 twobutton(l);
ShalajLawania 1:266895757ab3 35 }
ShalajLawania 1:266895757ab3 36 }
ShalajLawania 1:266895757ab3 37
ShalajLawania 1:266895757ab3 38 void OneButton(char q)
ShalajLawania 1:266895757ab3 39 {
ShalajLawania 1:266895757ab3 40 if (twobuttons) {
ShalajLawania 1:266895757ab3 41 twobutton_handler();
ShalajLawania 1:266895757ab3 42 }
ShalajLawania 1:266895757ab3 43 onebutton_handler(q);
ShalajLawania 1:266895757ab3 44 }
ShalajLawania 0:4959c491059f 45
ShalajLawania 0:4959c491059f 46 void comparison(char *b)
ShalajLawania 0:4959c491059f 47 {
ShalajLawania 1:266895757ab3 48 char *up, *down, *left, *right, *nobutton, *upright, *updown, *upleft, *rightleft, *downright, *downleft, *a, *w, *s, *d, *enter, *space, *one, *two, *wa,
ShalajLawania 2:98ab6e6dd8aa 49 *wd, *sa, *sd, *ws, *ad, *onetwo, *upspace, *rightspace, *downspace, *leftspace, *upenter, *downenter, *rightenter, *leftenter, *oneup, *onedown, *oneleft, *oneright,
ShalajLawania 2:98ab6e6dd8aa 50 *twoup, *twodown, *tworight, *twoleft, *onew, *ones, *oned, *onea, *oneenter, *onespace, *twow, *twos, *twod, *twoa, *twospace, *twoenter;
ShalajLawania 0:4959c491059f 51 up = strstr(b, "K 0xFFE"); // 1
ShalajLawania 0:4959c491059f 52 down = strstr(b, "K 0xFFD"); // 2
ShalajLawania 0:4959c491059f 53 left = strstr(b, "K 0xFFB"); // 3
ShalajLawania 0:4959c491059f 54 right = strstr(b, "K 0xFF7"); // 4
ShalajLawania 0:4959c491059f 55 upright = strstr(b, "K 0xFF6"); // 5
ShalajLawania 0:4959c491059f 56 updown = strstr(b, "K 0xFFC"); // 6
ShalajLawania 0:4959c491059f 57 upleft = strstr(b, "K 0xFFA"); // 7
ShalajLawania 0:4959c491059f 58 downright = strstr(b, "K 0xFF5"); // 8
ShalajLawania 0:4959c491059f 59 downleft = strstr(b, "K 0xFF9"); // 9
ShalajLawania 0:4959c491059f 60 rightleft = strstr(b, "K 0xFF3"); //10
ShalajLawania 1:266895757ab3 61 w = strstr(b, "K 0xEFF"); //11
ShalajLawania 1:266895757ab3 62 s = strstr(b, "K 0xBFF"); //12
ShalajLawania 1:266895757ab3 63 a = strstr(b, "K 0xDFF"); //13
ShalajLawania 1:266895757ab3 64 d = strstr(b, "K 0x7FF"); //14
ShalajLawania 1:266895757ab3 65 space = strstr(b, "K 0xFDF"); //15
ShalajLawania 1:266895757ab3 66 enter = strstr(b, "K 0xFEF"); //16
ShalajLawania 1:266895757ab3 67 one = strstr(b, "K 0xFBF"); //17
ShalajLawania 1:266895757ab3 68 two = strstr(b, "K 0xF7F"); //18
ShalajLawania 1:266895757ab3 69 wa = strstr(b, "K 0xCFF"); //19
ShalajLawania 1:266895757ab3 70 wd = strstr(b, "K 0x6FF"); //20
ShalajLawania 1:266895757ab3 71 sa = strstr(b, "K 0x9FF"); //21
ShalajLawania 4:4775701a0d62 72 sd = strstr(b, "K 0x3FF"); //22
ShalajLawania 1:266895757ab3 73 ws = strstr(b, "K 0xAFF"); //23
ShalajLawania 1:266895757ab3 74 ad = strstr(b, "K 0x5FF"); //24
ShalajLawania 1:266895757ab3 75 onetwo = strstr(b, "K 0xF3F"); //25
ShalajLawania 1:266895757ab3 76 upspace = strstr(b, "K 0xFDE"); //26
ShalajLawania 1:266895757ab3 77 rightspace = strstr(b, "K 0xFD7"); //27
ShalajLawania 1:266895757ab3 78 leftspace = strstr(b, "K 0xFDB"); //28
ShalajLawania 1:266895757ab3 79 downspace = strstr(b, "K 0xFDD"); //29
ShalajLawania 1:266895757ab3 80 upenter = strstr(b, "K 0xFEE"); //30
ShalajLawania 1:266895757ab3 81 downenter = strstr(b, "K 0xFED"); //31
ShalajLawania 1:266895757ab3 82 rightenter = strstr(b, "K 0xFE7"); //32
ShalajLawania 1:266895757ab3 83 leftenter = strstr(b, "K 0xFEB"); //33
ShalajLawania 2:98ab6e6dd8aa 84 oneup = strstr(b, "K 0xFBE"); //34 move 34 - 53 have just been accounted to prevent array gaps, play feature can be incorporated
ShalajLawania 2:98ab6e6dd8aa 85 onedown = strstr(b, "K 0xFBD"); //35
ShalajLawania 2:98ab6e6dd8aa 86 oneleft = strstr(b, "K 0xFBB"); //36
ShalajLawania 2:98ab6e6dd8aa 87 oneright = strstr(b, "K 0xFB7"); //37
ShalajLawania 2:98ab6e6dd8aa 88 onew = strstr(b, "K 0xEBF"); //38
ShalajLawania 2:98ab6e6dd8aa 89 ones = strstr(b, "K 0xBBF"); //39
ShalajLawania 2:98ab6e6dd8aa 90 onea = strstr(b, "K 0xDBF"); //40
ShalajLawania 2:98ab6e6dd8aa 91 oned = strstr(b, "K 0x7BF"); //41
ShalajLawania 2:98ab6e6dd8aa 92 onespace = strstr(b, "K 0xF9F"); //42
ShalajLawania 2:98ab6e6dd8aa 93 oneenter = strstr(b, "K 0xFAF"); //43
ShalajLawania 2:98ab6e6dd8aa 94 twoup = strstr(b, "K 0xF7E"); //44
ShalajLawania 2:98ab6e6dd8aa 95 twodown = strstr(b, "K 0xF7D"); //45
ShalajLawania 2:98ab6e6dd8aa 96 tworight = strstr(b, "K 0xF77"); //46
ShalajLawania 2:98ab6e6dd8aa 97 twoleft = strstr(b, "K 0xF7B"); //47
ShalajLawania 2:98ab6e6dd8aa 98 twow = strstr(b, "K 0xE7F"); //48
ShalajLawania 2:98ab6e6dd8aa 99 twos = strstr(b, "K 0xB7F"); //49
ShalajLawania 2:98ab6e6dd8aa 100 twoa = strstr(b, "K 0xD7F"); //50
ShalajLawania 2:98ab6e6dd8aa 101 twod = strstr(b, "K 0x77F"); //51
ShalajLawania 2:98ab6e6dd8aa 102 twoenter = strstr(b, "K 0xF6F"); //52
ShalajLawania 2:98ab6e6dd8aa 103 twospace = strstr(b, "K 0xF5F"); //53
ShalajLawania 4:4775701a0d62 104 nobutton = strstr(b, "K 0xFFF");
ShalajLawania 0:4959c491059f 105
ShalajLawania 4:4775701a0d62 106 if (strcmp(up, "K 0xFFE") == 0) { // 1
ShalajLawania 1:266895757ab3 107 OneButton(1);
ShalajLawania 1:266895757ab3 108 }
ShalajLawania 1:266895757ab3 109 if (strcmp(down, "K 0xFFD") == 0) { // 2
ShalajLawania 1:266895757ab3 110 OneButton(2);
ShalajLawania 1:266895757ab3 111 }
ShalajLawania 1:266895757ab3 112 if (strcmp(left, "K 0xFFB") == 0) { // 3
ShalajLawania 1:266895757ab3 113 OneButton(3);
ShalajLawania 1:266895757ab3 114 }
ShalajLawania 1:266895757ab3 115 if (strcmp(right, "K 0xFF7") == 0) { // 4
ShalajLawania 1:266895757ab3 116 OneButton(4);
ShalajLawania 1:266895757ab3 117 }
ShalajLawania 1:266895757ab3 118 if (strcmp(upright, "K 0xFF6") == 0) { // 5
ShalajLawania 1:266895757ab3 119 TwoButtons(5);
ShalajLawania 1:266895757ab3 120 }
ShalajLawania 1:266895757ab3 121 if (strcmp(updown, "K 0xFFC") == 0) { // 6
ShalajLawania 1:266895757ab3 122 TwoButtons(6);
ShalajLawania 0:4959c491059f 123 }
ShalajLawania 1:266895757ab3 124 if (strcmp(upleft, "K 0xFFA") == 0) { // 7
ShalajLawania 1:266895757ab3 125 TwoButtons(7);
ShalajLawania 1:266895757ab3 126 }
ShalajLawania 1:266895757ab3 127 if (strcmp(downright, "K 0xFF5") == 0) { // 8
ShalajLawania 1:266895757ab3 128 TwoButtons(8);
ShalajLawania 1:266895757ab3 129 }
ShalajLawania 1:266895757ab3 130 if (strcmp(downleft, "K 0xFF9") == 0) { // 9
ShalajLawania 1:266895757ab3 131 TwoButtons(9);
ShalajLawania 0:4959c491059f 132 }
ShalajLawania 1:266895757ab3 133 if (strcmp(rightleft, "K 0xFF3") == 0) { //10
ShalajLawania 1:266895757ab3 134 TwoButtons(10);
ShalajLawania 1:266895757ab3 135 }
ShalajLawania 1:266895757ab3 136 if (strcmp(w, "K 0xEFF") == 0) { // 11
ShalajLawania 1:266895757ab3 137 OneButton(11);
ShalajLawania 1:266895757ab3 138 }
ShalajLawania 1:266895757ab3 139 if (strcmp(s, "K 0xBFF") == 0) { // 12
ShalajLawania 1:266895757ab3 140 OneButton(12);
ShalajLawania 0:4959c491059f 141 }
ShalajLawania 1:266895757ab3 142 if (strcmp(a, "K 0xDFF") == 0) { // 13
ShalajLawania 1:266895757ab3 143 OneButton(13);
ShalajLawania 1:266895757ab3 144 }
ShalajLawania 1:266895757ab3 145 if (strcmp(d, "K 0x7FF") == 0) { // 14
ShalajLawania 1:266895757ab3 146 OneButton(14);
ShalajLawania 1:266895757ab3 147 }
ShalajLawania 1:266895757ab3 148 if (strcmp(space, "K 0xFDF") == 0) { // 15
ShalajLawania 1:266895757ab3 149 OneButton(15);
ShalajLawania 1:266895757ab3 150 }
ShalajLawania 1:266895757ab3 151 if (strcmp(enter, "K 0xFEF") == 0) { // 16
ShalajLawania 1:266895757ab3 152 OneButton(16);
ShalajLawania 1:266895757ab3 153 }
ShalajLawania 1:266895757ab3 154 if (strcmp(one, "K 0xFBF") == 0) { // 17
ShalajLawania 1:266895757ab3 155 OneButton(17);
ShalajLawania 0:4959c491059f 156 }
ShalajLawania 1:266895757ab3 157 if (strcmp(two, "K 0xF7F") == 0) { // 18
ShalajLawania 1:266895757ab3 158 OneButton(18);
ShalajLawania 1:266895757ab3 159 }
ShalajLawania 1:266895757ab3 160 if (strcmp(wa, "K 0xCFF") == 0) { // 19
ShalajLawania 1:266895757ab3 161 TwoButtons(19);
ShalajLawania 1:266895757ab3 162 }
ShalajLawania 1:266895757ab3 163 if (strcmp(wd, "K 0x6FF") == 0) { // 20
ShalajLawania 1:266895757ab3 164 TwoButtons(20);
ShalajLawania 1:266895757ab3 165 }
ShalajLawania 1:266895757ab3 166 if (strcmp(sa, "K 0x9FF") == 0) { // 21
ShalajLawania 1:266895757ab3 167 TwoButtons(21);
ShalajLawania 1:266895757ab3 168 }
ShalajLawania 1:266895757ab3 169 if (strcmp(sd, "K 0x3FF") == 0) { // 22
ShalajLawania 1:266895757ab3 170 TwoButtons(22);
ShalajLawania 0:4959c491059f 171 }
ShalajLawania 1:266895757ab3 172 if (strcmp(ws, "K 0xAFF") == 0) { // 23
ShalajLawania 1:266895757ab3 173 TwoButtons(23);
ShalajLawania 1:266895757ab3 174 }
ShalajLawania 1:266895757ab3 175 if (strcmp(ad, "K 0x5FF") == 0) { // 24
ShalajLawania 1:266895757ab3 176 TwoButtons(24);
ShalajLawania 1:266895757ab3 177 }
ShalajLawania 1:266895757ab3 178 if (strcmp(onetwo, "K 0xF3F") == 0) { // 25
ShalajLawania 1:266895757ab3 179 TwoButtons(25);
ShalajLawania 1:266895757ab3 180 }
ShalajLawania 1:266895757ab3 181 if (strcmp(upspace, "K 0xFDE") == 0) { // 26
ShalajLawania 1:266895757ab3 182 TwoButtons(26);
ShalajLawania 1:266895757ab3 183 }
ShalajLawania 1:266895757ab3 184 if (strcmp(rightspace, "K 0xFD7") == 0) { // 27
ShalajLawania 1:266895757ab3 185 TwoButtons(27);
ShalajLawania 0:4959c491059f 186 }
ShalajLawania 1:266895757ab3 187 if (strcmp(leftspace, "K 0xFDB") == 0) { // 28
ShalajLawania 1:266895757ab3 188 TwoButtons(28);
ShalajLawania 1:266895757ab3 189 }
ShalajLawania 1:266895757ab3 190 if (strcmp(downspace, "K 0xFDD") == 0) { //29
ShalajLawania 1:266895757ab3 191 TwoButtons(29);
ShalajLawania 1:266895757ab3 192 }
ShalajLawania 1:266895757ab3 193 if (strcmp(upenter, "K 0xFEE") == 0) { // 30
ShalajLawania 1:266895757ab3 194 TwoButtons(30);
ShalajLawania 0:4959c491059f 195 }
ShalajLawania 1:266895757ab3 196 if (strcmp(downenter, "K 0xFED") == 0) { // 31
ShalajLawania 1:266895757ab3 197 TwoButtons(31);
ShalajLawania 1:266895757ab3 198 }
ShalajLawania 1:266895757ab3 199 if (strcmp(rightenter, "K 0xFE7") == 0) { // 32
ShalajLawania 1:266895757ab3 200 TwoButtons(32);
ShalajLawania 1:266895757ab3 201 }
ShalajLawania 1:266895757ab3 202 if (strcmp(leftenter, "K 0xFEB") == 0) { // 33
ShalajLawania 1:266895757ab3 203 TwoButtons(33);
ShalajLawania 0:4959c491059f 204 }
ShalajLawania 0:4959c491059f 205 if (strcmp(nobutton, "K 0xFFF") == 0) {
ShalajLawania 1:266895757ab3 206 if(onebutton) {
ShalajLawania 0:4959c491059f 207 onebutton = 0;
ShalajLawania 1:266895757ab3 208 t2_stop();
ShalajLawania 0:4959c491059f 209 }
ShalajLawania 0:4959c491059f 210 if (twobuttons) {
ShalajLawania 1:266895757ab3 211 twobutton_handler();
ShalajLawania 1:266895757ab3 212 t2.reset();
ShalajLawania 0:4959c491059f 213 }
ShalajLawania 0:4959c491059f 214 }
ShalajLawania 0:4959c491059f 215 }
ShalajLawania 0:4959c491059f 216
ShalajLawania 0:4959c491059f 217 void playfunction()
ShalajLawania 0:4959c491059f 218 {
ShalajLawania 0:4959c491059f 219 t.stop();
ShalajLawania 0:4959c491059f 220 t.reset();
ShalajLawania 0:4959c491059f 221 pc.printf("\n\r PLAY \n");
ShalajLawania 1:266895757ab3 222 for (k = 0; k < j; k++) { //Eliminate 0s presses
ShalajLawania 0:4959c491059f 223 if (times2[k] == 0) {
ShalajLawania 0:4959c491059f 224 for (int z = k; z < j; z++) {
ShalajLawania 1:266895757ab3 225 times2[z] = times2[z+1];
ShalajLawania 0:4959c491059f 226 }
ShalajLawania 0:4959c491059f 227 j--;
ShalajLawania 0:4959c491059f 228 }
ShalajLawania 1:266895757ab3 229 }
ShalajLawania 1:266895757ab3 230 for(k = 0; k < i; k++) {
ShalajLawania 0:4959c491059f 231 wait_ms(times[k]);
ShalajLawania 1:266895757ab3 232 pc.printf("\n\r Position: %d", k);
ShalajLawania 0:4959c491059f 233 pc.printf("\n\r Wait Time: %d",times[k]);
ShalajLawania 0:4959c491059f 234 switch (moves[k]) {
ShalajLawania 0:4959c491059f 235 case 1:
ShalajLawania 0:4959c491059f 236 t3.start();
ShalajLawania 0:4959c491059f 237 pc.printf("\n\r Move: Up");
ShalajLawania 0:4959c491059f 238 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 239 upswitch = 0;
ShalajLawania 0:4959c491059f 240 }
ShalajLawania 0:4959c491059f 241 upswitch = 1;
ShalajLawania 1:266895757ab3 242 t3_stop();
ShalajLawania 0:4959c491059f 243 break;
ShalajLawania 0:4959c491059f 244 case 2:
ShalajLawania 0:4959c491059f 245 pc.printf("\n\r Move: Down");
ShalajLawania 0:4959c491059f 246 t3.start();
ShalajLawania 0:4959c491059f 247 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 248 downswitch = 0;
ShalajLawania 0:4959c491059f 249 }
ShalajLawania 0:4959c491059f 250 downswitch = 1;
ShalajLawania 1:266895757ab3 251 t3_stop();
ShalajLawania 0:4959c491059f 252 break;
ShalajLawania 0:4959c491059f 253 case 3:
ShalajLawania 0:4959c491059f 254 pc.printf("\n\r Move: Left");
ShalajLawania 0:4959c491059f 255 t3.start();
ShalajLawania 0:4959c491059f 256 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 257 leftswitch = 0;
ShalajLawania 0:4959c491059f 258 }
ShalajLawania 0:4959c491059f 259 leftswitch = 1;
ShalajLawania 1:266895757ab3 260 t3_stop();
ShalajLawania 0:4959c491059f 261 break;
ShalajLawania 0:4959c491059f 262 case 4:
ShalajLawania 0:4959c491059f 263 pc.printf("\n\r Move: Right");
ShalajLawania 0:4959c491059f 264 t3.start();
ShalajLawania 0:4959c491059f 265 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 266 rightswitch = 0;
ShalajLawania 0:4959c491059f 267 }
ShalajLawania 0:4959c491059f 268 rightswitch = 1;
ShalajLawania 1:266895757ab3 269 t3_stop();
ShalajLawania 0:4959c491059f 270 break;
ShalajLawania 0:4959c491059f 271 case 5:
ShalajLawania 0:4959c491059f 272 pc.printf("\n\r Move: Up + Right");
ShalajLawania 0:4959c491059f 273 t3.start();
ShalajLawania 0:4959c491059f 274 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 275 upswitch = 0;
ShalajLawania 0:4959c491059f 276 rightswitch = 0;
ShalajLawania 0:4959c491059f 277 }
ShalajLawania 0:4959c491059f 278 upswitch = 1;
ShalajLawania 0:4959c491059f 279 rightswitch = 1;
ShalajLawania 1:266895757ab3 280 t3_stop();
ShalajLawania 0:4959c491059f 281 break;
ShalajLawania 0:4959c491059f 282 case 6:
ShalajLawania 0:4959c491059f 283 pc.printf("\n\r Move: Up + Down");
ShalajLawania 0:4959c491059f 284 t3.start();
ShalajLawania 0:4959c491059f 285 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 286 upswitch = 0;
ShalajLawania 0:4959c491059f 287 downswitch = 0;
ShalajLawania 0:4959c491059f 288 }
ShalajLawania 0:4959c491059f 289 upswitch = 1;
ShalajLawania 0:4959c491059f 290 downswitch = 1;
ShalajLawania 1:266895757ab3 291 t3_stop();
ShalajLawania 0:4959c491059f 292 break;
ShalajLawania 0:4959c491059f 293 case 7:
ShalajLawania 0:4959c491059f 294 pc.printf("\n\r Move: Up + Left");
ShalajLawania 0:4959c491059f 295 t3.start();
ShalajLawania 0:4959c491059f 296 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 297 upswitch = 0;
ShalajLawania 0:4959c491059f 298 leftswitch = 0;
ShalajLawania 0:4959c491059f 299 }
ShalajLawania 0:4959c491059f 300 upswitch = 1;
ShalajLawania 0:4959c491059f 301 leftswitch = 1;
ShalajLawania 1:266895757ab3 302 t3_stop();
ShalajLawania 0:4959c491059f 303 break;
ShalajLawania 0:4959c491059f 304 case 8:
ShalajLawania 0:4959c491059f 305 pc.printf("\n\r Move: Down + Right");
ShalajLawania 0:4959c491059f 306 t3.start();
ShalajLawania 0:4959c491059f 307 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 308 downswitch = 0;
ShalajLawania 0:4959c491059f 309 rightswitch = 0;
ShalajLawania 0:4959c491059f 310 }
ShalajLawania 0:4959c491059f 311 downswitch = 1;
ShalajLawania 0:4959c491059f 312 rightswitch = 1;
ShalajLawania 1:266895757ab3 313 t3_stop();
ShalajLawania 0:4959c491059f 314 break;
ShalajLawania 0:4959c491059f 315 case 9:
ShalajLawania 0:4959c491059f 316 pc.printf("\n\r Move: Down + Left");
ShalajLawania 0:4959c491059f 317 t3.start();
ShalajLawania 0:4959c491059f 318 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 319 downswitch = 0;
ShalajLawania 0:4959c491059f 320 leftswitch = 0;
ShalajLawania 0:4959c491059f 321 }
ShalajLawania 0:4959c491059f 322 downswitch = 1;
ShalajLawania 0:4959c491059f 323 leftswitch = 1;
ShalajLawania 1:266895757ab3 324 t3_stop();
ShalajLawania 0:4959c491059f 325 break;
ShalajLawania 0:4959c491059f 326 case 10:
ShalajLawania 0:4959c491059f 327 pc.printf("\n\r Move: Right + Left");
ShalajLawania 0:4959c491059f 328 t3.start();
ShalajLawania 0:4959c491059f 329 while(t3.read_ms() < times2[k]) {
ShalajLawania 0:4959c491059f 330 rightswitch = 0;
ShalajLawania 0:4959c491059f 331 leftswitch = 0;
ShalajLawania 0:4959c491059f 332 }
ShalajLawania 0:4959c491059f 333 rightswitch = 1;
ShalajLawania 0:4959c491059f 334 leftswitch = 1;
ShalajLawania 1:266895757ab3 335 t3_stop();
ShalajLawania 1:266895757ab3 336 break;
ShalajLawania 1:266895757ab3 337
ShalajLawania 1:266895757ab3 338 case 11:
ShalajLawania 1:266895757ab3 339 pc.printf("\n\r Move: w");
ShalajLawania 1:266895757ab3 340 t3.start();
ShalajLawania 1:266895757ab3 341 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 342 wswitch = 0;
ShalajLawania 1:266895757ab3 343 }
ShalajLawania 1:266895757ab3 344 wswitch = 1;
ShalajLawania 1:266895757ab3 345 t3_stop();
ShalajLawania 1:266895757ab3 346 break;
ShalajLawania 1:266895757ab3 347
ShalajLawania 1:266895757ab3 348 case 12:
ShalajLawania 1:266895757ab3 349 pc.printf("\n\r Move: s");
ShalajLawania 1:266895757ab3 350 t3.start();
ShalajLawania 1:266895757ab3 351 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 352 sswitch = 0;
ShalajLawania 1:266895757ab3 353 }
ShalajLawania 1:266895757ab3 354 sswitch = 1;
ShalajLawania 1:266895757ab3 355 t3_stop();
ShalajLawania 1:266895757ab3 356 break;
ShalajLawania 1:266895757ab3 357
ShalajLawania 1:266895757ab3 358 case 13:
ShalajLawania 1:266895757ab3 359 pc.printf("\n\r Move: a");
ShalajLawania 1:266895757ab3 360 t3.start();
ShalajLawania 1:266895757ab3 361 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 362 aswitch = 0;
ShalajLawania 1:266895757ab3 363 }
ShalajLawania 1:266895757ab3 364 aswitch = 1;
ShalajLawania 1:266895757ab3 365 t3_stop();
ShalajLawania 1:266895757ab3 366 break;
ShalajLawania 1:266895757ab3 367
ShalajLawania 1:266895757ab3 368 case 14:
ShalajLawania 1:266895757ab3 369 pc.printf("\n\r Move: d");
ShalajLawania 1:266895757ab3 370 t3.start();
ShalajLawania 1:266895757ab3 371 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 372 dswitch = 0;
ShalajLawania 1:266895757ab3 373 }
ShalajLawania 1:266895757ab3 374 dswitch = 1;
ShalajLawania 1:266895757ab3 375 t3_stop();
ShalajLawania 1:266895757ab3 376 break;
ShalajLawania 1:266895757ab3 377
ShalajLawania 1:266895757ab3 378 case 15:
ShalajLawania 1:266895757ab3 379 pc.printf("\n\r Move: Space");
ShalajLawania 1:266895757ab3 380 t3.start();
ShalajLawania 1:266895757ab3 381 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 382 spaceswitch = 0;
ShalajLawania 1:266895757ab3 383 }
ShalajLawania 1:266895757ab3 384 spaceswitch = 1;
ShalajLawania 1:266895757ab3 385 t3_stop();
ShalajLawania 1:266895757ab3 386 break;
ShalajLawania 1:266895757ab3 387
ShalajLawania 1:266895757ab3 388 case 16:
ShalajLawania 1:266895757ab3 389 pc.printf("\n\r Move: Enter");
ShalajLawania 1:266895757ab3 390 t3.start();
ShalajLawania 1:266895757ab3 391 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 392 enterswitch = 0;
ShalajLawania 1:266895757ab3 393 }
ShalajLawania 1:266895757ab3 394 enterswitch = 1;
ShalajLawania 1:266895757ab3 395 t3_stop();
ShalajLawania 1:266895757ab3 396 break;
ShalajLawania 1:266895757ab3 397
ShalajLawania 1:266895757ab3 398 case 17:
ShalajLawania 1:266895757ab3 399 pc.printf("\n\r Move: 1");
ShalajLawania 1:266895757ab3 400 t3.start();
ShalajLawania 1:266895757ab3 401 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 402 oneswitch = 0;
ShalajLawania 1:266895757ab3 403 }
ShalajLawania 1:266895757ab3 404 oneswitch = 1;
ShalajLawania 1:266895757ab3 405 t3_stop();
ShalajLawania 1:266895757ab3 406 break;
ShalajLawania 1:266895757ab3 407
ShalajLawania 1:266895757ab3 408 case 18:
ShalajLawania 1:266895757ab3 409 pc.printf("\n\r Move: 2");
ShalajLawania 1:266895757ab3 410 t3.start();
ShalajLawania 1:266895757ab3 411 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 412 twoswitch = 0;
ShalajLawania 1:266895757ab3 413 }
ShalajLawania 1:266895757ab3 414 twoswitch = 1;
ShalajLawania 1:266895757ab3 415 t3_stop();
ShalajLawania 1:266895757ab3 416 break;
ShalajLawania 1:266895757ab3 417
ShalajLawania 1:266895757ab3 418 case 19:
ShalajLawania 1:266895757ab3 419 pc.printf("\n\r Move: w + a");
ShalajLawania 1:266895757ab3 420 pc.printf("\n\r Position: %d", k);
ShalajLawania 1:266895757ab3 421 t3.start();
ShalajLawania 1:266895757ab3 422 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 423 wswitch = 0;
ShalajLawania 1:266895757ab3 424 aswitch = 0;
ShalajLawania 1:266895757ab3 425 }
ShalajLawania 1:266895757ab3 426 wswitch = 1;
ShalajLawania 1:266895757ab3 427 aswitch = 1;
ShalajLawania 1:266895757ab3 428 t3_stop();
ShalajLawania 1:266895757ab3 429 break;
ShalajLawania 1:266895757ab3 430
ShalajLawania 1:266895757ab3 431 case 20:
ShalajLawania 1:266895757ab3 432 pc.printf("\n\r Move: w + d");
ShalajLawania 1:266895757ab3 433 t3.start();
ShalajLawania 1:266895757ab3 434 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 435 wswitch = 0;
ShalajLawania 1:266895757ab3 436 dswitch = 0;
ShalajLawania 1:266895757ab3 437 }
ShalajLawania 1:266895757ab3 438 wswitch = 1;
ShalajLawania 1:266895757ab3 439 dswitch = 1;
ShalajLawania 1:266895757ab3 440 t3_stop();
ShalajLawania 1:266895757ab3 441 break;
ShalajLawania 1:266895757ab3 442
ShalajLawania 1:266895757ab3 443 case 21:
ShalajLawania 1:266895757ab3 444 pc.printf("\n\r Move: s + a");
ShalajLawania 1:266895757ab3 445 t3.start();
ShalajLawania 1:266895757ab3 446 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 447 sswitch = 0;
ShalajLawania 1:266895757ab3 448 aswitch = 0;
ShalajLawania 1:266895757ab3 449 }
ShalajLawania 1:266895757ab3 450 sswitch = 1;
ShalajLawania 1:266895757ab3 451 aswitch = 1;
ShalajLawania 1:266895757ab3 452 t3_stop();
ShalajLawania 1:266895757ab3 453 break;
ShalajLawania 1:266895757ab3 454
ShalajLawania 1:266895757ab3 455 case 22:
ShalajLawania 1:266895757ab3 456 pc.printf("\n\r Move: s + d");
ShalajLawania 1:266895757ab3 457 t3.start();
ShalajLawania 1:266895757ab3 458 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 459 sswitch = 0;
ShalajLawania 1:266895757ab3 460 dswitch = 0;
ShalajLawania 1:266895757ab3 461 }
ShalajLawania 1:266895757ab3 462 sswitch = 1;
ShalajLawania 1:266895757ab3 463 dswitch = 1;
ShalajLawania 1:266895757ab3 464 t3_stop();
ShalajLawania 0:4959c491059f 465 break;
ShalajLawania 0:4959c491059f 466
ShalajLawania 1:266895757ab3 467 case 23:
ShalajLawania 1:266895757ab3 468 pc.printf("\n\r Move: w + s");
ShalajLawania 1:266895757ab3 469 t3.start();
ShalajLawania 1:266895757ab3 470 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 471 wswitch = 0;
ShalajLawania 1:266895757ab3 472 sswitch = 0;
ShalajLawania 1:266895757ab3 473 }
ShalajLawania 1:266895757ab3 474 wswitch = 1;
ShalajLawania 1:266895757ab3 475 sswitch = 1;
ShalajLawania 1:266895757ab3 476 t3_stop();
ShalajLawania 1:266895757ab3 477 break;
ShalajLawania 1:266895757ab3 478
ShalajLawania 1:266895757ab3 479 case 24:
ShalajLawania 1:266895757ab3 480 pc.printf("\n\r Move: a + d");
ShalajLawania 1:266895757ab3 481 t3.start();
ShalajLawania 1:266895757ab3 482 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 483 aswitch = 0;
ShalajLawania 1:266895757ab3 484 dswitch = 0;
ShalajLawania 1:266895757ab3 485 }
ShalajLawania 1:266895757ab3 486 aswitch = 1;
ShalajLawania 1:266895757ab3 487 dswitch = 1;
ShalajLawania 1:266895757ab3 488 t3_stop();
ShalajLawania 1:266895757ab3 489 break;
ShalajLawania 1:266895757ab3 490
ShalajLawania 1:266895757ab3 491 case 25:
ShalajLawania 1:266895757ab3 492 pc.printf("\n\r Move: one + two");
ShalajLawania 1:266895757ab3 493 t3.start();
ShalajLawania 1:266895757ab3 494 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 495 oneswitch = 0;
ShalajLawania 1:266895757ab3 496 twoswitch = 0;
ShalajLawania 1:266895757ab3 497 }
ShalajLawania 1:266895757ab3 498 oneswitch = 1;
ShalajLawania 1:266895757ab3 499 twoswitch = 1;
ShalajLawania 1:266895757ab3 500 t3_stop();
ShalajLawania 1:266895757ab3 501 break;
ShalajLawania 1:266895757ab3 502
ShalajLawania 1:266895757ab3 503 case 26:
ShalajLawania 1:266895757ab3 504 pc.printf("\n\r Move: Up + Space");
ShalajLawania 1:266895757ab3 505 t3.start();
ShalajLawania 1:266895757ab3 506 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 507 upswitch = 0;
ShalajLawania 1:266895757ab3 508 spaceswitch = 0;
ShalajLawania 1:266895757ab3 509 }
ShalajLawania 1:266895757ab3 510 upswitch = 1;
ShalajLawania 1:266895757ab3 511 spaceswitch = 1;
ShalajLawania 1:266895757ab3 512 t3_stop();
ShalajLawania 1:266895757ab3 513 break;
ShalajLawania 1:266895757ab3 514
ShalajLawania 1:266895757ab3 515 case 27:
ShalajLawania 1:266895757ab3 516 pc.printf("\n\r Move: Right + Space");
ShalajLawania 1:266895757ab3 517 t3.start();
ShalajLawania 1:266895757ab3 518 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 519 rightswitch = 0;
ShalajLawania 1:266895757ab3 520 spaceswitch = 0;
ShalajLawania 1:266895757ab3 521 }
ShalajLawania 1:266895757ab3 522 rightswitch = 1;
ShalajLawania 1:266895757ab3 523 spaceswitch = 1;
ShalajLawania 1:266895757ab3 524 t3_stop();
ShalajLawania 1:266895757ab3 525 break;
ShalajLawania 1:266895757ab3 526
ShalajLawania 1:266895757ab3 527 case 28:
ShalajLawania 1:266895757ab3 528 pc.printf("\n\r Move: Space + Left");
ShalajLawania 1:266895757ab3 529 t3.start();
ShalajLawania 1:266895757ab3 530 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 531 spaceswitch = 0;
ShalajLawania 1:266895757ab3 532 leftswitch = 0;
ShalajLawania 1:266895757ab3 533 }
ShalajLawania 1:266895757ab3 534 spaceswitch = 1;
ShalajLawania 1:266895757ab3 535 leftswitch = 1;
ShalajLawania 1:266895757ab3 536 t3_stop();
ShalajLawania 1:266895757ab3 537 break;
ShalajLawania 1:266895757ab3 538
ShalajLawania 1:266895757ab3 539 case 29:
ShalajLawania 1:266895757ab3 540 pc.printf("\n\r Move: Down + Space");
ShalajLawania 1:266895757ab3 541 t3.start();
ShalajLawania 1:266895757ab3 542 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 543 downswitch = 0;
ShalajLawania 1:266895757ab3 544 spaceswitch = 0;
ShalajLawania 1:266895757ab3 545 }
ShalajLawania 1:266895757ab3 546 downswitch = 1;
ShalajLawania 1:266895757ab3 547 spaceswitch = 1;
ShalajLawania 1:266895757ab3 548 t3_stop();
ShalajLawania 1:266895757ab3 549 break;
ShalajLawania 1:266895757ab3 550
ShalajLawania 1:266895757ab3 551 case 30:
ShalajLawania 1:266895757ab3 552 pc.printf("\n\r Move: Up + Enter");
ShalajLawania 1:266895757ab3 553 t3.start();
ShalajLawania 1:266895757ab3 554 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 555 upswitch = 0;
ShalajLawania 1:266895757ab3 556 enterswitch = 0;
ShalajLawania 1:266895757ab3 557 }
ShalajLawania 1:266895757ab3 558 upswitch = 1;
ShalajLawania 1:266895757ab3 559 enterswitch = 1;
ShalajLawania 1:266895757ab3 560 t3_stop();
ShalajLawania 1:266895757ab3 561 break;
ShalajLawania 1:266895757ab3 562
ShalajLawania 1:266895757ab3 563 case 31:
ShalajLawania 1:266895757ab3 564 pc.printf("\n\r Move: Down + Enter");
ShalajLawania 1:266895757ab3 565 t3.start();
ShalajLawania 1:266895757ab3 566 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 567 downswitch = 0;
ShalajLawania 1:266895757ab3 568 enterswitch = 0;
ShalajLawania 1:266895757ab3 569 }
ShalajLawania 1:266895757ab3 570 rightswitch = 1;
ShalajLawania 1:266895757ab3 571 leftswitch = 1;
ShalajLawania 1:266895757ab3 572 t3_stop();
ShalajLawania 1:266895757ab3 573 break;
ShalajLawania 1:266895757ab3 574
ShalajLawania 1:266895757ab3 575 case 32:
ShalajLawania 1:266895757ab3 576 pc.printf("\n\r Move: Right + Enter");
ShalajLawania 1:266895757ab3 577 t3.start();
ShalajLawania 1:266895757ab3 578 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 579 rightswitch = 0;
ShalajLawania 1:266895757ab3 580 enterswitch = 0;
ShalajLawania 1:266895757ab3 581 }
ShalajLawania 1:266895757ab3 582 rightswitch = 1;
ShalajLawania 1:266895757ab3 583 enterswitch = 1;
ShalajLawania 1:266895757ab3 584 t3_stop();
ShalajLawania 1:266895757ab3 585 break;
ShalajLawania 1:266895757ab3 586
ShalajLawania 1:266895757ab3 587 case 33:
ShalajLawania 1:266895757ab3 588 pc.printf("\n\r Move: Enter + Left");
ShalajLawania 1:266895757ab3 589 t3.start();
ShalajLawania 1:266895757ab3 590 while(t3.read_ms() < times2[k]) {
ShalajLawania 1:266895757ab3 591 enterswitch = 0;
ShalajLawania 1:266895757ab3 592 leftswitch = 0;
ShalajLawania 1:266895757ab3 593 }
ShalajLawania 1:266895757ab3 594 rightswitch = 1;
ShalajLawania 1:266895757ab3 595 enterswitch = 1;
ShalajLawania 1:266895757ab3 596 t3_stop();
ShalajLawania 1:266895757ab3 597 break;
ShalajLawania 0:4959c491059f 598 default:
ShalajLawania 0:4959c491059f 599 break;
ShalajLawania 0:4959c491059f 600 }
ShalajLawania 0:4959c491059f 601 }
ShalajLawania 0:4959c491059f 602 pc.printf("\n\r DONE");
ShalajLawania 0:4959c491059f 603 }
ShalajLawania 0:4959c491059f 604
ShalajLawania 0:4959c491059f 605 int main()
ShalajLawania 0:4959c491059f 606 {
ShalajLawania 1:266895757ab3 607 pc.printf("\n\r START \n");
ShalajLawania 0:4959c491059f 608 while(1) {
ShalajLawania 4:4775701a0d62 609 setup();
ShalajLawania 0:4959c491059f 610 if(twobuttons == 0) {
ShalajLawania 1:266895757ab3 611 t.start();
ShalajLawania 0:4959c491059f 612 }
ShalajLawania 0:4959c491059f 613 playI.rise(&playfunction);
ShalajLawania 0:4959c491059f 614 if (bluefruit.readable()) {
ShalajLawania 0:4959c491059f 615 bluefruit.gets(buf, 9);
ShalajLawania 3:b519acc65986 616 //pc.puts(buf);
ShalajLawania 0:4959c491059f 617 comparison(buf);
ShalajLawania 1:266895757ab3 618
ShalajLawania 0:4959c491059f 619 }
ShalajLawania 0:4959c491059f 620 }
ShalajLawania 0:4959c491059f 621 }