Ok

Dependencies:   mbed_rtos_types Mutex mbed_rtos_storage mbed Semaphore

Accelerometer.cpp

Committer:
daniwestside
Date:
2019-11-27
Branch:
Sinthreads
Revision:
1:c9ef27da97b5
Parent:
0:85df64b421a8

File content as of revision 1:c9ef27da97b5:

#include "mbed.h"

extern Serial pc;
extern int iteration;
extern int x;
extern int y;
extern int z;
float acc_max[3]={0};
float acc_min[3]={0};

// Prints maximum and minimum values of accelerometer in each axis (doesn't clean the array when finished).
void printAccMinMax(){
    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] );
 /*   for (int p=0; p<3; p++){
    acc_max[p]=0;
    acc_min[p]=0;
     }*/
    }
//Keeps an array with max and min values of each axis
void accMinMax (float a,float b,float c){
   if (iteration == 0){ 
                     acc_min[0]=a;
                     acc_min[1]=b;
                     acc_min[2]=c;
                     acc_max[0]=a;
                     acc_max[1]=b;
                     acc_max[2]=c;
                     }
    else{                 
    if(a>acc_max[0]){
       acc_max[0]=a;
        }
    if(a<acc_min[0]){
        acc_min[0]=a;
        }    
    if(b>acc_max[1]){
       acc_max[1]=b;
        }
    if(b<acc_min[1]){
        acc_min[1]=b;
        }  
    if(c>acc_max[2]){
       acc_max[2]=c;
        }
    if(c<acc_min[2]){
        acc_min[2]=c;
        }              
}
}