Lu-Hsuan Chen
/
autocar_3sensor_mbed
An auto car with 3 IR sensors.
autocar/autocar.h@12:e95ed962be7a, 2018-06-30 (annotated)
- Committer:
- cudaChen
- Date:
- Sat Jun 30 13:08:00 2018 +0000
- Revision:
- 12:e95ed962be7a
- Child:
- 13:87cd0ae37e06
create library-like feature (unfinished)
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
cudaChen | 12:e95ed962be7a | 1 | #ifndef AUTOCAR_H |
cudaChen | 12:e95ed962be7a | 2 | #define AUTOCAR_H |
cudaChen | 12:e95ed962be7a | 3 | |
cudaChen | 12:e95ed962be7a | 4 | #include "mbed.h" |
cudaChen | 12:e95ed962be7a | 5 | |
cudaChen | 12:e95ed962be7a | 6 | // used for motor |
cudaChen | 12:e95ed962be7a | 7 | //AnalogOut M1_enable(D6); |
cudaChen | 12:e95ed962be7a | 8 | //AnalogOut M2_enable(D5); |
cudaChen | 12:e95ed962be7a | 9 | /*DigitalOut M1_enable(D6); |
cudaChen | 12:e95ed962be7a | 10 | DigitalOut M2_enable(D5); |
cudaChen | 12:e95ed962be7a | 11 | DigitalOut M1_in1(D3); |
cudaChen | 12:e95ed962be7a | 12 | DigitalOut M1_in2(D2); |
cudaChen | 12:e95ed962be7a | 13 | DigitalOut M2_in3(D1); |
cudaChen | 12:e95ed962be7a | 14 | DigitalOut M2_in4(D0); |
cudaChen | 12:e95ed962be7a | 15 | const int MOTOR_M1 = 0; |
cudaChen | 12:e95ed962be7a | 16 | const int MOTOR_M2 = 1; |
cudaChen | 12:e95ed962be7a | 17 | const int DIR_FORWARD = 0; |
cudaChen | 12:e95ed962be7a | 18 | const int DIR_BACKWARD = 1; |
cudaChen | 12:e95ed962be7a | 19 | const int PWR_STOP = 0;*/ |
cudaChen | 12:e95ed962be7a | 20 | |
cudaChen | 12:e95ed962be7a | 21 | // used for IR sensors |
cudaChen | 12:e95ed962be7a | 22 | /*AnalogIn leftIR(A1); |
cudaChen | 12:e95ed962be7a | 23 | AnalogIn middleIR(A3); |
cudaChen | 12:e95ed962be7a | 24 | AnalogIn rightIR(A5);*/ |
cudaChen | 12:e95ed962be7a | 25 | void readIR(bool* left, bool* middle, bool* right, int threshold); |
cudaChen | 12:e95ed962be7a | 26 | |
cudaChen | 12:e95ed962be7a | 27 | long map(long x, long in_min, long in_max, long out_min, long out_max); |
cudaChen | 12:e95ed962be7a | 28 | |
cudaChen | 12:e95ed962be7a | 29 | // used for controlling the direction of auto car |
cudaChen | 12:e95ed962be7a | 30 | void DriveSingleMotor(int m, int speed, int dir); |
cudaChen | 12:e95ed962be7a | 31 | void driveMotor(bool left, bool middle, bool right); |
cudaChen | 12:e95ed962be7a | 32 | void init(); |
cudaChen | 12:e95ed962be7a | 33 | void forward(); |
cudaChen | 12:e95ed962be7a | 34 | void turnLeft(); |
cudaChen | 12:e95ed962be7a | 35 | void turnRight(); |
cudaChen | 12:e95ed962be7a | 36 | |
cudaChen | 12:e95ed962be7a | 37 | #endif |