Unit testing and development for 9DOF sparkfun sensor stick
Dependencies: ADXL345 HMC5883L ITG3200 mbed
Diff: main.cpp
- Revision:
- 3:5e21a352e236
- Parent:
- 2:d7e66940541d
- Child:
- 4:8a77e21d08f1
--- a/main.cpp Thu Nov 01 18:46:58 2012 +0000 +++ b/main.cpp Mon Nov 05 18:35:42 2012 +0000 @@ -17,12 +17,54 @@ #include "mbed.h" //#include "ITG3200.h" //#include "HMC5883L.h" +#include "adxl345unit.h" I2C i2c_bus(p28, p27); +ADXL345 accel(i2c_bus); +Timer t; +Serial pc(USBTX, USBRX); +//ADXL345UNIT accel_test(i2c_bus, t); int main() { + t.start(); + pc.baud(9600); + accel.calibrate(&t, true); + //accel_test.builtInSelfTest(true); + //accel_test.offsetCalibration(true); +/* + int sample[3]; + float elapsed_time; + float time_stamp[100]; + int samples[100][3]; + Timer t; + Serial pc(USBTX, USBRX); + pc.baud(9600); + + accel.setDataRate(ADXL345_100HZ); // 100Hz data rate + accel.setDataFormatControl(ADXL345_16G | ADXL345_FULL_RES); + accel.setPowerControl(0x08); // start measurement + + wait(0.001); + + t.start(); + accel.getOutput(sample); + elapsed_time = t.read(); + + pc.printf("Sample took %f seconds.\r\n", elapsed_time); + pc.printf("x: %d, y: %d, z: %d\r\n", sample[0],sample[1],sample[2]); + + for(int i = 0; i < 100; i++) { + t.reset(); + accel.getOutput(samples[i]); + time_stamp[i] = t.read(); + } + for(int i = 0; i < 100; i++) { + pc.printf("Sample took %f seconds.\r\n", time_stamp[i]); + pc.printf("x: %d, y: %d, z: %d\r\n", samples[i][0],samples[i][1],samples[i][2]); + } + */ } /* @@ -31,7 +73,7 @@ Serial pc(USBTX, USBRX); pc.baud(9600); - + HMC5883L compass(i2c_bus); int data[3];