Simple application showing central sensor on X_NUCLEO_53L0A1 expansion board being polled in singleshot mode, to display ranging measure on USB serial.
Dependencies: X_NUCLEO_53L0A1 mbed
Fork of HelloWorld_53L0A1 by
X-Nucleo-53L0A1 Hello World Application
This application provides a simple example of usage of X_NUCLEO_53L0A1 library. It provides a measurement of:
- Distance (millimeters) of an object in front of the on-board sensor.
The values are displayed on the Hyperterminal connected through COM port over USB.
main.cpp
- Committer:
- johnAlexander
- Date:
- 2017-08-07
- Revision:
- 9:9733cfdb0a18
- Parent:
- 7:c8087e7333b8
- Parent:
- 8:68bf94ebf252
- Child:
- 10:891e10d3b4a6
File content as of revision 9:9733cfdb0a18:
#include "mbed.h" #include "x_nucleo_53l0a1.h" #include <stdio.h> /* This VL53L0X Expansion board test application performs a range measurement in polling mode on the onboard embedded top sensor. */ #define VL53L0_I2C_SDA D14 #define VL53L0_I2C_SCL D15 static X_NUCLEO_53L0A1 *board=NULL; /*=================================== Main ================================== =============================================================================*/ int main() { int status; uint32_t distance; DevI2C *device_i2c = new DevI2C(VL53L0_I2C_SDA, VL53L0_I2C_SCL); /* creates the 53L0A1 expansion board singleton obj */ board = X_NUCLEO_53L0A1::instance(device_i2c, A2, D8, D2); /* init the 53L0A1 expansion board with default values */ status = board->init_board(); if (status) { printf("Failed to init board!\n\r"); return 0; } while (1) { status = board->sensor_centre->get_distance(&distance); if (status == VL53L0X_ERROR_NONE) { printf("Distance : %ld\n", distance); } } }