Basic example showing how to use the Compass (LSM303 device with Accelerometer and Magnetometer) present on DISCO_L476VG board.
Dependencies: BSP_DISCO_L476VG COMPASS_DISCO_L476VG
main.cpp@0:211cb2effe6e, 2015-09-22 (annotated)
- Committer:
- bcostm
- Date:
- Tue Sep 22 14:53:48 2015 +0000
- Revision:
- 0:211cb2effe6e
- Child:
- 4:875e95338f6d
Initial version.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bcostm | 0:211cb2effe6e | 1 | #include "mbed.h" |
bcostm | 0:211cb2effe6e | 2 | #include "COMPASS_DISCO_L476VG.h" |
bcostm | 0:211cb2effe6e | 3 | |
bcostm | 0:211cb2effe6e | 4 | COMPASS_DISCO_L476VG compass; |
bcostm | 0:211cb2effe6e | 5 | |
bcostm | 0:211cb2effe6e | 6 | DigitalOut led1(LED1); |
bcostm | 0:211cb2effe6e | 7 | |
bcostm | 0:211cb2effe6e | 8 | int main() |
bcostm | 0:211cb2effe6e | 9 | { |
bcostm | 0:211cb2effe6e | 10 | int16_t MagBuffer[3]; |
bcostm | 0:211cb2effe6e | 11 | int16_t AccBuffer[3]; |
bcostm | 0:211cb2effe6e | 12 | |
bcostm | 0:211cb2effe6e | 13 | printf("Compass started\n"); |
bcostm | 0:211cb2effe6e | 14 | |
bcostm | 0:211cb2effe6e | 15 | while(1) { |
bcostm | 0:211cb2effe6e | 16 | |
bcostm | 0:211cb2effe6e | 17 | // Read acceleremoter and magnetometer values |
bcostm | 0:211cb2effe6e | 18 | compass.AccGetXYZ(AccBuffer); |
bcostm | 0:211cb2effe6e | 19 | compass.MagGetXYZ(MagBuffer); |
bcostm | 0:211cb2effe6e | 20 | // Display values |
bcostm | 0:211cb2effe6e | 21 | printf("Acc X = %d\n", AccBuffer[0]); |
bcostm | 0:211cb2effe6e | 22 | printf("Acc Y = %d\n", AccBuffer[1]); |
bcostm | 0:211cb2effe6e | 23 | printf("Acc Z = %d\n", AccBuffer[2]); |
bcostm | 0:211cb2effe6e | 24 | printf("Mag X = %d\n", MagBuffer[0]); |
bcostm | 0:211cb2effe6e | 25 | printf("Mag Y = %d\n", MagBuffer[1]); |
bcostm | 0:211cb2effe6e | 26 | printf("Mag Z = %d\n", MagBuffer[2]); |
bcostm | 0:211cb2effe6e | 27 | printf("\033[6A"); // Moves cursor up x lines (x value is between [ and A) |
bcostm | 0:211cb2effe6e | 28 | |
bcostm | 0:211cb2effe6e | 29 | led1 = !led1; |
bcostm | 0:211cb2effe6e | 30 | wait(1); |
bcostm | 0:211cb2effe6e | 31 | } |
bcostm | 0:211cb2effe6e | 32 | } |