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
pong.h@49:243b5e826228, 2017-05-26 (annotated)
- Committer:
- Owenmatthewmcgowan
- Date:
- Fri May 26 09:37:06 2017 +0000
- Revision:
- 49:243b5e826228
- Parent:
- 48:76ac309a2bd9
merge;
Who changed what in which revision?
User | Revision | Line number | New 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 | } |