Sends compass and accelerometer data, receives data and displays on LED matrix

Dependencies:   microbit

Files at this revision

API Documentation at this revision

Comitter:
kinga
Date:
Wed Feb 15 14:09:30 2017 +0000
Child:
1:17905d919813
Commit message:
work data sending and receiving

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
microbit.lib Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Wed Feb 15 14:09:30 2017 +0000
@@ -0,0 +1,60 @@
+#include "MicroBit.h"
+#include <vector>
+
+MicroBit uBit;
+MicroBitSerial serial(USBTX, USBRX);
+MicroBitI2C i2c(I2C_SDA0, I2C_SCL0); 
+MicroBitAccelerometer accelerometer(i2c); 
+MicroBitStorage storage; 
+MicroBitCompass compass(i2c, accelerometer, storage);
+
+ManagedString getCompassHeading()
+{
+    int heading = compass.heading();
+    return (ManagedString)heading + ',';
+}
+
+ManagedString getAccelerometerVectors()
+{
+    ManagedString accelerometerVectorsString = "";
+    vector<int> accelerometerVectors;
+    accelerometerVectors.push_back(uBit.accelerometer.getX());
+    accelerometerVectors.push_back(uBit.accelerometer.getY());
+    accelerometerVectors.push_back(uBit.accelerometer.getZ());
+    for (int i = 0; i < accelerometerVectors.size(); ++i)
+    {
+        accelerometerVectorsString = accelerometerVectorsString + (ManagedString)accelerometerVectors[i] + ',';
+    }
+    return accelerometerVectorsString;
+}
+
+ManagedString getMessage()
+{
+    return getCompassHeading() + getAccelerometerVectors();
+}
+
+void readData()
+{
+    ManagedString s = serial.read(2, ASYNC);
+    uBit.display.print(s);
+}
+
+void sendData()
+{
+    serial.send(getMessage(), ASYNC);
+}
+    
+
+int main()
+{
+    uBit.init();
+    
+    while(1)
+    {
+        readData();
+        sendData();
+        uBit.sleep(500);
+    }
+    
+    release_fiber();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/microbit.lib	Wed Feb 15 14:09:30 2017 +0000
@@ -0,0 +1,1 @@
+https://developer.mbed.org/teams/Lancaster-University/code/microbit/#4b89e7e3494f