Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed Servo mbed-rtos X_NUCLEO_53L0A1
main.cpp@8:68bf94ebf252, 2017-08-07 (annotated)
- Committer:
- johnAlexander
- Date:
- Mon Aug 07 14:50:12 2017 +0000
- Revision:
- 8:68bf94ebf252
- Parent:
- 4:c8932fb926d6
- Child:
- 9:9733cfdb0a18
Use X_Nucleo_53L0A1 released with mbed coding style.
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| johnAlexander | 0:ce8359133ae6 | 1 | #include "mbed.h" | 
| johnAlexander | 0:ce8359133ae6 | 2 | #include "x_nucleo_53l0a1.h" | 
| johnAlexander | 0:ce8359133ae6 | 3 | #include <stdio.h> | 
| johnAlexander | 0:ce8359133ae6 | 4 | |
| johnAlexander | 1:3483e701ec59 | 5 | /* This VL53L0X Expansion board test application performs a range measurement in polling mode | 
| johnAlexander | 4:c8932fb926d6 | 6 | on the onboard embedded top sensor. */ | 
| johnAlexander | 0:ce8359133ae6 | 7 | |
| johnAlexander | 0:ce8359133ae6 | 8 | #define VL53L0_I2C_SDA D14 | 
| johnAlexander | 0:ce8359133ae6 | 9 | #define VL53L0_I2C_SCL D15 | 
| johnAlexander | 0:ce8359133ae6 | 10 | |
| johnAlexander | 0:ce8359133ae6 | 11 | static X_NUCLEO_53L0A1 *board=NULL; | 
| johnAlexander | 1:3483e701ec59 | 12 | |
| johnAlexander | 0:ce8359133ae6 | 13 | |
| johnAlexander | 0:ce8359133ae6 | 14 | /*=================================== Main ================================== | 
| johnAlexander | 0:ce8359133ae6 | 15 | =============================================================================*/ | 
| johnAlexander | 0:ce8359133ae6 | 16 | int main() | 
| johnAlexander | 0:ce8359133ae6 | 17 | { | 
| johnAlexander | 4:c8932fb926d6 | 18 | int status; | 
| johnAlexander | 4:c8932fb926d6 | 19 | uint32_t distance; | 
| johnAlexander | 3:b3f70617a6b3 | 20 | |
| johnAlexander | 8:68bf94ebf252 | 21 | DevI2C *device_i2c = new DevI2C(VL53L0_I2C_SDA, VL53L0_I2C_SCL); | 
| johnAlexander | 4:c8932fb926d6 | 22 | |
| johnAlexander | 4:c8932fb926d6 | 23 | /* creates the 53L0A1 expansion board singleton obj */ | 
| johnAlexander | 8:68bf94ebf252 | 24 | board = X_NUCLEO_53L0A1::Instance(device_i2c, A2, D8, D2); | 
| johnAlexander | 3:b3f70617a6b3 | 25 | |
| johnAlexander | 4:c8932fb926d6 | 26 | /* init the 53L0A1 expansion board with default values */ | 
| johnAlexander | 8:68bf94ebf252 | 27 | status = board->InitBoard(); | 
| johnAlexander | 8:68bf94ebf252 | 28 | if (status) | 
| johnAlexander | 8:68bf94ebf252 | 29 | { | 
| johnAlexander | 8:68bf94ebf252 | 30 | printf("Failed to init board!\n\r"); | 
| johnAlexander | 8:68bf94ebf252 | 31 | return 0; | 
| johnAlexander | 8:68bf94ebf252 | 32 | } | 
| johnAlexander | 4:c8932fb926d6 | 33 | |
| johnAlexander | 8:68bf94ebf252 | 34 | while (1) | 
| johnAlexander | 4:c8932fb926d6 | 35 | { | 
| johnAlexander | 4:c8932fb926d6 | 36 | status = board->sensor_centre->GetDistance(&distance); | 
| johnAlexander | 4:c8932fb926d6 | 37 | if (status == VL53L0X_ERROR_NONE) | 
| johnAlexander | 4:c8932fb926d6 | 38 | printf("Distance : %ld\n", distance); | 
| johnAlexander | 4:c8932fb926d6 | 39 | } | 
| johnAlexander | 0:ce8359133ae6 | 40 | } | 
| johnAlexander | 0:ce8359133ae6 | 41 |