![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Part 2 lab 4
Fork of Accelerometer_example by
main.cpp@2:304358fa24aa, 2018-02-16 (annotated)
- Committer:
- Bossman
- Date:
- Fri Feb 16 21:58:20 2018 +0000
- Revision:
- 2:304358fa24aa
- Parent:
- 0:a1caba5c4e48
- Child:
- 3:1861f741c2df
Version 1
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
WilliamMarshQMUL | 0:a1caba5c4e48 | 1 | #include "mbed.h" |
WilliamMarshQMUL | 0:a1caba5c4e48 | 2 | #include "rtos.h" |
WilliamMarshQMUL | 0:a1caba5c4e48 | 3 | #include "MMA8451Q.h" |
WilliamMarshQMUL | 0:a1caba5c4e48 | 4 | |
WilliamMarshQMUL | 0:a1caba5c4e48 | 5 | PinName const SDA = PTE25; |
WilliamMarshQMUL | 0:a1caba5c4e48 | 6 | PinName const SCL = PTE24; |
WilliamMarshQMUL | 0:a1caba5c4e48 | 7 | |
WilliamMarshQMUL | 0:a1caba5c4e48 | 8 | #define MMA8451_I2C_ADDRESS (0x1d<<1) |
WilliamMarshQMUL | 0:a1caba5c4e48 | 9 | |
Bossman | 2:304358fa24aa | 10 | |
WilliamMarshQMUL | 0:a1caba5c4e48 | 11 | int main(void) |
WilliamMarshQMUL | 0:a1caba5c4e48 | 12 | { |
WilliamMarshQMUL | 0:a1caba5c4e48 | 13 | MMA8451Q acc(SDA, SCL, MMA8451_I2C_ADDRESS); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 14 | PwmOut rled(LED1); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 15 | PwmOut gled(LED2); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 16 | PwmOut bled(LED3); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 17 | Serial pc(USBTX, USBRX); // tx, rx |
WilliamMarshQMUL | 0:a1caba5c4e48 | 18 | |
WilliamMarshQMUL | 0:a1caba5c4e48 | 19 | |
WilliamMarshQMUL | 0:a1caba5c4e48 | 20 | pc.printf("MMA8451 ID: %d\n", acc.getWhoAmI()); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 21 | |
WilliamMarshQMUL | 0:a1caba5c4e48 | 22 | while (true) { |
WilliamMarshQMUL | 0:a1caba5c4e48 | 23 | float x, y, z; |
WilliamMarshQMUL | 0:a1caba5c4e48 | 24 | x = acc.getAccX(); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 25 | y = acc.getAccY(); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 26 | z = acc.getAccZ(); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 27 | rled = 1.0f - abs(x); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 28 | gled = 1.0f - abs(y); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 29 | bled = 1.0f - abs(z); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 30 | Thread::wait(300); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 31 | pc.printf("X: %1.2f, Y: %1.2f, Z: %1.2f\n", x, y, z); |
WilliamMarshQMUL | 0:a1caba5c4e48 | 32 | } |
WilliamMarshQMUL | 0:a1caba5c4e48 | 33 | } |