Enter h(high), l(low), m(medium) to change the speed of cursor

Dependencies:   mbed TSI MMA8451Q USBDevice

main.cpp

Committer:
div1104
Date:
2021-01-23
Revision:
0:99a75d66305f

File content as of revision 0:99a75d66305f:

#include "mbed.h"
#include "MMA8451Q.h"
#define MMA8451_I2C_ADDRESS (0x1D<<1)
#include "TSISensor.h"
#include "USBMouse.h"
Serial pc(USBTX,USBRX);
MMA8451Q acc(PTE25,PTE24,MMA8451_I2C_ADDRESS);
TSISensor tsi;
USBMouse mouse;
int main() 
{
    float x=0;
    float y=0;
    int s;
    char ch;
    float tsival;
    pc.printf("Enter the speed for cursor as h l m:");
    
       
    while(1) 
    {
      if(pc.readable())
    {
       ch=pc.getc();
     
    }
     
      switch(ch)
        {
        case 'l': s=2;
        break;
        case 'm': s=5;
        break;
        case 'h': s=8;
        break;
        default:  s=12;
        break;
         }
      x=acc.getAccX();
      y=acc.getAccY();
      tsival = tsi.readPercentage();
      
      x=x*s;
      y=y*s;
      mouse.move(-y,x);
      if((tsival>0.05&&tsival<0.33))
       {
         mouse.press(MOUSE_RIGHT);
       } 
      else if((tsival>0.66&&tsival<1))
       {
         mouse.press(MOUSE_LEFT);
        
        }  
      else
      {
          mouse.release(MOUSE_LEFT);
          mouse.release(MOUSE_RIGHT);
       }   
    }
}