A test program for the MMA8452 accelerometer

Dependencies:   MMA8452 mbed

The test program runs a bunch of tests for the MMA8452 accelerometer.

What is below is not the test program, but an example to whet your appetite about the library.

#include "mbed.h"
#include "MMA8452.h"

int main() {
   Serial pc(USBTX,USBRX);
   pc.baud(115200);
   double x = 0, y = 0, z = 0;

   MMA8452 acc(p28, p27, 40000);
   acc.setBitDepth(MMA8452::BIT_DEPTH_12);
   acc.setDynamicRange(MMA8452::DYNAMIC_RANGE_4G);
   acc.setDataRate(MMA8452::RATE_100);
   
   while(1) {
      if(!acc.isXYZReady()) {
         wait(0.01);
         continue;
      }
      acc.readXYZGravity(&x,&y,&z);
      pc.printf("Gravities: %lf %lf %lf\r\n",x,y,z);
   }
}

An easy way to test that this actually works is to run the loop above and hold the MMA8452 parallel to the ground along the respective axis (and upsidedown in each axis). You will see 1G on the respective axis and 0G on the others.

Files at this revision

API Documentation at this revision

Comitter:
ashleymills
Date:
Wed Mar 05 17:04:27 2014 +0000
Parent:
3:2a8e59a590db
Child:
5:756f9b157319
Commit message:
Updated child

Changed in this revision

MMA8452.lib Show annotated file Show diff for this revision Revisions of this file
--- a/MMA8452.lib	Wed Mar 05 16:48:41 2014 +0000
+++ b/MMA8452.lib	Wed Mar 05 17:04:27 2014 +0000
@@ -1,1 +1,1 @@
-http://mbed.org/users/ashleymills/code/MMA8452/#d6dde2318edc
+http://mbed.org/users/ashleymills/code/MMA8452/#27d839e6dc0e