a

Dependencies:   ADXL345_I2C ITG3200 mbed

Fork of ADXL345 by James Allen

Committer:
s1210160
Date:
Fri Jul 31 10:24:10 2015 +0000
Revision:
1:67703f5eab67
Parent:
0:75c7bfd01ea0
a

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jrha 0:75c7bfd01ea0 1 #include "mbed.h"
jrha 0:75c7bfd01ea0 2 #include "ADXL345_I2C.h"
s1210160 1:67703f5eab67 3
jrha 0:75c7bfd01ea0 4
s1210160 1:67703f5eab67 5 ADXL345_I2C acc(p9, p10);
jrha 0:75c7bfd01ea0 6 Serial pc(USBTX, USBRX);
s1210160 1:67703f5eab67 7
s1210160 1:67703f5eab67 8 void ADXL345_settings(){
s1210160 1:67703f5eab67 9 //Go into standby mode to configure the device.
s1210160 1:67703f5eab67 10 acc.setPowerControl(0x00);
s1210160 1:67703f5eab67 11 wait(0.001);
s1210160 1:67703f5eab67 12
s1210160 1:67703f5eab67 13 //Full resolution, +/-16g, 4mg/LSB.
s1210160 1:67703f5eab67 14 acc.setDataFormatControl(0x09);
s1210160 1:67703f5eab67 15 wait(0.001);
s1210160 1:67703f5eab67 16
s1210160 1:67703f5eab67 17 //3.2kHz data rate.
s1210160 1:67703f5eab67 18 acc.setDataRate(ADXL345_800HZ);
s1210160 1:67703f5eab67 19 wait(0.001);
s1210160 1:67703f5eab67 20
s1210160 1:67703f5eab67 21 //Measurement mode.
s1210160 1:67703f5eab67 22 acc.setPowerControl(0x08);
s1210160 1:67703f5eab67 23 wait(0.001);
s1210160 1:67703f5eab67 24 }
jrha 0:75c7bfd01ea0 25
jrha 0:75c7bfd01ea0 26 int main()
jrha 0:75c7bfd01ea0 27 {
s1210160 1:67703f5eab67 28 wait(3);
s1210160 1:67703f5eab67 29
s1210160 1:67703f5eab67 30 pc.baud(9600);
jrha 0:75c7bfd01ea0 31
jrha 0:75c7bfd01ea0 32 int readings[3] = {0, 0, 0};
s1210160 1:67703f5eab67 33
s1210160 1:67703f5eab67 34 Timer acc_Timer;
s1210160 1:67703f5eab67 35 const int acc_Time = 100;
s1210160 1:67703f5eab67 36
s1210160 1:67703f5eab67 37 acc_Timer.start();
jrha 0:75c7bfd01ea0 38
s1210160 1:67703f5eab67 39 pc.printf("Starting ADXL345 test...\n");
s1210160 1:67703f5eab67 40 wait(0.001);
s1210160 1:67703f5eab67 41 ADXL345_settings();
s1210160 1:67703f5eab67 42 wait(0.1);
s1210160 1:67703f5eab67 43
s1210160 1:67703f5eab67 44 while(true){
s1210160 1:67703f5eab67 45
s1210160 1:67703f5eab67 46 if(acc_Timer.read_ms() >= acc_Time){
s1210160 1:67703f5eab67 47 acc_Timer.reset();
s1210160 1:67703f5eab67 48 acc.getOutput(readings);
s1210160 1:67703f5eab67 49 pc.printf("%i %i %i\n", (int16_t)readings[0], (int16_t)readings[1], (int16_t)readings[2]);
jrha 0:75c7bfd01ea0 50 }
s1210160 1:67703f5eab67 51 }
jrha 0:75c7bfd01ea0 52 }