Homework #2 Problem #3

Dependencies:   USBDevice mbed

Fork of USBMouse_HelloWorld by Samuel Mokrani

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?

UserRevisionLine numberNew 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 }