ADXL345 triple axis, digital accelerometer library.

Dependencies:   ADXL345_I2C

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "ADXL345_I2C.h"
00003  
00004 //ADXL345 accelerometer(p5, p6, p7, p8);
00005 ADXL345_I2C accelerometer(p9, p10);
00006 Serial pc(USBTX, USBRX);
00007  
00008 int main()
00009 {
00010  
00011     int readings[3] = {0, 0, 0};
00012      
00013     pc.printf("Starting ADXL345 test...\n");
00014     pc.printf("Device ID is: 0x%02x\n", accelerometer.getDevId());
00015  
00016     //Go into standby mode to configure the device.
00017     accelerometer.setPowerControl(0x00);
00018  
00019     //Full resolution, +/-16g, 4mg/LSB.
00020     accelerometer.setDataFormatControl(0x0B);
00021      
00022     //3.2kHz data rate.
00023     accelerometer.setDataRate(ADXL345_3200HZ);
00024  
00025     //Measurement mode.
00026     accelerometer.setPowerControl(0x08);
00027  
00028     while (1) 
00029     {
00030      
00031         wait(0.1);
00032         
00033         accelerometer.getOutput(readings);
00034          
00035         //13-bit, sign extended values.
00036         pc.printf("%i, %i, %i\n", (int16_t)readings[0], (int16_t)readings[1], (int16_t)readings[2]);
00037     }
00038  
00039 }