Software for mapping with the Lidar lite v2, stepper motor, and stepper motor driver

Dependencies:   DRV88255 LidarLitev2 MODSERIAL mbed

Committer:
sventura3
Date:
Fri Dec 11 15:51:05 2015 +0000
Revision:
0:8327d88550ab
finished the mapping;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sventura3 0:8327d88550ab 1 #include "LidarLitev2.h"
sventura3 0:8327d88550ab 2 #include "DRV8825.h"
sventura3 0:8327d88550ab 3 #include "MODSERIAL.h"
sventura3 0:8327d88550ab 4 #include "math.h"
sventura3 0:8327d88550ab 5
sventura3 0:8327d88550ab 6 #define PI 3.14159265359
sventura3 0:8327d88550ab 7
sventura3 0:8327d88550ab 8 Serial pc(USBTX, USBRX);
sventura3 0:8327d88550ab 9
sventura3 0:8327d88550ab 10 DRV8825 stpr_mtr(p21, p22, p23, p24, p25, p26);
sventura3 0:8327d88550ab 11 DigitalIn pinMode(p19);
sventura3 0:8327d88550ab 12
sventura3 0:8327d88550ab 13 LidarLitev2 Lidar(p28, p27);
sventura3 0:8327d88550ab 14
sventura3 0:8327d88550ab 15
sventura3 0:8327d88550ab 16 int main()
sventura3 0:8327d88550ab 17 {
sventura3 0:8327d88550ab 18 stpr_mtr.direction = 1;
sventura3 0:8327d88550ab 19 pc.baud(9600);
sventura3 0:8327d88550ab 20 Lidar.configure();
sventura3 0:8327d88550ab 21 //Lidar.beginContinuous();
sventura3 0:8327d88550ab 22 float degree = 0, x, y;
sventura3 0:8327d88550ab 23 int distance;
sventura3 0:8327d88550ab 24 char e;
sventura3 0:8327d88550ab 25 while(1){
sventura3 0:8327d88550ab 26 if(pc.readable()) {
sventura3 0:8327d88550ab 27 e = pc.getc();
sventura3 0:8327d88550ab 28 }
sventura3 0:8327d88550ab 29 while (e == 'e'){
sventura3 0:8327d88550ab 30 //if(!pinMode) { //Check if the lidar is pulling low
sventura3 0:8327d88550ab 31 distance = Lidar.distance();
sventura3 0:8327d88550ab 32 x = distance*cos(degree*(PI/180));
sventura3 0:8327d88550ab 33 y = distance*sin(degree*(PI/180));
sventura3 0:8327d88550ab 34 stpr_mtr.settings(1, 0, 400);
sventura3 0:8327d88550ab 35 degree += .45;
sventura3 0:8327d88550ab 36 if(degree >= 360) degree = 0;
sventura3 0:8327d88550ab 37 //pc.printf("%4d,%4.0f\n", distance, degree);
sventura3 0:8327d88550ab 38 pc.printf("%4.0f,%4.0f\n", x, y);
sventura3 0:8327d88550ab 39 //}
sventura3 0:8327d88550ab 40 if(pc.readable()) {
sventura3 0:8327d88550ab 41 e = pc.getc();
sventura3 0:8327d88550ab 42 }
sventura3 0:8327d88550ab 43 if (e == 's') break;
sventura3 0:8327d88550ab 44 }
sventura3 0:8327d88550ab 45 }
sventura3 0:8327d88550ab 46 }