schedule sensors at different rates (rates hardcoded)

Dependencies:   mbed

Fork of mbed_test_fastest_rate-bo by Junaid Ahmed

Committer:
tiyasa
Date:
Mon Feb 10 18:58:30 2014 +0000
Revision:
3:dcbcca17dbfa
Parent:
2:ca095bd51302
schedule multiple sensors

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mja054 1:3d1239d55050 1 #include "mbed.h"
mja054 1:3d1239d55050 2 #include "MMA8451Q.h"
mja054 1:3d1239d55050 3 #include "MAG3110.h"
mja054 1:3d1239d55050 4 #include "SLCD.h"
mja054 1:3d1239d55050 5 #include "TSISensor.h"
mja054 1:3d1239d55050 6
mja054 1:3d1239d55050 7 #define MMA8451_I2C_ADDRESS (0x1d << 1)
mja054 1:3d1239d55050 8 #define MAG3110_I2C_ADDRESS (0x0e << 1)
mja054 1:3d1239d55050 9
mja054 1:3d1239d55050 10 Serial pc(USBTX, USBRX);
mja054 1:3d1239d55050 11 MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS);
mja054 1:3d1239d55050 12 MAG3110 mag(PTE25, PTE24, MAG3110_I2C_ADDRESS);
mja054 1:3d1239d55050 13 AnalogIn lightSensor(PTE22);
mja054 1:3d1239d55050 14 DigitalOut myled(LED1);
mja054 1:3d1239d55050 15 DigitalOut myled2(LED2);
tiyasa 3:dcbcca17dbfa 16 Timer tt;
mja054 1:3d1239d55050 17 SLCD slcd;
mja054 1:3d1239d55050 18 TSISensor tsi;
mja054 1:3d1239d55050 19
mja054 1:3d1239d55050 20 int main() {
tiyasa 3:dcbcca17dbfa 21 float accel, magma, light, touch;
tiyasa 3:dcbcca17dbfa 22 int a=0, m=0, l=0, t = 0;
tiyasa 3:dcbcca17dbfa 23 tt.reset();
mja054 1:3d1239d55050 24 while (true){
tiyasa 3:dcbcca17dbfa 25 tt.start();
tiyasa 3:dcbcca17dbfa 26 int time = tt.read_ms();
tiyasa 3:dcbcca17dbfa 27 // pc.printf(" time = %d",time);
tiyasa 3:dcbcca17dbfa 28 if (a == 0){
tiyasa 3:dcbcca17dbfa 29 accel = acc.getAccX();
tiyasa 3:dcbcca17dbfa 30 a = 10;
tiyasa 3:dcbcca17dbfa 31 }
tiyasa 3:dcbcca17dbfa 32 a--;
tiyasa 3:dcbcca17dbfa 33 if (m == 0){
tiyasa 3:dcbcca17dbfa 34 magma= mag.readVal(MAG_OUT_X_MSB);
tiyasa 3:dcbcca17dbfa 35 m =10;
tiyasa 3:dcbcca17dbfa 36 }
tiyasa 3:dcbcca17dbfa 37 m--;
tiyasa 3:dcbcca17dbfa 38 if(l == 0){
tiyasa 3:dcbcca17dbfa 39 light = lightSensor.read();
tiyasa 3:dcbcca17dbfa 40 l=10;
tiyasa 3:dcbcca17dbfa 41 }
tiyasa 3:dcbcca17dbfa 42 l--;
tiyasa 3:dcbcca17dbfa 43 if (t == 0){
tiyasa 3:dcbcca17dbfa 44 touch = tsi.readPercentage();
tiyasa 3:dcbcca17dbfa 45 t= 10;
tiyasa 3:dcbcca17dbfa 46 }
tiyasa 3:dcbcca17dbfa 47 t--;
tiyasa 3:dcbcca17dbfa 48
tiyasa 3:dcbcca17dbfa 49 pc.printf(" a = %f, m = %f,l = %f,t = %f\n", accel, magma, light, touch);
tiyasa 3:dcbcca17dbfa 50 int time1 = tt.read_ms();
tiyasa 3:dcbcca17dbfa 51 tt.stop();
tiyasa 3:dcbcca17dbfa 52 pc.printf("tt= %d\n",(time1-time));
tiyasa 3:dcbcca17dbfa 53 wait((50.0-(time1-time))/1000.0);
tiyasa 3:dcbcca17dbfa 54 }
mja054 1:3d1239d55050 55 }