Enter h(high), l(low), m(medium) to change the speed of cursor
Dependencies: mbed TSI MMA8451Q USBDevice
main.cpp@0:99a75d66305f, 2021-01-23 (annotated)
- Committer:
- div1104
- Date:
- Sat Jan 23 16:57:36 2021 +0000
- Revision:
- 0:99a75d66305f
Speed of cursor
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
div1104 | 0:99a75d66305f | 1 | #include "mbed.h" |
div1104 | 0:99a75d66305f | 2 | #include "MMA8451Q.h" |
div1104 | 0:99a75d66305f | 3 | #define MMA8451_I2C_ADDRESS (0x1D<<1) |
div1104 | 0:99a75d66305f | 4 | #include "TSISensor.h" |
div1104 | 0:99a75d66305f | 5 | #include "USBMouse.h" |
div1104 | 0:99a75d66305f | 6 | Serial pc(USBTX,USBRX); |
div1104 | 0:99a75d66305f | 7 | MMA8451Q acc(PTE25,PTE24,MMA8451_I2C_ADDRESS); |
div1104 | 0:99a75d66305f | 8 | TSISensor tsi; |
div1104 | 0:99a75d66305f | 9 | USBMouse mouse; |
div1104 | 0:99a75d66305f | 10 | int main() |
div1104 | 0:99a75d66305f | 11 | { |
div1104 | 0:99a75d66305f | 12 | float x=0; |
div1104 | 0:99a75d66305f | 13 | float y=0; |
div1104 | 0:99a75d66305f | 14 | int s; |
div1104 | 0:99a75d66305f | 15 | char ch; |
div1104 | 0:99a75d66305f | 16 | float tsival; |
div1104 | 0:99a75d66305f | 17 | pc.printf("Enter the speed for cursor as h l m:"); |
div1104 | 0:99a75d66305f | 18 | |
div1104 | 0:99a75d66305f | 19 | |
div1104 | 0:99a75d66305f | 20 | while(1) |
div1104 | 0:99a75d66305f | 21 | { |
div1104 | 0:99a75d66305f | 22 | if(pc.readable()) |
div1104 | 0:99a75d66305f | 23 | { |
div1104 | 0:99a75d66305f | 24 | ch=pc.getc(); |
div1104 | 0:99a75d66305f | 25 | |
div1104 | 0:99a75d66305f | 26 | } |
div1104 | 0:99a75d66305f | 27 | |
div1104 | 0:99a75d66305f | 28 | switch(ch) |
div1104 | 0:99a75d66305f | 29 | { |
div1104 | 0:99a75d66305f | 30 | case 'l': s=2; |
div1104 | 0:99a75d66305f | 31 | break; |
div1104 | 0:99a75d66305f | 32 | case 'm': s=5; |
div1104 | 0:99a75d66305f | 33 | break; |
div1104 | 0:99a75d66305f | 34 | case 'h': s=8; |
div1104 | 0:99a75d66305f | 35 | break; |
div1104 | 0:99a75d66305f | 36 | default: s=12; |
div1104 | 0:99a75d66305f | 37 | break; |
div1104 | 0:99a75d66305f | 38 | } |
div1104 | 0:99a75d66305f | 39 | x=acc.getAccX(); |
div1104 | 0:99a75d66305f | 40 | y=acc.getAccY(); |
div1104 | 0:99a75d66305f | 41 | tsival = tsi.readPercentage(); |
div1104 | 0:99a75d66305f | 42 | |
div1104 | 0:99a75d66305f | 43 | x=x*s; |
div1104 | 0:99a75d66305f | 44 | y=y*s; |
div1104 | 0:99a75d66305f | 45 | mouse.move(-y,x); |
div1104 | 0:99a75d66305f | 46 | if((tsival>0.05&&tsival<0.33)) |
div1104 | 0:99a75d66305f | 47 | { |
div1104 | 0:99a75d66305f | 48 | mouse.press(MOUSE_RIGHT); |
div1104 | 0:99a75d66305f | 49 | } |
div1104 | 0:99a75d66305f | 50 | else if((tsival>0.66&&tsival<1)) |
div1104 | 0:99a75d66305f | 51 | { |
div1104 | 0:99a75d66305f | 52 | mouse.press(MOUSE_LEFT); |
div1104 | 0:99a75d66305f | 53 | |
div1104 | 0:99a75d66305f | 54 | } |
div1104 | 0:99a75d66305f | 55 | else |
div1104 | 0:99a75d66305f | 56 | { |
div1104 | 0:99a75d66305f | 57 | mouse.release(MOUSE_LEFT); |
div1104 | 0:99a75d66305f | 58 | mouse.release(MOUSE_RIGHT); |
div1104 | 0:99a75d66305f | 59 | } |
div1104 | 0:99a75d66305f | 60 | } |
div1104 | 0:99a75d66305f | 61 | } |