Sparkfun Analog Joystick Test Program
Dependencies: 4DGL-uLCD-SE SparkfunAnalogJoystick mbed
Fork of Lab4 by
main.cpp@0:634ccd908259, 2015-03-07 (annotated)
- Committer:
- ryanzhang1994
- Date:
- Sat Mar 07 23:28:51 2015 +0000
- Revision:
- 0:634ccd908259
- Child:
- 1:9d61fc8d0615
Sparkfun Analog Joystick Test Program
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ryanzhang1994 | 0:634ccd908259 | 1 | #include "mbed.h" |
ryanzhang1994 | 0:634ccd908259 | 2 | #include "SparkfunAnalogJoystick.h" |
ryanzhang1994 | 0:634ccd908259 | 3 | #include "uLCD_4DGL.h" |
ryanzhang1994 | 0:634ccd908259 | 4 | |
ryanzhang1994 | 0:634ccd908259 | 5 | #define M_PI 3.14159265358979323846 |
ryanzhang1994 | 0:634ccd908259 | 6 | |
ryanzhang1994 | 0:634ccd908259 | 7 | SparkfunAnalogJoystick joysttick(p18, p19, p20); |
ryanzhang1994 | 0:634ccd908259 | 8 | uLCD_4DGL lcd(p13, p14, p15); |
ryanzhang1994 | 0:634ccd908259 | 9 | |
ryanzhang1994 | 0:634ccd908259 | 10 | int main() { |
ryanzhang1994 | 0:634ccd908259 | 11 | lcd.baudrate(3000000); |
ryanzhang1994 | 0:634ccd908259 | 12 | lcd.background_color(0); |
ryanzhang1994 | 0:634ccd908259 | 13 | lcd.cls(); |
ryanzhang1994 | 0:634ccd908259 | 14 | float lastx=0; |
ryanzhang1994 | 0:634ccd908259 | 15 | float lasty=0; |
ryanzhang1994 | 0:634ccd908259 | 16 | while(1) { |
ryanzhang1994 | 0:634ccd908259 | 17 | printf("X-Axis: %f\n\r", joysttick.xAxis()); |
ryanzhang1994 | 0:634ccd908259 | 18 | printf("Y-Axis: %f\n\r", joysttick.yAxis()); |
ryanzhang1994 | 0:634ccd908259 | 19 | printf("Angle: %f\n\r", joysttick.angle()); |
ryanzhang1994 | 0:634ccd908259 | 20 | printf("Distance: %f\n\r", joysttick.distance()); |
ryanzhang1994 | 0:634ccd908259 | 21 | printf("Button: %d\n\r\n", joysttick.button()); |
ryanzhang1994 | 0:634ccd908259 | 22 | float distance=joysttick.distance(); |
ryanzhang1994 | 0:634ccd908259 | 23 | float angle=joysttick.angle(); |
ryanzhang1994 | 0:634ccd908259 | 24 | float x=distance*cos(angle*M_PI/180)*40; |
ryanzhang1994 | 0:634ccd908259 | 25 | float y=distance*sin(angle*M_PI/180)*40; |
ryanzhang1994 | 0:634ccd908259 | 26 | lcd.circle(60, 60, 40, WHITE); |
ryanzhang1994 | 0:634ccd908259 | 27 | lcd.line(60, 60, 60+lastx, 60+lasty, BLACK); |
ryanzhang1994 | 0:634ccd908259 | 28 | lcd.line(60, 60, 60+x, 60+y, WHITE); |
ryanzhang1994 | 0:634ccd908259 | 29 | lastx=x; |
ryanzhang1994 | 0:634ccd908259 | 30 | lasty=y; |
ryanzhang1994 | 0:634ccd908259 | 31 | wait(0.1); |
ryanzhang1994 | 0:634ccd908259 | 32 | } |
ryanzhang1994 | 0:634ccd908259 | 33 | } |