Ok
Dependencies: mbed_rtos_types Mutex mbed_rtos_storage mbed Semaphore
Diff: Accelerometer.cpp
- Branch:
- Sinthreads
- Revision:
- 0:85df64b421a8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Accelerometer.cpp Wed Nov 27 11:12:33 2019 +0000 @@ -0,0 +1,49 @@ +#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; + } +} +} \ No newline at end of file