zhouhang shao
/
test
test
main.cpp
- Committer:
- szh66
- Date:
- 2017-05-09
- Revision:
- 5:5d34a8feffe2
- Parent:
- 4:86927e61e1e3
- Child:
- 6:9f698d1b2996
File content as of revision 5:5d34a8feffe2:
/** * This is simple program to test usart with IR sensors. */ #include "mbed.h" #include "IRSensor.h" #include "encoder.h" //#include "motor.h" Serial serial (PA_9, PA_10); IRSensor testIR_RIGHT(PB_0, PA_4); //emmiter and receiver right most sensor IRSensor testIR_LEFT(PA_8, PC_5); //emmiter and receiver left most sensor IRSensor testIR_TOP1(PC_6, PA_7); //emmiter and receiver TOP LEFT sensor IRSensor testIR_TOP2(PB_10, PA_6); //emmiter and receiver TOP RIGHT sensor IRSensor testIR_DIAG_LEFT(PC_7, PC_4); //emmiter and receiver DIAG LEFT sensor IRSensor testIR_DIAG_RIGHT(PB_1, PA_5); //emmiter and receiver DIAG RIGHTsensor DigitalOut testLed(PB_12); DigitalOut testLed2(PB_13); DigitalOut testLed3(PB_14); DigitalOut testLed4(PB_15); AnalogIn Ain(PA_3); AnalogIn gyro(PC_1); DigitalOut gyro_sleep(PC_2); //Motor leftMotor(PB_7, PB_6); //Motor rightMotor(PB_9, PB_8); // pwm PwmOut motor_pwm_left_sig(PB_7); DigitalOut dir_left(PB_6); //// dir PwmOut motor_pwm_right_sig(PB_9); DigitalOut dir_right(PB_8); Encoder leftEncoder(PC_9, PC_8); int main () { serial.printf ("Start Program\n"); //leftMotor = 0.1f; // motor_pwm_left_sig.period(0.001f); // motor_pwm_left_sig.write(0.2f); // motor_pwm_right_sig.period(0.001f); // motor_pwm_right_sig.write(0.6f); // dir_left = 0; // dir_right = 1; // // wait(7); // motor_pwm_right_sig = 0; // dir_right = 0; // motor_pwm_left_sig = 0; //double angle while (1) { testLed2 = 1; testLed3 = 1; wait (0.2); testLed2 = 0; testLed3 = 0; wait (0.2); // serial.printf("Left sensor: %f\r\n", testIR_LEFT.readIR()); // serial.printf("Left Diagnal %f\r\n", testIR_DIAG_LEFT.readIR()); serial.printf("TOP LEFT %f\r\n", testIR_TOP1.readIR()); serial.printf("TOP RIGHT %f\r\n", testIR_TOP2.readIR()); // serial.printf("Right Diagnal %f\r\n", testIR_DIAG_RIGHT.readIR()); // serial.printf("Right sensor: %f\r\n", testIR_RIGHT.readIR()); wait(1); //______________TEST GYRO double offset = .4451; gyro_sleep = 1; double gyro_value = (gyro.read() - offset) * .67 / offset * 600; // Offset of .4455 measured experimentally // angle += gyro_value * .01; wait(.01); serial.printf("Gyro value: %f\r\n", gyro_value); //______________ //serial.printf("voltage value is: %3.3f%%\r\n", Ain.read()*100.0f); //serial.printf("normalized: 0x%04X \r\n", Ain.read_u16()); if(Ain.read() < 0.67f){ testLed = 1; testLed2 = 1; testLed3 = 1; testLed4 = 1; serial.printf("voltage is in danger area, UNPLUG\r\n"); } int dist = getEncoderDistance(); //serial.printf("Encoder %d \r\n", getEncoderDistance()); } }