d
Dependencies: Motor Servo mbed
main.cpp@0:1f5a1332637b, 2017-04-21 (annotated)
- Committer:
- iemretep
- Date:
- Fri Apr 21 04:03:52 2017 +0000
- Revision:
- 0:1f5a1332637b
Robot;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
iemretep | 0:1f5a1332637b | 1 | #include "mbed.h" |
iemretep | 0:1f5a1332637b | 2 | #include "Motor.h" |
iemretep | 0:1f5a1332637b | 3 | #include "Servo.h" |
iemretep | 0:1f5a1332637b | 4 | //Reads in joystick positions from controller and drives the motors. |
iemretep | 0:1f5a1332637b | 5 | |
iemretep | 0:1f5a1332637b | 6 | DigitalOut led1(LED1); |
iemretep | 0:1f5a1332637b | 7 | DigitalOut led2(LED2); |
iemretep | 0:1f5a1332637b | 8 | DigitalOut led3(LED3); |
iemretep | 0:1f5a1332637b | 9 | DigitalOut led4(LED4); |
iemretep | 0:1f5a1332637b | 10 | |
iemretep | 0:1f5a1332637b | 11 | AnalogIn jx1(p16); |
iemretep | 0:1f5a1332637b | 12 | AnalogIn jy1(p15); |
iemretep | 0:1f5a1332637b | 13 | //AnalogIn jx2 |
iemretep | 0:1f5a1332637b | 14 | //AnalogIn jy2 |
iemretep | 0:1f5a1332637b | 15 | float mot_x = 0.5; |
iemretep | 0:1f5a1332637b | 16 | float mot_y = 0.5; |
iemretep | 0:1f5a1332637b | 17 | float cam_x = 0; |
iemretep | 0:1f5a1332637b | 18 | float cam_y = 0; |
iemretep | 0:1f5a1332637b | 19 | |
iemretep | 0:1f5a1332637b | 20 | char buf[32]; |
iemretep | 0:1f5a1332637b | 21 | int idx = 0; |
iemretep | 0:1f5a1332637b | 22 | |
iemretep | 0:1f5a1332637b | 23 | Serial pc(p9,p10); |
iemretep | 0:1f5a1332637b | 24 | //Serial pc(USBTX, USBRX); |
iemretep | 0:1f5a1332637b | 25 | |
iemretep | 0:1f5a1332637b | 26 | Motor A(p21, p20, p19); //pwm, inB, inA |
iemretep | 0:1f5a1332637b | 27 | Motor B(p22, p17, p12); //pwm, inA, inB |
iemretep | 0:1f5a1332637b | 28 | |
iemretep | 0:1f5a1332637b | 29 | |
iemretep | 0:1f5a1332637b | 30 | int main() |
iemretep | 0:1f5a1332637b | 31 | { |
iemretep | 0:1f5a1332637b | 32 | pc.baud(115200); |
iemretep | 0:1f5a1332637b | 33 | while(1) { |
iemretep | 0:1f5a1332637b | 34 | int x = pc.getc(); |
iemretep | 0:1f5a1332637b | 35 | |
iemretep | 0:1f5a1332637b | 36 | if(x == -1) continue; |
iemretep | 0:1f5a1332637b | 37 | |
iemretep | 0:1f5a1332637b | 38 | //while(!pc.readable()); |
iemretep | 0:1f5a1332637b | 39 | buf[idx] = (char)x; |
iemretep | 0:1f5a1332637b | 40 | |
iemretep | 0:1f5a1332637b | 41 | if(buf[idx] == '\r' || buf[idx] == '\n'){ |
iemretep | 0:1f5a1332637b | 42 | sscanf(buf, "%f %f %f %f", &mot_x, &mot_y, &cam_x, &cam_y); |
iemretep | 0:1f5a1332637b | 43 | A.speed(mot_x); |
iemretep | 0:1f5a1332637b | 44 | B.speed(mot_y); |
iemretep | 0:1f5a1332637b | 45 | idx = 0; |
iemretep | 0:1f5a1332637b | 46 | }else{ |
iemretep | 0:1f5a1332637b | 47 | idx++; |
iemretep | 0:1f5a1332637b | 48 | } |
iemretep | 0:1f5a1332637b | 49 | } |
iemretep | 0:1f5a1332637b | 50 | } |