Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
MMA7361L.cpp
00001 #include "MMA7361L.h" 00002 00003 MMA7361L::MMA7361L(PinName xoutPin, PinName youtPin,PinName zoutPin, 00004 PinName zeroGDetectPin) : 00005 xout(xoutPin), yout(youtPin), zout(zoutPin), 00006 zeroGDetect(zeroGDetectPin) { 00007 scaleX = 0.246; 00008 scaleY = 0.251; 00009 scaleZ = 0.219; 00010 Xo = 0.486; 00011 Yo = 0.520; 00012 Zo = 0.465; 00013 } 00014 00015 void MMA7361L::prepare(){ 00016 accelX = (xout - Xo) / scaleX; 00017 accelY = (yout - Yo) / scaleY; 00018 accelZ = (zout - Zo) / scaleZ; 00019 } 00020 00021 float MMA7361L::getAccel() { 00022 prepare(); 00023 return sqrt(accelX * accelX + accelY * accelY + accelZ * accelZ); 00024 } 00025 00026 float MMA7361L::getAccelX() { 00027 prepare(); 00028 return accelX; 00029 } 00030 00031 float MMA7361L::getAccelY() { 00032 prepare(); 00033 return accelY; 00034 } 00035 00036 float MMA7361L::getAccelZ() { 00037 prepare(); 00038 return accelZ; 00039 } 00040 00041 float MMA7361L::getTiltX() { 00042 prepare(); 00043 return asin(accelX / sqrt(accelX * accelX + accelY * accelY + accelZ * accelZ)); 00044 } 00045 00046 float MMA7361L::getTiltY() { 00047 prepare(); 00048 return asin(accelY / sqrt(accelX * accelX + accelY * accelY + accelZ * accelZ)); 00049 } 00050 00051 float MMA7361L::getTiltZ() { 00052 prepare(); 00053 return asin(accelZ / sqrt(accelX * accelX + accelY * accelY + accelZ * accelZ)); 00054 } 00055 00056 bool MMA7361L::zeroGDetected() { 00057 return zeroGDetect; 00058 } 00059 00060 void MMA7361L::setZeroGDetectListener(void (*func)(void)) { 00061 zeroGDetect.rise(func); 00062 } 00063 00064 template<typename T> void MMA7361L::setZeroGDetectListener(T* t, void (T::*func)(void)) { 00065 zeroG.rise(t, func); 00066 }
Generated on Fri Jul 15 2022 21:20:24 by
1.7.2