test

Dependencies:   RemoteIR mbed

main.cpp

Committer:
FengjunyanLi
Date:
2017-05-09
Revision:
4:86927e61e1e3
Parent:
3:34a763e93423
Child:
5:5d34a8feffe2

File content as of revision 4:86927e61e1e3:

/**
* 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);
//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;
         

     
     
     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);
         
//         leftMotor.speed(0.4f);
//         rightMotor.speed(-0.3f);

        //serial.printf("start");
         
        // for (int i = 0; i < 3; i++) {
 //           leftMotor.speed(0.15f);
 //           rightMotor.speed(0.15f);
//            rightMotor.dir
            
       //     leftMotor.stop();
        //    rightMotor.stop();
 //           serial.printf("Left Motor speed is at: %f \n", leftMotor.read());    
 //           serial.printf("Right Motor speed is at: %f \n", rightMotor.read());
         //}
         
         
         //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());        
     }
 }