First Draft, serial print change based on distance

Committer:
liam94
Date:
Tue Feb 01 23:10:26 2022 +0000
Revision:
10:be53044119d1
Parent:
9:ada61082bbaa
Child:
13:cc99df342c7f
sorted sensed object and array comparison for first object, added in text on display if object has been detected and what object it is.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
liam94 0:506531d0531c 1 #include "mbed.h"
liam94 0:506531d0531c 2 #include "ultrasonic.h"
liam94 0:506531d0531c 3 #include "N5110.h"
liam94 5:98845ccaaacd 4 #include "Joystick.h"
liam94 5:98845ccaaacd 5 #include "main.h"
liam94 4:77500a7f951d 6
liam94 8:7e48229d678c 7 /***************************************************************************//**
liam94 8:7e48229d678c 8 *
liam94 8:7e48229d678c 9 * the main code below sets all the interrupts to pull down and also for the start
liam94 8:7e48229d678c 10 * and back buttons it is sent to the specific start and back functions which sets
liam94 8:7e48229d678c 11 * the flags which are then used in other functions.
liam94 8:7e48229d678c 12 *
liam94 8:7e48229d678c 13 * the mu.startUpdates() is where the ultrasonic sensor is told to start measuring
liam94 8:7e48229d678c 14 * the distances.
liam94 8:7e48229d678c 15 * the joystick and lcd are then initialised and the man menu function is then
liam94 8:7e48229d678c 16 * called.
liam94 8:7e48229d678c 17 *
liam94 8:7e48229d678c 18 *******************************************************************************/
liam94 2:3ace5b4ae9a7 19
liam94 2:3ace5b4ae9a7 20 int main()
liam94 1:a1795335ef8c 21 {
liam94 5:98845ccaaacd 22
liam94 3:0b0fbddb6f51 23 R.mode(PullDown);
liam94 3:0b0fbddb6f51 24 L.mode(PullDown);
liam94 5:98845ccaaacd 25 Start.mode(PullDown);
liam94 5:98845ccaaacd 26 Start.rise(Start_isr);
liam94 5:98845ccaaacd 27 Back.mode(PullDown);
liam94 5:98845ccaaacd 28 Back.rise(Back_isr);
liam94 8:7e48229d678c 29 // printf("set buttons");
liam94 8:7e48229d678c 30
liam94 8:7e48229d678c 31 mu.startUpdates();
liam94 8:7e48229d678c 32 // printf ("Ultrasonic Updates started");
liam94 5:98845ccaaacd 33
liam94 5:98845ccaaacd 34 joystick.init();
liam94 8:7e48229d678c 35 // printf("initialise joystick")
liam94 5:98845ccaaacd 36 init_display();
liam94 8:7e48229d678c 37
liam94 5:98845ccaaacd 38 main_menu();
liam94 5:98845ccaaacd 39
liam94 5:98845ccaaacd 40 }
liam94 5:98845ccaaacd 41
liam94 8:7e48229d678c 42 /***************************************************************************//**
liam94 8:7e48229d678c 43 *
liam94 8:7e48229d678c 44 * added function which initalise the display and sets the contrast, this is
liam94 8:7e48229d678c 45 * called from the int main and so the LCD boots up on startup.
liam94 8:7e48229d678c 46 *
liam94 8:7e48229d678c 47 *******************************************************************************/
liam94 8:7e48229d678c 48
liam94 5:98845ccaaacd 49 void init_display(){
liam94 8:7e48229d678c 50
liam94 8:7e48229d678c 51 // printf("initialise display");
liam94 4:77500a7f951d 52 lcd.init();
liam94 4:77500a7f951d 53 lcd.setContrast(0.4);
liam94 8:7e48229d678c 54 lcd.clear();
liam94 5:98845ccaaacd 55
liam94 5:98845ccaaacd 56 }
liam94 8:7e48229d678c 57
liam94 8:7e48229d678c 58 /***************************************************************************//**
liam94 8:7e48229d678c 59 *
liam94 8:7e48229d678c 60 * this function is the main menu for the program, it is called at the start and
liam94 8:7e48229d678c 61 * depending on what string is selected, clicking the start uton will send the
liam94 8:7e48229d678c 62 * user to the specified function.
liam94 8:7e48229d678c 63 *
liam94 8:7e48229d678c 64 *******************************************************************************/
liam94 5:98845ccaaacd 65
liam94 5:98845ccaaacd 66 void main_menu(){
liam94 5:98845ccaaacd 67
liam94 8:7e48229d678c 68 // printf("main menu");
liam94 8:7e48229d678c 69
liam94 5:98845ccaaacd 70 lcd.clear();
liam94 5:98845ccaaacd 71 Start_flag = 0;
liam94 5:98845ccaaacd 72 int select = 0;
liam94 8:7e48229d678c 73 output = 63; // 63 on the bus output sets all LEDs to off
liam94 5:98845ccaaacd 74
liam94 5:98845ccaaacd 75 while (1) {
liam94 5:98845ccaaacd 76
liam94 5:98845ccaaacd 77 Direction d = joystick.get_direction();
liam94 8:7e48229d678c 78 // printf("Direction = %i\n",d);
liam94 5:98845ccaaacd 79
liam94 5:98845ccaaacd 80 switch(select) {
liam94 5:98845ccaaacd 81 case 0:
liam94 5:98845ccaaacd 82 switch(d) {
liam94 8:7e48229d678c 83 case N:
liam94 5:98845ccaaacd 84 select = 1;
liam94 8:7e48229d678c 85 // printf("UP");
liam94 5:98845ccaaacd 86 break;
liam94 8:7e48229d678c 87 case S:
liam94 5:98845ccaaacd 88 select = 1;
liam94 8:7e48229d678c 89 // printf("Down");
liam94 5:98845ccaaacd 90 break;
liam94 5:98845ccaaacd 91 }
liam94 5:98845ccaaacd 92 break;
liam94 5:98845ccaaacd 93 case 1:
liam94 5:98845ccaaacd 94 switch(d) {
liam94 8:7e48229d678c 95 case N:
liam94 5:98845ccaaacd 96 select = 0;
liam94 8:7e48229d678c 97 // printf("UP");
liam94 5:98845ccaaacd 98 break;
liam94 8:7e48229d678c 99 case S:
liam94 5:98845ccaaacd 100 select = 0;
liam94 8:7e48229d678c 101 // printf("Down");
liam94 5:98845ccaaacd 102 break;
liam94 5:98845ccaaacd 103 }
liam94 5:98845ccaaacd 104 break;
liam94 5:98845ccaaacd 105
liam94 5:98845ccaaacd 106 }
liam94 5:98845ccaaacd 107 wait(0.1);
liam94 5:98845ccaaacd 108 if (select == 0) {
liam94 8:7e48229d678c 109 // printf("main menu - sense object");
liam94 5:98845ccaaacd 110 lcd.clear();
liam94 5:98845ccaaacd 111 lcd.printString("Detect",27,0);
liam94 5:98845ccaaacd 112 lcd.printString("Sense Object",7,2);
liam94 5:98845ccaaacd 113 lcd.printString("Calibration",7,3);
liam94 5:98845ccaaacd 114 lcd.drawCircle(3,19,2,FILL_TRANSPARENT);
liam94 5:98845ccaaacd 115 lcd.refresh();
liam94 5:98845ccaaacd 116 wait(0.15);
liam94 5:98845ccaaacd 117 if (Start_flag == 1) {
liam94 5:98845ccaaacd 118 Start_flag = 0;
liam94 5:98845ccaaacd 119 sense_object();
liam94 5:98845ccaaacd 120 }
liam94 5:98845ccaaacd 121 } else if (select == 1) {
liam94 8:7e48229d678c 122 // printf("main menu - calibration");
liam94 5:98845ccaaacd 123 lcd.clear();
liam94 5:98845ccaaacd 124 lcd.printString("Detect",27,0);
liam94 5:98845ccaaacd 125 lcd.printString("Sense Object", 7,2);
liam94 5:98845ccaaacd 126 lcd.printString("Calibration",7,3);
liam94 5:98845ccaaacd 127 lcd.drawCircle(3,27,2,FILL_TRANSPARENT);
liam94 5:98845ccaaacd 128 lcd.refresh();
liam94 5:98845ccaaacd 129 wait(0.15);
liam94 5:98845ccaaacd 130 if (Start_flag == 1) {
liam94 5:98845ccaaacd 131 Start_flag = 0;
liam94 6:18a4dd77057e 132 calibrate_object();
liam94 5:98845ccaaacd 133 }
liam94 5:98845ccaaacd 134 }
liam94 5:98845ccaaacd 135 }
liam94 5:98845ccaaacd 136 }
liam94 5:98845ccaaacd 137
liam94 8:7e48229d678c 138 /***************************************************************************//**
liam94 8:7e48229d678c 139 *
liam94 8:7e48229d678c 140 * this function is for sensing the object
liam94 8:7e48229d678c 141 *
liam94 8:7e48229d678c 142 *******************************************************************************/
liam94 8:7e48229d678c 143
liam94 5:98845ccaaacd 144 void sense_object(){
liam94 8:7e48229d678c 145
liam94 8:7e48229d678c 146 // printf("sense object");
liam94 5:98845ccaaacd 147
liam94 5:98845ccaaacd 148 // set inital state
liam94 5:98845ccaaacd 149 int state = 0;
liam94 5:98845ccaaacd 150
liam94 2:3ace5b4ae9a7 151 while(1)
liam94 2:3ace5b4ae9a7 152 {
liam94 4:77500a7f951d 153 output = fsm[state]; // output current state
liam94 10:be53044119d1 154 printf("state = %d\r\n",state);
liam94 8:7e48229d678c 155
liam94 8:7e48229d678c 156 // check which state we are in and see which the next state should be
liam94 4:77500a7f951d 157 switch(state) {
liam94 9:ada61082bbaa 158 case 0:{
liam94 4:77500a7f951d 159 lcd.clear();
liam94 4:77500a7f951d 160 lcd.printString(" object at 0'",0,0);
liam94 4:77500a7f951d 161 lcd.printString(" R + 60'",0,2);
liam94 4:77500a7f951d 162 lcd.printString(" L - 60'",0,4);
liam94 4:77500a7f951d 163 lcd.refresh();
liam94 3:0b0fbddb6f51 164 if (R == 1){
liam94 3:0b0fbddb6f51 165 state = 1;}
liam94 3:0b0fbddb6f51 166 else state = 0;
liam94 9:ada61082bbaa 167
liam94 9:ada61082bbaa 168 if (Start_flag == 1) {
liam94 9:ada61082bbaa 169 Start_flag = 0;
liam94 9:ada61082bbaa 170 object_sense1();
liam94 9:ada61082bbaa 171 }
liam94 9:ada61082bbaa 172
liam94 9:ada61082bbaa 173 break;}
liam94 10:be53044119d1 174
liam94 9:ada61082bbaa 175 case 1:{
liam94 4:77500a7f951d 176 lcd.clear();
liam94 4:77500a7f951d 177 lcd.printString(" object at 60'",0,0);
liam94 4:77500a7f951d 178 lcd.printString(" R + 60'",0,2);
liam94 4:77500a7f951d 179 lcd.printString(" L - 60'",0,4);
liam94 4:77500a7f951d 180 lcd.refresh();
liam94 3:0b0fbddb6f51 181 if (R == 1){
liam94 3:0b0fbddb6f51 182 state = 2;}
liam94 3:0b0fbddb6f51 183 else state = 1;
liam94 9:ada61082bbaa 184
liam94 9:ada61082bbaa 185 if (Start_flag == 1) {
liam94 9:ada61082bbaa 186 Start_flag = 0;
liam94 9:ada61082bbaa 187 object_sense2();
liam94 9:ada61082bbaa 188 }
liam94 10:be53044119d1 189
liam94 10:be53044119d1 190 break;}
liam94 9:ada61082bbaa 191 case 2:{
liam94 4:77500a7f951d 192 lcd.clear();
liam94 4:77500a7f951d 193 lcd.printString(" object at 120'",0,0);
liam94 4:77500a7f951d 194 lcd.printString(" R + 60'",0,2);
liam94 4:77500a7f951d 195 lcd.printString(" L - 60'",0,4);
liam94 4:77500a7f951d 196 lcd.refresh();
liam94 3:0b0fbddb6f51 197 if (R == 1){
liam94 3:0b0fbddb6f51 198 state = 3;}
liam94 3:0b0fbddb6f51 199 else state = 2;
liam94 9:ada61082bbaa 200
liam94 9:ada61082bbaa 201 if (Start_flag == 1) {
liam94 9:ada61082bbaa 202 Start_flag = 0;
liam94 9:ada61082bbaa 203 object_sense3();
liam94 9:ada61082bbaa 204 }
liam94 10:be53044119d1 205
liam94 10:be53044119d1 206 break;}
liam94 10:be53044119d1 207
liam94 9:ada61082bbaa 208 case 3:{
liam94 4:77500a7f951d 209 lcd.clear();
liam94 4:77500a7f951d 210 lcd.printString(" object at 180'",0,0);
liam94 4:77500a7f951d 211 lcd.printString(" R + 60'",0,2);
liam94 4:77500a7f951d 212 lcd.printString(" L - 60'",0,4);
liam94 4:77500a7f951d 213 lcd.refresh();
liam94 3:0b0fbddb6f51 214 if (R == 1){
liam94 3:0b0fbddb6f51 215 state = 4;}
liam94 3:0b0fbddb6f51 216 else state = 3;
liam94 9:ada61082bbaa 217
liam94 9:ada61082bbaa 218 if (Start_flag == 1) {
liam94 9:ada61082bbaa 219 Start_flag = 0;
liam94 9:ada61082bbaa 220 object_sense4();
liam94 9:ada61082bbaa 221 }
liam94 10:be53044119d1 222
liam94 10:be53044119d1 223 break;}
liam94 10:be53044119d1 224
liam94 9:ada61082bbaa 225 case 4:{
liam94 4:77500a7f951d 226 lcd.clear();
liam94 4:77500a7f951d 227 lcd.printString(" object at 240'",0,0);
liam94 4:77500a7f951d 228 lcd.printString(" R + 60'",0,2);
liam94 4:77500a7f951d 229 lcd.printString(" L - 60'",0,4);
liam94 4:77500a7f951d 230 lcd.refresh();
liam94 3:0b0fbddb6f51 231 if (R == 1){
liam94 3:0b0fbddb6f51 232 state = 5;}
liam94 3:0b0fbddb6f51 233 else state = 4;
liam94 9:ada61082bbaa 234
liam94 9:ada61082bbaa 235 if (Start_flag == 1) {
liam94 9:ada61082bbaa 236 Start_flag = 0;
liam94 9:ada61082bbaa 237 object_sense5();
liam94 9:ada61082bbaa 238 }
liam94 10:be53044119d1 239
liam94 10:be53044119d1 240 break;}
liam94 10:be53044119d1 241
liam94 9:ada61082bbaa 242 case 5:{
liam94 4:77500a7f951d 243 lcd.clear();
liam94 4:77500a7f951d 244 lcd.printString(" object at 300'",0,0);
liam94 4:77500a7f951d 245 lcd.printString(" R + 60'",0,2);
liam94 4:77500a7f951d 246 lcd.printString(" L - 60'",0,4);
liam94 4:77500a7f951d 247 lcd.refresh();
liam94 3:0b0fbddb6f51 248 if (R == 1){
liam94 10:be53044119d1 249 object_detection();}
liam94 3:0b0fbddb6f51 250 else state = 5;
liam94 10:be53044119d1 251
liam94 9:ada61082bbaa 252 if (Start_flag == 1) {
liam94 9:ada61082bbaa 253 Start_flag = 0;
liam94 9:ada61082bbaa 254 object_sense6();
liam94 9:ada61082bbaa 255 }
liam94 10:be53044119d1 256
liam94 10:be53044119d1 257 break;}
liam94 9:ada61082bbaa 258
liam94 9:ada61082bbaa 259 default:{
liam94 2:3ace5b4ae9a7 260 error("Invalid state"); //invalid state - call error routine
liam94 2:3ace5b4ae9a7 261 // or could jump to starting state i.e. state = 0
liam94 9:ada61082bbaa 262 break;}
liam94 2:3ace5b4ae9a7 263 }
liam94 6:18a4dd77057e 264 if (Back_flag == 1) {
liam94 6:18a4dd77057e 265 Back_flag = 0;
liam94 6:18a4dd77057e 266 main_menu();}
liam94 6:18a4dd77057e 267
liam94 5:98845ccaaacd 268 ThisThread::sleep_for(200);
liam94 5:98845ccaaacd 269 }
liam94 5:98845ccaaacd 270 }
liam94 8:7e48229d678c 271
liam94 8:7e48229d678c 272 /***************************************************************************//**
liam94 8:7e48229d678c 273 *
liam94 8:7e48229d678c 274 * this function is for calibrating the distance in which the object centre point
liam94 8:7e48229d678c 275 * should be away from the sensor, it checks the current distance and then though
liam94 8:7e48229d678c 276 * the function "void dist" displays the current distance on the screen.
liam94 8:7e48229d678c 277 * this function also tells the user the distance away from the target centre
liam94 8:7e48229d678c 278 * point this should be, this is so that the board is the right distance away and
liam94 8:7e48229d678c 279 * will be able to detect the object better.
liam94 8:7e48229d678c 280 *
liam94 8:7e48229d678c 281 * in order to print the distance onto the LCD the current distance is printed to
liam94 8:7e48229d678c 282 * a buffer which is a max length of 14 (the amount of characters that can fit
liam94 8:7e48229d678c 283 * width ways on the screen) this can then be printed on the screen using print
liam94 8:7e48229d678c 284 * string.
liam94 8:7e48229d678c 285 *
liam94 8:7e48229d678c 286 *******************************************************************************/
liam94 8:7e48229d678c 287
liam94 6:18a4dd77057e 288 void calibrate_object(){
liam94 6:18a4dd77057e 289
liam94 9:ada61082bbaa 290 sense = 0;
liam94 9:ada61082bbaa 291
liam94 6:18a4dd77057e 292 while(1)
liam94 6:18a4dd77057e 293 {
liam94 9:ada61082bbaa 294 mu.checkDistance();
liam94 7:7464fbb0f3e1 295
liam94 6:18a4dd77057e 296 if (Back_flag == 1) {
liam94 6:18a4dd77057e 297 Back_flag = 0;
liam94 6:18a4dd77057e 298 main_menu();}
liam94 6:18a4dd77057e 299
liam94 6:18a4dd77057e 300 wait (1);
liam94 6:18a4dd77057e 301 }
liam94 6:18a4dd77057e 302 }
liam94 9:ada61082bbaa 303
liam94 7:7464fbb0f3e1 304 void dist(int distance)
liam94 7:7464fbb0f3e1 305 {
liam94 10:be53044119d1 306 printf("sense = %d\n", sense);
liam94 8:7e48229d678c 307 // printf("Distance changed to %dmm\r\n", distance);
liam94 9:ada61082bbaa 308
liam94 9:ada61082bbaa 309 lcd.clear();
liam94 7:7464fbb0f3e1 310
liam94 9:ada61082bbaa 311 char buffer[14];
liam94 9:ada61082bbaa 312 int length = sprintf(buffer,"%dmm", distance);
liam94 9:ada61082bbaa 313 if (length <= 14)
liam94 7:7464fbb0f3e1 314
liam94 9:ada61082bbaa 315 lcd.printString("set object to",0,0);
liam94 9:ada61082bbaa 316 lcd.printString(" 200mm",0,1);
liam94 9:ada61082bbaa 317 lcd.printString(buffer,24,3);
liam94 9:ada61082bbaa 318 lcd.refresh();
liam94 10:be53044119d1 319
liam94 7:7464fbb0f3e1 320 }
liam94 8:7e48229d678c 321
liam94 8:7e48229d678c 322 /***************************************************************************//**
liam94 8:7e48229d678c 323 *
liam94 10:be53044119d1 324 * this is where the magic happens
liam94 10:be53044119d1 325 *
liam94 10:be53044119d1 326 *******************************************************************************/
liam94 10:be53044119d1 327
liam94 10:be53044119d1 328 void object_sense1(){
liam94 10:be53044119d1 329
liam94 10:be53044119d1 330 sense = 1;
liam94 10:be53044119d1 331
liam94 10:be53044119d1 332 Distance1 = mu.getCurrentDistance();
liam94 10:be53044119d1 333
liam94 10:be53044119d1 334 printf("distance at sense 1 = %d\r\n", Distance1);
liam94 10:be53044119d1 335
liam94 10:be53044119d1 336 }
liam94 10:be53044119d1 337
liam94 10:be53044119d1 338 void object_sense2(){
liam94 10:be53044119d1 339
liam94 10:be53044119d1 340 sense = 2;
liam94 10:be53044119d1 341
liam94 10:be53044119d1 342 Distance2 = mu.getCurrentDistance();
liam94 10:be53044119d1 343
liam94 10:be53044119d1 344 printf("distance at sense 2 = %d\r\n", Distance2);
liam94 10:be53044119d1 345
liam94 10:be53044119d1 346 }
liam94 10:be53044119d1 347
liam94 10:be53044119d1 348 void object_sense3(){
liam94 10:be53044119d1 349
liam94 10:be53044119d1 350 sense = 3;
liam94 10:be53044119d1 351
liam94 10:be53044119d1 352 Distance3 = mu.getCurrentDistance();
liam94 10:be53044119d1 353
liam94 10:be53044119d1 354 printf("distance at sense 3 = %d\r\n", Distance3);
liam94 10:be53044119d1 355
liam94 10:be53044119d1 356 }
liam94 10:be53044119d1 357
liam94 10:be53044119d1 358 void object_sense4(){
liam94 10:be53044119d1 359
liam94 10:be53044119d1 360 sense = 4;
liam94 10:be53044119d1 361
liam94 10:be53044119d1 362 Distance4 = mu.getCurrentDistance();
liam94 10:be53044119d1 363
liam94 10:be53044119d1 364 printf("distance at sense 4 = %d\r\n", Distance4);
liam94 10:be53044119d1 365
liam94 10:be53044119d1 366 }
liam94 10:be53044119d1 367
liam94 10:be53044119d1 368 void object_sense5(){
liam94 10:be53044119d1 369
liam94 10:be53044119d1 370 sense = 5;
liam94 10:be53044119d1 371
liam94 10:be53044119d1 372 Distance5 = mu.getCurrentDistance();
liam94 10:be53044119d1 373
liam94 10:be53044119d1 374 printf("distance at sense 5 = %d\r\n", Distance5);
liam94 10:be53044119d1 375
liam94 10:be53044119d1 376 }
liam94 10:be53044119d1 377
liam94 10:be53044119d1 378 void object_sense6(){
liam94 10:be53044119d1 379
liam94 10:be53044119d1 380 sense = 6;
liam94 10:be53044119d1 381
liam94 10:be53044119d1 382 Distance6 = mu.getCurrentDistance();
liam94 10:be53044119d1 383
liam94 10:be53044119d1 384 printf("distance at sense 6 = %d\r\n", Distance6);
liam94 10:be53044119d1 385
liam94 10:be53044119d1 386 }
liam94 10:be53044119d1 387
liam94 10:be53044119d1 388 void object_detection(){
liam94 10:be53044119d1 389
liam94 10:be53044119d1 390 lcd.clear();
liam94 10:be53044119d1 391
liam94 10:be53044119d1 392 //printf("Distance 1 = %d\n", Distance1);
liam94 10:be53044119d1 393 //printf("glass[0] = %d\n", glass[0]);
liam94 10:be53044119d1 394 //printf("glass[6] = %d\n", glass[6]);
liam94 10:be53044119d1 395 if (abs(Distance1 - glass[0]) <= 10 and abs(Distance2 - glass[1]) <= 10 and abs(Distance3 - glass[2]) <= 10 and abs(Distance4 - glass[3]) <= 10 and abs(Distance5 - glass[4]) <= 10 and abs(Distance6 - glass[5]) <= 10){
liam94 10:be53044119d1 396 printf("glass\n");
liam94 10:be53044119d1 397 lcd.printString("Object Found!",0,1);
liam94 10:be53044119d1 398 lcd.printString("Pint Glass",0,3);
liam94 10:be53044119d1 399 lcd.refresh();}
liam94 10:be53044119d1 400
liam94 10:be53044119d1 401 else{
liam94 10:be53044119d1 402 printf("nothing\n");
liam94 10:be53044119d1 403 lcd.printString("No Object",0,1);
liam94 10:be53044119d1 404 lcd.printString("Please Try",0,3);
liam94 10:be53044119d1 405 lcd.printString("Again",24,4);
liam94 10:be53044119d1 406 lcd.refresh();}
liam94 10:be53044119d1 407 }
liam94 10:be53044119d1 408
liam94 10:be53044119d1 409 /***************************************************************************//**
liam94 10:be53044119d1 410 *
liam94 8:7e48229d678c 411 * these functions are for setting the flags for the start and back butons which
liam94 8:7e48229d678c 412 * are used in the other functions.
liam94 8:7e48229d678c 413 *
liam94 8:7e48229d678c 414 *******************************************************************************/
liam94 8:7e48229d678c 415
liam94 5:98845ccaaacd 416 void Start_isr()
liam94 5:98845ccaaacd 417 {
liam94 8:7e48229d678c 418 // printf("start button pressed");
liam94 5:98845ccaaacd 419 Start_flag = 1;
liam94 2:3ace5b4ae9a7 420 }
liam94 2:3ace5b4ae9a7 421
liam94 5:98845ccaaacd 422 void Back_isr()
liam94 5:98845ccaaacd 423 {
liam94 8:7e48229d678c 424 // printf("back button pressed");
liam94 5:98845ccaaacd 425 Back_flag = 1;
liam94 1:a1795335ef8c 426 }
liam94 5:98845ccaaacd 427