Program to read LIDAR values using I2C and send UART messages using UART 2 & UART 3
Dependencies: mbed LidarLitev2
main.cpp@1:89b49ebbe3db, 2019-03-28 (annotated)
- Committer:
- rajas1812
- Date:
- Thu Mar 28 02:54:00 2019 +0000
- Revision:
- 1:89b49ebbe3db
- Parent:
- 0:ee825cd264b6
Sense distance from LIDAR using I2C ; Used UART 2 & UART 3
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
agaikwad | 0:ee825cd264b6 | 1 | #include "LidarLitev2.h" |
agaikwad | 0:ee825cd264b6 | 2 | |
agaikwad | 0:ee825cd264b6 | 3 | |
agaikwad | 0:ee825cd264b6 | 4 | LidarLitev2 Lidar(PTE25, PTE24); |
rajas1812 | 1:89b49ebbe3db | 5 | Serial pc(USBTX,USBRX); //UART0 |
rajas1812 | 1:89b49ebbe3db | 6 | Serial device(PTC17, PTC16); //UART3 |
rajas1812 | 1:89b49ebbe3db | 7 | Serial kw41z(PTD3, PTD2); //UART2 |
rajas1812 | 1:89b49ebbe3db | 8 | |
rajas1812 | 1:89b49ebbe3db | 9 | int counter = 0; |
agaikwad | 0:ee825cd264b6 | 10 | |
agaikwad | 0:ee825cd264b6 | 11 | Timer dt; |
agaikwad | 0:ee825cd264b6 | 12 | |
agaikwad | 0:ee825cd264b6 | 13 | int main() |
agaikwad | 0:ee825cd264b6 | 14 | { |
agaikwad | 0:ee825cd264b6 | 15 | |
agaikwad | 0:ee825cd264b6 | 16 | pc.baud(115200); |
agaikwad | 0:ee825cd264b6 | 17 | device.baud(115200); |
rajas1812 | 1:89b49ebbe3db | 18 | kw41z.baud(115200); |
agaikwad | 0:ee825cd264b6 | 19 | Lidar.configure(); |
agaikwad | 0:ee825cd264b6 | 20 | dt.start(); |
agaikwad | 0:ee825cd264b6 | 21 | |
agaikwad | 0:ee825cd264b6 | 22 | while(1){ |
agaikwad | 0:ee825cd264b6 | 23 | pc.printf( "distance =%d cm\t",Lidar.distance()); |
agaikwad | 0:ee825cd264b6 | 24 | //device.printf( "%d" ,Lidar.distance()); |
agaikwad | 0:ee825cd264b6 | 25 | //int temp=Lidar.distance(); |
agaikwad | 0:ee825cd264b6 | 26 | wait_ms(500); |
agaikwad | 0:ee825cd264b6 | 27 | //pc.printf("%d\n",temp); |
agaikwad | 0:ee825cd264b6 | 28 | |
agaikwad | 0:ee825cd264b6 | 29 | dt.reset(); |
rajas1812 | 1:89b49ebbe3db | 30 | if(Lidar.distance()>1 and Lidar.distance()<=15) |
agaikwad | 0:ee825cd264b6 | 31 | { |
agaikwad | 0:ee825cd264b6 | 32 | device.printf("1"); |
rajas1812 | 1:89b49ebbe3db | 33 | //kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r255 g0 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 34 | pc.printf("case: 1\r\n"); |
rajas1812 | 1:89b49ebbe3db | 35 | if (counter == 0){ |
rajas1812 | 1:89b49ebbe3db | 36 | kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r255 g0 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 37 | counter = 1; |
rajas1812 | 1:89b49ebbe3db | 38 | } |
agaikwad | 0:ee825cd264b6 | 39 | } |
agaikwad | 0:ee825cd264b6 | 40 | |
rajas1812 | 1:89b49ebbe3db | 41 | else if(Lidar.distance()>15 and Lidar.distance()<=60) |
agaikwad | 0:ee825cd264b6 | 42 | { |
rajas1812 | 1:89b49ebbe3db | 43 | device.printf("2"); |
rajas1812 | 1:89b49ebbe3db | 44 | pc.printf("case: 2\r\n"); |
rajas1812 | 1:89b49ebbe3db | 45 | if (counter == 0){ |
rajas1812 | 1:89b49ebbe3db | 46 | kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r255 g0 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 47 | counter = 1; |
rajas1812 | 1:89b49ebbe3db | 48 | } |
agaikwad | 0:ee825cd264b6 | 49 | } |
rajas1812 | 1:89b49ebbe3db | 50 | else if(Lidar.distance()>60 and Lidar.distance()<=120) |
agaikwad | 0:ee825cd264b6 | 51 | { |
agaikwad | 0:ee825cd264b6 | 52 | device.printf("3"); |
rajas1812 | 1:89b49ebbe3db | 53 | //kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r0 g255 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 54 | pc.printf("case: 3\r\n"); |
rajas1812 | 1:89b49ebbe3db | 55 | if (counter == 1) { |
rajas1812 | 1:89b49ebbe3db | 56 | kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r0 g255 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 57 | counter = 0; |
rajas1812 | 1:89b49ebbe3db | 58 | } |
agaikwad | 0:ee825cd264b6 | 59 | } |
rajas1812 | 1:89b49ebbe3db | 60 | else if(Lidar.distance()>120 and Lidar.distance()<=180) |
agaikwad | 0:ee825cd264b6 | 61 | { |
rajas1812 | 1:89b49ebbe3db | 62 | device.printf("4"); |
rajas1812 | 1:89b49ebbe3db | 63 | //kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r0 g255 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 64 | pc.printf("case: 4\r\n"); |
rajas1812 | 1:89b49ebbe3db | 65 | if (counter == 1) { |
rajas1812 | 1:89b49ebbe3db | 66 | kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r0 g255 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 67 | counter = 0; |
rajas1812 | 1:89b49ebbe3db | 68 | } |
agaikwad | 0:ee825cd264b6 | 69 | } |
rajas1812 | 1:89b49ebbe3db | 70 | else if(Lidar.distance()>180) |
agaikwad | 0:ee825cd264b6 | 71 | { |
agaikwad | 0:ee825cd264b6 | 72 | device.printf("5"); |
rajas1812 | 1:89b49ebbe3db | 73 | //kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r0 g255 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 74 | pc.printf("case: 5\r\n"); |
rajas1812 | 1:89b49ebbe3db | 75 | if (counter == 1) { |
rajas1812 | 1:89b49ebbe3db | 76 | kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r0 g255 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 77 | counter = 0; |
rajas1812 | 1:89b49ebbe3db | 78 | } |
agaikwad | 0:ee825cd264b6 | 79 | } |
agaikwad | 0:ee825cd264b6 | 80 | else |
agaikwad | 0:ee825cd264b6 | 81 | { |
agaikwad | 0:ee825cd264b6 | 82 | device.printf("0"); |
rajas1812 | 1:89b49ebbe3db | 83 | //kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r0 g255 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 84 | pc.printf("case: 0\r\n"); |
rajas1812 | 1:89b49ebbe3db | 85 | if (counter == 0) { |
rajas1812 | 1:89b49ebbe3db | 86 | kw41z.printf("coap CON POST fd18:16b7:2982:2c23:d07c:a5c0:a751:5e10 /led rgb r255 g0 b0\n"); |
rajas1812 | 1:89b49ebbe3db | 87 | counter = 1; |
rajas1812 | 1:89b49ebbe3db | 88 | } |
agaikwad | 0:ee825cd264b6 | 89 | } |
agaikwad | 0:ee825cd264b6 | 90 | |
agaikwad | 0:ee825cd264b6 | 91 | } |
agaikwad | 0:ee825cd264b6 | 92 | } |