schedule sensors at different rates (rates hardcoded)
Fork of mbed_test_fastest_rate-bo by
sensors_scheduled.cpp
- Committer:
- tiyasa
- Date:
- 2014-02-10
- Revision:
- 3:dcbcca17dbfa
- Parent:
- 2:ca095bd51302
File content as of revision 3:dcbcca17dbfa:
#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 tt; SLCD slcd; TSISensor tsi; int main() { float accel, magma, light, touch; int a=0, m=0, l=0, t = 0; tt.reset(); while (true){ tt.start(); int time = tt.read_ms(); // pc.printf(" time = %d",time); if (a == 0){ accel = acc.getAccX(); a = 10; } a--; if (m == 0){ magma= mag.readVal(MAG_OUT_X_MSB); m =10; } m--; if(l == 0){ light = lightSensor.read(); l=10; } l--; if (t == 0){ touch = tsi.readPercentage(); t= 10; } t--; pc.printf(" a = %f, m = %f,l = %f,t = %f\n", accel, magma, light, touch); int time1 = tt.read_ms(); tt.stop(); pc.printf("tt= %d\n",(time1-time)); wait((50.0-(time1-time))/1000.0); } }