ADXL345 3-axis Acceleration Sensor sample

Dependencies:   ADXL345_I2C mbed

Fork of ADXL345 by James Allen

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