Bo-Jhang Ho
/
mbed_test_fastest_rate
fastest sampling rate
mbed_fastest_rate.cpp
- Committer:
- TimeString
- Date:
- 2014-02-03
- Revision:
- 0:459f1731fa6a
File content as of revision 0:459f1731fa6a:
#include "mbed.h" #include "MMA8451Q.h" #include "MAG3110.h" #include "SLCD.h" #include "TSISensor.h" #define MMA8451_I2C_ADDRESS (0x1d << 1) #define MAG3110_I2C_ADDRESS (0x0e << 1) Serial pc(USBTX, USBRX); MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS); MAG3110 mag(PTE25, PTE24, MAG3110_I2C_ADDRESS); AnalogIn lightSensor(PTE22); DigitalOut myled(LED1); DigitalOut myled2(LED2); Timer t; SLCD slcd; TSISensor tsi; int main() { while (true) { slcd.printf(" 1"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { acc.getAccX(); } t.stop(); pc.printf("AccX 1000 samples takes %f secs\n", t.read()); slcd.printf(" 2"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { acc.getAccY(); } t.stop(); pc.printf("AccY 1000 samples takes %f secs\n", t.read()); slcd.printf(" 3"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { acc.getAccZ(); } t.stop(); pc.printf("AccZ 1000 samples takes %f secs\n", t.read()); slcd.printf(" 4"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { acc.getAccX(); acc.getAccY(); acc.getAccZ(); } t.stop(); pc.printf("AccXYZ together 1000 samples takes %f secs\n", t.read()); slcd.printf(" 5"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { mag.readVal(MAG_OUT_X_MSB); } t.stop(); pc.printf("magX 1000 samples takes %f secs\n", t.read()); slcd.printf(" 6"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { mag.readVal(MAG_OUT_Y_MSB); } t.stop(); pc.printf("magY 1000 samples takes %f secs\n", t.read()); slcd.printf(" 7"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { mag.readVal(MAG_OUT_Z_MSB); } t.stop(); pc.printf("magZ 1000 samples takes %f secs\n", t.read()); slcd.printf(" 8"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { mag.readVal(MAG_OUT_X_MSB); mag.readVal(MAG_OUT_Y_MSB); mag.readVal(MAG_OUT_Z_MSB); } t.stop(); pc.printf("magXYZ together 1000 samples takes %f secs\n", t.read()); slcd.printf(" 9"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { double tsl = (double)(lightSensor.read()); } t.stop(); pc.printf("light sensor 1000 samples takes %f secs\n", t.read()); slcd.printf(" 10"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { tsi.readPercentage(); } t.stop(); pc.printf("touch sensor 1000 samples takes %f secs\n", t.read()); slcd.printf(" 99"); t.reset(); t.start(); for (int i = 0; i < 1000; i++) { acc.getAccX(); acc.getAccY(); acc.getAccZ(); mag.readVal(MAG_OUT_X_MSB); mag.readVal(MAG_OUT_Y_MSB); mag.readVal(MAG_OUT_Z_MSB); lightSensor.read(); tsi.readPercentage(); } t.stop(); pc.printf("all sensors 1000 samples takes %f secs\n", t.read()); } }