Ok

Dependencies:   mbed_rtos_types Mutex mbed_rtos_storage mbed Semaphore

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Accelerometer.cpp Source File

Accelerometer.cpp

00001 #include "mbed.h"
00002 
00003 extern Serial pc;
00004 extern int iteration;
00005 extern int x;
00006 extern int y;
00007 extern int z;
00008 float acc_max[3]={0};
00009 float acc_min[3]={0};
00010 
00011 // Prints maximum and minimum values of accelerometer in each axis (doesn't clean the array when finished).
00012 void printAccMinMax(){
00013     pc.printf("\n\rAccelerometer:\n\r Max:  X=%.5f  Y=%.5f  Z=%.5f\n\r Min:  X=%.5f  Y=%.5f  Z=%.5f\n\r", acc_max[0], acc_max[1], acc_max[2], acc_min[0], acc_min[1], acc_min[2] );
00014  /*   for (int p=0; p<3; p++){
00015     acc_max[p]=0;
00016     acc_min[p]=0;
00017      }*/
00018     }
00019 //Keeps an array with max and min values of each axis
00020 void accMinMax (float a,float b,float c){
00021    if (iteration == 0){ 
00022                      acc_min[0]=a;
00023                      acc_min[1]=b;
00024                      acc_min[2]=c;
00025                      acc_max[0]=a;
00026                      acc_max[1]=b;
00027                      acc_max[2]=c;
00028                      }
00029     else{                 
00030     if(a>acc_max[0]){
00031        acc_max[0]=a;
00032         }
00033     if(a<acc_min[0]){
00034         acc_min[0]=a;
00035         }    
00036     if(b>acc_max[1]){
00037        acc_max[1]=b;
00038         }
00039     if(b<acc_min[1]){
00040         acc_min[1]=b;
00041         }  
00042     if(c>acc_max[2]){
00043        acc_max[2]=c;
00044         }
00045     if(c<acc_min[2]){
00046         acc_min[2]=c;
00047         }              
00048 }
00049 }