Chase Lake
/
TargetPracticeMiniProject
Using an accelerometer to move a ball on an LED screen.
main.cpp@0:708949ec9140, 2016-01-14 (annotated)
- Committer:
- bentogami
- Date:
- Thu Jan 14 23:22:30 2016 +0000
- Revision:
- 0:708949ec9140
- Child:
- 1:c436c1b8333b
Accelerometer is kind of working, the ball keeps vanishing.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bentogami | 0:708949ec9140 | 1 | #include "mbed.h" |
bentogami | 0:708949ec9140 | 2 | #include "ADXL.h" |
bentogami | 0:708949ec9140 | 3 | #include "Arial12x12.h" |
bentogami | 0:708949ec9140 | 4 | #include "Arial24x23.h" |
bentogami | 0:708949ec9140 | 5 | #include "ILI932x.h" |
bentogami | 0:708949ec9140 | 6 | |
bentogami | 0:708949ec9140 | 7 | Serial pc(USBTX, USBRX); |
bentogami | 0:708949ec9140 | 8 | float data[6]; |
bentogami | 0:708949ec9140 | 9 | PinName dataBus[]= {p30, p29, p28, p27, p26, p25, p24, p23}; |
bentogami | 0:708949ec9140 | 10 | ILI932x myLCD(BUS_8, dataBus, p15, p17, p16, p14, p20, "myLCD", 240, 320); // Bus 8 bit, bus pin array, CS, RST, DC, WR, RD, name, xpixels, ypixels |
bentogami | 0:708949ec9140 | 11 | char orient=4; |
bentogami | 0:708949ec9140 | 12 | int X = 120, Y = 160; |
bentogami | 0:708949ec9140 | 13 | |
bentogami | 0:708949ec9140 | 14 | int main() { |
bentogami | 0:708949ec9140 | 15 | accConfig(); |
bentogami | 0:708949ec9140 | 16 | myLCD.set_orientation(orient); |
bentogami | 0:708949ec9140 | 17 | //t.start(); |
bentogami | 0:708949ec9140 | 18 | myLCD.set_font((unsigned char*) Arial12x12); |
bentogami | 0:708949ec9140 | 19 | myLCD.background(Black); // set background to red |
bentogami | 0:708949ec9140 | 20 | myLCD.foreground(White); // set chars to black |
bentogami | 0:708949ec9140 | 21 | myLCD.cls(); // clear the screen |
bentogami | 0:708949ec9140 | 22 | myLCD.locate((myLCD.width()-7)/2,myLCD.height()/2); // from our view, first is yPos, second is xPos |
bentogami | 0:708949ec9140 | 23 | myLCD.printf("Target Practice\r\n"); |
bentogami | 0:708949ec9140 | 24 | wait(2); |
bentogami | 0:708949ec9140 | 25 | myLCD.cls(); |
bentogami | 0:708949ec9140 | 26 | while(1) { |
bentogami | 0:708949ec9140 | 27 | //temporary code: |
bentogami | 0:708949ec9140 | 28 | myLCD.circle(120,160,12,White); |
bentogami | 0:708949ec9140 | 29 | myLCD.fillcircle(X,Y,6,Green); |
bentogami | 0:708949ec9140 | 30 | getAccel(data); |
bentogami | 0:708949ec9140 | 31 | pc.printf("x = %+1.2fg\t y = %+1.2fg\n\r", data[0], data[1]); //print |
bentogami | 0:708949ec9140 | 32 | if (X < myLCD.width() && X > 0) |
bentogami | 0:708949ec9140 | 33 | X += data[0]/0.004; |
bentogami | 0:708949ec9140 | 34 | if (Y < myLCD.height() && Y > 0) |
bentogami | 0:708949ec9140 | 35 | Y += data[1]/0.004; |
bentogami | 0:708949ec9140 | 36 | wait(0.02); |
bentogami | 0:708949ec9140 | 37 | myLCD.cls(); |
bentogami | 0:708949ec9140 | 38 | //insert correct code here: |
bentogami | 0:708949ec9140 | 39 | |
bentogami | 0:708949ec9140 | 40 | } |
bentogami | 0:708949ec9140 | 41 | } |