Contains the main execution of the clock uses headers to import functions

Dependencies:   RTC-DS1307 SPI_TFT_ILI9341 TFT_fonts mbed tsi_sensor

Fork of TFT_Mikroelectronika_IL9341_sketchpad by Oxford CWM Team

Committer:
Owenmatthewmcgowan
Date:
Fri May 26 09:37:06 2017 +0000
Revision:
49:243b5e826228
Parent:
48:76ac309a2bd9
merge;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mlin 40:05798eeadd02 1 void pong(){
mlin 40:05798eeadd02 2 int p_height = 40,p_width = 5,b_r =5;
mlin 40:05798eeadd02 3 int p_y,p_yl,b_x,b_xl,b_y,b_yl = 0;
Owenmatthewmcgowan 48:76ac309a2bd9 4 int vX =5 ,vY = 5;
Owenmatthewmcgowan 48:76ac309a2bd9 5 int multiplier = 30;
mlin 40:05798eeadd02 6 float tsi_current, tsi_last = 0;
mlin 40:05798eeadd02 7 TFT.cls();
mlin 40:05798eeadd02 8 TFT.line(p_width,0,320,0,White);
mlin 40:05798eeadd02 9 TFT.line(320,0,320,240,White);
Owenmatthewmcgowan 48:76ac309a2bd9 10 TFT.line(p_width,240,320,240,White);
Owenmatthewmcgowan 48:76ac309a2bd9 11 b_x = 160;
Owenmatthewmcgowan 48:76ac309a2bd9 12 b_y = 120;
mlin 40:05798eeadd02 13 while (true){
mlin 40:05798eeadd02 14 readX();
mlin 40:05798eeadd02 15 if (touching == 1){
Owenmatthewmcgowan 48:76ac309a2bd9 16 //f_state = 1;
Owenmatthewmcgowan 48:76ac309a2bd9 17 //break;
mlin 40:05798eeadd02 18 }
mlin 40:05798eeadd02 19 tsi_current = tsi.readPercentage();
mlin 40:05798eeadd02 20 float change = 0;
mlin 40:05798eeadd02 21 if (tsi_current != 0 && tsi_last != 0) {change = tsi_current - tsi_last;}
mlin 40:05798eeadd02 22 else {change = 0;}
mlin 40:05798eeadd02 23 tsi_last = tsi_current;
mlin 40:05798eeadd02 24 int delta = change * multiplier;
mlin 40:05798eeadd02 25 int newval = p_y + delta ;
mlin 40:05798eeadd02 26 if (newval > 0 && newval < (240 - p_height)) p_y = newval;
mlin 40:05798eeadd02 27 if (b_y < 10 || b_y > 230){
mlin 40:05798eeadd02 28 vY *= -1;
mlin 40:05798eeadd02 29 }
mlin 40:05798eeadd02 30 if (b_x > 310 || (b_x < p_width)){
Owenmatthewmcgowan 48:76ac309a2bd9 31 vX *= -1;
Owenmatthewmcgowan 48:76ac309a2bd9 32 if (!(b_y > p_y && b_y < (p_y + p_height) &&(b_x < p_width))) {f_state = 1; break;}
mlin 40:05798eeadd02 33 }
mlin 40:05798eeadd02 34
mlin 40:05798eeadd02 35 b_x += vX;
mlin 40:05798eeadd02 36 b_y += vY;
mlin 40:05798eeadd02 37 if (p_y != p_yl){
Owenmatthewmcgowan 48:76ac309a2bd9 38 TFT.fillrect(0,p_yl,p_width,p_yl + p_height,Black);
Owenmatthewmcgowan 48:76ac309a2bd9 39 TFT.fillrect(0,p_y, p_width, p_y + p_height, White);
mlin 40:05798eeadd02 40 }
mlin 40:05798eeadd02 41 if (b_y != b_yl || b_x != b_xl){
mlin 40:05798eeadd02 42 TFT.fillcircle(b_xl,b_yl,b_r,Black);
mlin 40:05798eeadd02 43 TFT.fillcircle(b_x,b_y,b_r,White);
mlin 40:05798eeadd02 44 b_yl = b_y;
mlin 40:05798eeadd02 45 b_xl = b_x;
mlin 40:05798eeadd02 46 }
Owenmatthewmcgowan 48:76ac309a2bd9 47 wait(0.5);
mlin 40:05798eeadd02 48 }
mlin 40:05798eeadd02 49
mlin 40:05798eeadd02 50 }