Sample

Dependencies:   MMA8451Q mbed

Committer:
prathameshrs22
Date:
Tue Jan 09 10:43:43 2018 +0000
Revision:
0:df47a2b2f7eb
Initial Commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
prathameshrs22 0:df47a2b2f7eb 1 #include "mbed.h"
prathameshrs22 0:df47a2b2f7eb 2 #include "MMA8451Q.h"
prathameshrs22 0:df47a2b2f7eb 3
prathameshrs22 0:df47a2b2f7eb 4 #define MMA8451_I2C_ADDRESS (0x1d<<1)
prathameshrs22 0:df47a2b2f7eb 5
prathameshrs22 0:df47a2b2f7eb 6 MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS);
prathameshrs22 0:df47a2b2f7eb 7
prathameshrs22 0:df47a2b2f7eb 8 BusOut rgb(LED1,LED2,LED3);
prathameshrs22 0:df47a2b2f7eb 9 Serial pc(USBTX,USBRX);
prathameshrs22 0:df47a2b2f7eb 10
prathameshrs22 0:df47a2b2f7eb 11 int main() {
prathameshrs22 0:df47a2b2f7eb 12 float accy,accz;
prathameshrs22 0:df47a2b2f7eb 13 int y,z;
prathameshrs22 0:df47a2b2f7eb 14 int count=0;
prathameshrs22 0:df47a2b2f7eb 15 rgb=0b111; // turning all leds off
prathameshrs22 0:df47a2b2f7eb 16 while(1) {
prathameshrs22 0:df47a2b2f7eb 17 //acquiring values of accelerometer
prathameshrs22 0:df47a2b2f7eb 18 accy=acc.getAccY();
prathameshrs22 0:df47a2b2f7eb 19 accz=acc.getAccZ();
prathameshrs22 0:df47a2b2f7eb 20 y=(accy+2)*100;
prathameshrs22 0:df47a2b2f7eb 21 z=(accz+2)*100;
prathameshrs22 0:df47a2b2f7eb 22 pc.printf("$%d %d;",y,z);
prathameshrs22 0:df47a2b2f7eb 23 //detecting movement
prathameshrs22 0:df47a2b2f7eb 24 if((accy>1)||(accy<-1)){
prathameshrs22 0:df47a2b2f7eb 25 count++;
prathameshrs22 0:df47a2b2f7eb 26 switch(count){
prathameshrs22 0:df47a2b2f7eb 27 case 1: rgb=0b110; break;
prathameshrs22 0:df47a2b2f7eb 28 case 2: rgb=0b101; break;
prathameshrs22 0:df47a2b2f7eb 29 case 3: rgb=0b011; break;
prathameshrs22 0:df47a2b2f7eb 30 case 4: rgb=0b000; break;
prathameshrs22 0:df47a2b2f7eb 31 case 5: rgb=0b111; count=0; break;
prathameshrs22 0:df47a2b2f7eb 32 }
prathameshrs22 0:df47a2b2f7eb 33 wait(0.5);
prathameshrs22 0:df47a2b2f7eb 34 }
prathameshrs22 0:df47a2b2f7eb 35 else if((accz>1)||(accz<-1)){ //detecting if it's left movement
prathameshrs22 0:df47a2b2f7eb 36 count--;
prathameshrs22 0:df47a2b2f7eb 37 switch(count){
prathameshrs22 0:df47a2b2f7eb 38 case 1: rgb=0b110; count=6; break;
prathameshrs22 0:df47a2b2f7eb 39 case 2: rgb=0b101; break;
prathameshrs22 0:df47a2b2f7eb 40 case 3: rgb=0b011; break;
prathameshrs22 0:df47a2b2f7eb 41 case 4: rgb=0b000; break;
prathameshrs22 0:df47a2b2f7eb 42 case 5: rgb=0b111; break;
prathameshrs22 0:df47a2b2f7eb 43 }
prathameshrs22 0:df47a2b2f7eb 44 wait(0.5);
prathameshrs22 0:df47a2b2f7eb 45 }
prathameshrs22 0:df47a2b2f7eb 46 }
prathameshrs22 0:df47a2b2f7eb 47 }