Modified example of LED / Accelerometer demo. Added TSI for brightness control

Dependencies:   MMA8451Q TSI USBDevice mbed

Fork of FRDM_MMA8451Q by mbed official

Revision:
8:ffab051c58b5
Parent:
5:bf5becf7469c
--- a/main.cpp	Tue Feb 19 23:46:45 2013 +0000
+++ b/main.cpp	Fri May 17 15:14:03 2013 +0000
@@ -1,18 +1,32 @@
 #include "mbed.h"
+#include "TSISensor.h"
 #include "MMA8451Q.h"
+#include "USBMouse.h"
 
 #define MMA8451_I2C_ADDRESS (0x1d<<1)
 
+
 int main(void) {
+    USBMouse mouse;
+    float pct_tsi = 0;
+    TSISensor tsi;
     MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS);
     PwmOut rled(LED_RED);
     PwmOut gled(LED_GREEN);
     PwmOut bled(LED_BLUE);
-
+    rled.period_ms(2);
+    bled.period_ms(2);
+    gled.period_ms(2);
     while (true) {
-        rled = 1.0 - abs(acc.getAccX());
-        gled = 1.0 - abs(acc.getAccY());
-        bled = 1.0 - abs(acc.getAccZ());
-        wait(0.1);
+        float accs[3];
+        float pct_tsi_t;
+        pct_tsi_t = tsi.readPercentage();
+        pct_tsi = pct_tsi_t == 0 && pct_tsi > 0.1 ? pct_tsi : pct_tsi_t;
+        acc.getAccAllAxis(accs);
+        rled = 1.0 - (abs(accs[0])*pct_tsi);
+        gled = 1.0 - (abs(accs[1])*pct_tsi);
+        bled = 1.0 - (abs(accs[2])*pct_tsi);
+        mouse.move(accs[0]*10,accs[1]*-10);
+        wait(0.001);
     }
 }