Dependencies:   MMA8451Q mbed

Revision:
1:953d19be0550
Parent:
0:2227363aa617
Child:
2:ff965ab5160f
--- a/main.cpp	Tue Oct 27 23:12:09 2015 +0000
+++ b/main.cpp	Wed Oct 28 04:55:35 2015 +0000
@@ -16,8 +16,16 @@
 
 #define MMA8451_I2C_ADDRESS (0x1d<<1) // accel address
 
+void read_accel(struct *xyz data);
+void set_color(struct *xyz data);
 
 // accel comes from MMA8451Q.CPP library 
+struct xyz{
+    unsigned int x = 0;
+    unsigned int y = 0;
+    unsigned int z = 0;
+};
+
 
 int main(void)
 {
@@ -28,17 +36,37 @@
 
     //printf("MMA8451 ID: %d\n", acc.getWhoAmI());
 
-    while (true) {
-        float x, y, z;
-        //x = abs(acc.getAccX());
-        //y = abs(acc.getAccY());
-        z = abs(acc.getAccZ());
-        //rled = 1.0f - x;
-        //gled = 1.0f - y;
-        bled = 1.0f - z;
-        wait(.10);
-        //wait(0.1f); // old delay to terminal
-        //printf("X: %1.2f, Y: %1.2f, Z: %1.2f\n", x, y, z); old output xyz
-        printf("%1.3f\r\n",z);
+    while (true) 
+    {
+        struct xyz data;
+        read_accel(&data);
+        set_color(&data);
+        send_data(&data);
+        wait_ms(50);
+        printf("%1.3f\r\n",z); /* 1.3f sets output to 3-precision */
     }
+    return 0;
 }
+
+void read_accel(struct *xyz data)
+{
+    
+    data.x = abs(acc.getAccX());
+    data.y = abs(acc.getAccY());
+    data.z = abs(acc.getAccZ());    
+    
+}
+
+
+void set_color(struct *xyz data)
+{
+    rled = 1.0f - data->x;
+    gled = 1.0f - data->y;
+    bled = 1.0f - data->z;
+}
+
+
+
+
+
+