LDSC
Dependencies: mbed X_NUCLEO_53L0A1
main.cpp@0:f2b009f88786, 2019-10-09 (annotated)
- Committer:
- jkjk010695
- Date:
- Wed Oct 09 08:02:23 2019 +0000
- Revision:
- 0:f2b009f88786
LDSC
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jkjk010695 | 0:f2b009f88786 | 1 | #include "mbed.h" |
jkjk010695 | 0:f2b009f88786 | 2 | #include "XNucleo53L0A1.h" |
jkjk010695 | 0:f2b009f88786 | 3 | #include <stdio.h> |
jkjk010695 | 0:f2b009f88786 | 4 | |
jkjk010695 | 0:f2b009f88786 | 5 | /* This VL53L0X Expansion board test application performs a range measurement in polling mode |
jkjk010695 | 0:f2b009f88786 | 6 | on the onboard embedded top sensor. */ |
jkjk010695 | 0:f2b009f88786 | 7 | |
jkjk010695 | 0:f2b009f88786 | 8 | #define VL53L0_I2C_SDA D14 |
jkjk010695 | 0:f2b009f88786 | 9 | #define VL53L0_I2C_SCL D15 |
jkjk010695 | 0:f2b009f88786 | 10 | DigitalOut XSHUT(D7); |
jkjk010695 | 0:f2b009f88786 | 11 | static XNucleo53L0A1 *board=NULL; |
jkjk010695 | 0:f2b009f88786 | 12 | |
jkjk010695 | 0:f2b009f88786 | 13 | |
jkjk010695 | 0:f2b009f88786 | 14 | /*=================================== Main ================================== |
jkjk010695 | 0:f2b009f88786 | 15 | =============================================================================*/ |
jkjk010695 | 0:f2b009f88786 | 16 | int main() |
jkjk010695 | 0:f2b009f88786 | 17 | { |
jkjk010695 | 0:f2b009f88786 | 18 | int status; |
jkjk010695 | 0:f2b009f88786 | 19 | uint32_t distance; |
jkjk010695 | 0:f2b009f88786 | 20 | |
jkjk010695 | 0:f2b009f88786 | 21 | XSHUT = 1; |
jkjk010695 | 0:f2b009f88786 | 22 | |
jkjk010695 | 0:f2b009f88786 | 23 | DevI2C *device_i2c = new DevI2C(VL53L0_I2C_SDA, VL53L0_I2C_SCL); |
jkjk010695 | 0:f2b009f88786 | 24 | |
jkjk010695 | 0:f2b009f88786 | 25 | /* creates the 53L0A1 expansion board singleton obj */ |
jkjk010695 | 0:f2b009f88786 | 26 | board = XNucleo53L0A1::instance(device_i2c, A2, D8, D2); |
jkjk010695 | 0:f2b009f88786 | 27 | |
jkjk010695 | 0:f2b009f88786 | 28 | /* init the 53L0A1 expansion board with default values */ |
jkjk010695 | 0:f2b009f88786 | 29 | status = board->init_board(); |
jkjk010695 | 0:f2b009f88786 | 30 | if (status) { |
jkjk010695 | 0:f2b009f88786 | 31 | printf("Failed to init board!\r\n"); |
jkjk010695 | 0:f2b009f88786 | 32 | return 0; |
jkjk010695 | 0:f2b009f88786 | 33 | } |
jkjk010695 | 0:f2b009f88786 | 34 | |
jkjk010695 | 0:f2b009f88786 | 35 | while (1) { |
jkjk010695 | 0:f2b009f88786 | 36 | status = board->sensor_centre->get_distance(&distance); |
jkjk010695 | 0:f2b009f88786 | 37 | if (status == VL53L0X_ERROR_NONE) { |
jkjk010695 | 0:f2b009f88786 | 38 | printf("Distance : %ld\r\n", distance); |
jkjk010695 | 0:f2b009f88786 | 39 | } |
jkjk010695 | 0:f2b009f88786 | 40 | } |
jkjk010695 | 0:f2b009f88786 | 41 | } |