Dwayne Dilbeck
/
HW2_3_USB_POT_Mouse
Homework #2 Problem #3
Fork of USBMouse_HelloWorld by
main.cpp@5:2a28b4664b0a, 2013-06-26 (annotated)
- Committer:
- jakowisp
- Date:
- Wed Jun 26 03:00:13 2013 +0000
- Revision:
- 5:2a28b4664b0a
- Parent:
- 3:b8caa902d79e
- Child:
- 6:e35a1f72d90f
Initial working version
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
samux | 2:e7b766501add | 1 | #include "mbed.h" |
samux | 2:e7b766501add | 2 | #include "USBMouse.h" |
samux | 2:e7b766501add | 3 | |
jakowisp | 5:2a28b4664b0a | 4 | USBMouse mouse(ABS_MOUSE); |
jakowisp | 5:2a28b4664b0a | 5 | AnalogIn potA(p20); |
jakowisp | 5:2a28b4664b0a | 6 | AnalogIn potB(p19); |
jakowisp | 5:2a28b4664b0a | 7 | |
jakowisp | 5:2a28b4664b0a | 8 | BusIn button(p12,p15,p13,p16); |
jakowisp | 5:2a28b4664b0a | 9 | DigitalIn fire(p14); |
jakowisp | 5:2a28b4664b0a | 10 | int lastButtonState=0,buttonChanged=0,buttonState=0; |
jakowisp | 5:2a28b4664b0a | 11 | |
jakowisp | 5:2a28b4664b0a | 12 | float x,y; |
jakowisp | 5:2a28b4664b0a | 13 | |
samux | 2:e7b766501add | 14 | |
samux | 2:e7b766501add | 15 | int main() { |
samux | 2:e7b766501add | 16 | while (1) { |
jakowisp | 5:2a28b4664b0a | 17 | #ifdef FLOATPOT |
jakowisp | 5:2a28b4664b0a | 18 | x= 0x7fff * potA.read(); |
jakowisp | 5:2a28b4664b0a | 19 | y= 0x7fff * potB.read(); |
jakowisp | 5:2a28b4664b0a | 20 | #else |
jakowisp | 5:2a28b4664b0a | 21 | x= ( potA.read_u16() & 0xfff0 ) >> 1; |
jakowisp | 5:2a28b4664b0a | 22 | y= ( potB.read_u16() & 0xfff0 ) >> 1; |
jakowisp | 5:2a28b4664b0a | 23 | #endif |
jakowisp | 5:2a28b4664b0a | 24 | buttonState = button.read() & 0x7; |
jakowisp | 5:2a28b4664b0a | 25 | buttonChanged = buttonState ^ lastButtonState; |
jakowisp | 5:2a28b4664b0a | 26 | mouse.move(x, y); |
jakowisp | 5:2a28b4664b0a | 27 | mouse.press(buttonState & buttonChanged); |
jakowisp | 5:2a28b4664b0a | 28 | mouse.release(!buttonState & buttonChanged); |
samux | 3:b8caa902d79e | 29 | |
samux | 2:e7b766501add | 30 | wait(0.001); |
samux | 2:e7b766501add | 31 | } |
samux | 0:48fd0c31cef5 | 32 | } |