Emulate a mouse using FRDM KL25Z. MMA8451Q accelerometer used for orientation and TSI capacitive touch sensor used for right and Left Click. USBHID class library used for USB protocol implementation.

Dependencies:   MMA8451Q TSI USBDevice mbed

Committer:
priyankapashte
Date:
Sat Dec 12 04:23:31 2015 +0000
Revision:
0:c4999a91ff36
ESD Final Project; ; PC Mouse

Who changed what in which revision?

UserRevisionLine numberNew contents of line
priyankapashte 0:c4999a91ff36 1 #include "mbed.h"
priyankapashte 0:c4999a91ff36 2 #include "MMA8451Q.h"
priyankapashte 0:c4999a91ff36 3 #include "USBMouse.h"
priyankapashte 0:c4999a91ff36 4 #include "TSISensor.h"
priyankapashte 0:c4999a91ff36 5 #define MMA8451_I2C_ADDRESS (0x1d<<1)
priyankapashte 0:c4999a91ff36 6
priyankapashte 0:c4999a91ff36 7 Serial pc(USBTX, USBRX);
priyankapashte 0:c4999a91ff36 8
priyankapashte 0:c4999a91ff36 9 int main(void) {
priyankapashte 0:c4999a91ff36 10 MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS);
priyankapashte 0:c4999a91ff36 11 TSISensor tsi;
priyankapashte 0:c4999a91ff36 12 while (true) {
priyankapashte 0:c4999a91ff36 13 float X=acc.getAccX();
priyankapashte 0:c4999a91ff36 14 float Y=acc.getAccY();
priyankapashte 0:c4999a91ff36 15 mouse.move(Y,X);
priyankapashte 0:c4999a91ff36 16 if(tsi.readPercentage()>0)
priyankapashte 0:c4999a91ff36 17 if(tsi.readPercentage()<=0.6)
priyankapashte 0:c4999a91ff36 18 {
priyankapashte 0:c4999a91ff36 19 mouse.press(MOUSE_LEFT);
priyankapashte 0:c4999a91ff36 20 pc.printf("Left\n");
priyankapashte 0:c4999a91ff36 21 }
priyankapashte 0:c4999a91ff36 22 if(tsi.readPercentage()>0.6)
priyankapashte 0:c4999a91ff36 23 {
priyankapashte 0:c4999a91ff36 24 mouse.press(MOUSE_LEFT);
priyankapashte 0:c4999a91ff36 25 pc.printf("Right");
priyankapashte 0:c4999a91ff36 26 }
priyankapashte 0:c4999a91ff36 27 wait(0.5);
priyankapashte 0:c4999a91ff36 28 }
priyankapashte 0:c4999a91ff36 29
priyankapashte 0:c4999a91ff36 30 }
priyankapashte 0:c4999a91ff36 31
priyankapashte 0:c4999a91ff36 32
priyankapashte 0:c4999a91ff36 33
priyankapashte 0:c4999a91ff36 34