send microbit compass and accelerometer data
Fork of compass_data_sender by
main.cpp@6:77e0f7786398, 2017-02-14 (annotated)
- Committer:
- kinga
- Date:
- Tue Feb 14 15:43:51 2017 +0000
- Revision:
- 6:77e0f7786398
- Parent:
- 5:c443160b7715
- Child:
- 7:73fbd714530a
refactor: working for loop
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kinga | 0:839533b03cb9 | 1 | #include "MicroBit.h" |
kinga | 5:c443160b7715 | 2 | #include <vector> |
kinga | 0:839533b03cb9 | 3 | |
kinga | 0:839533b03cb9 | 4 | MicroBit uBit; |
kinga | 0:839533b03cb9 | 5 | MicroBitSerial serial(USBTX, USBRX); |
kinga | 0:839533b03cb9 | 6 | MicroBitI2C i2c(I2C_SDA0, I2C_SCL0); |
kinga | 3:92910c8d63e4 | 7 | MicroBitAccelerometer accelerometer(i2c); |
kinga | 3:92910c8d63e4 | 8 | MicroBitStorage storage; |
kinga | 3:92910c8d63e4 | 9 | MicroBitCompass compass(i2c, accelerometer, storage); |
kinga | 0:839533b03cb9 | 10 | |
kinga | 3:92910c8d63e4 | 11 | ManagedString getCompassHeading() |
kinga | 3:92910c8d63e4 | 12 | { |
kinga | 3:92910c8d63e4 | 13 | int heading = compass.heading(); |
kinga | 4:b8aa76f28112 | 14 | return (ManagedString)heading + ','; |
kinga | 3:92910c8d63e4 | 15 | } |
kinga | 0:839533b03cb9 | 16 | |
kinga | 3:92910c8d63e4 | 17 | ManagedString getAccelerometerVectors() |
kinga | 3:92910c8d63e4 | 18 | { |
kinga | 6:77e0f7786398 | 19 | ManagedString accelerometerVectorsString = ""; |
kinga | 6:77e0f7786398 | 20 | vector<ManagedString> accelerometerVectors; |
kinga | 6:77e0f7786398 | 21 | accelerometerVectors.push_back((ManagedString)uBit.accelerometer.getX()); |
kinga | 6:77e0f7786398 | 22 | accelerometerVectors.push_back((ManagedString)uBit.accelerometer.getY()); |
kinga | 6:77e0f7786398 | 23 | accelerometerVectors.push_back((ManagedString)uBit.accelerometer.getZ()); |
kinga | 5:c443160b7715 | 24 | for (int i = 0; i < accelerometerVectors.size(); ++i) |
kinga | 5:c443160b7715 | 25 | { |
kinga | 6:77e0f7786398 | 26 | accelerometerVectorsString = accelerometerVectorsString + accelerometerVectors[i] + ','; |
kinga | 5:c443160b7715 | 27 | } |
kinga | 6:77e0f7786398 | 28 | return accelerometerVectorsString; |
kinga | 3:92910c8d63e4 | 29 | } |
kinga | 0:839533b03cb9 | 30 | |
kinga | 3:92910c8d63e4 | 31 | ManagedString getMessage() |
kinga | 3:92910c8d63e4 | 32 | { |
kinga | 4:b8aa76f28112 | 33 | return getCompassHeading() + getAccelerometerVectors(); |
kinga | 3:92910c8d63e4 | 34 | } |
kinga | 0:839533b03cb9 | 35 | |
kinga | 0:839533b03cb9 | 36 | int main() |
kinga | 0:839533b03cb9 | 37 | { |
kinga | 0:839533b03cb9 | 38 | uBit.init(); |
kinga | 0:839533b03cb9 | 39 | |
kinga | 3:92910c8d63e4 | 40 | while (1) |
kinga | 3:92910c8d63e4 | 41 | { |
kinga | 3:92910c8d63e4 | 42 | serial.send(getMessage()); |
kinga | 0:839533b03cb9 | 43 | uBit.sleep(500); |
kinga | 0:839533b03cb9 | 44 | } |
kinga | 0:839533b03cb9 | 45 | |
kinga | 0:839533b03cb9 | 46 | release_fiber(); |
kinga | 0:839533b03cb9 | 47 | } |
kinga | 0:839533b03cb9 | 48 |