TDP3 Go-Yeti / Mbed 2 deprecated DontKillMbed

Dependencies:   mbed

main.cpp

Committer:
joankangro
Date:
2016-02-18
Revision:
0:e679a1bb6eca
Child:
1:94577052d858

File content as of revision 0:e679a1bb6eca:

#include "mbed.h"

//Pull everything up
DigitalIn pull1(PTA1);
DigitalIn pull2(PTA2);
DigitalIn pull4(PTA12);
DigitalIn pull5(PTA4);
DigitalIn pull6(PTA5);
DigitalIn pull7(PTC8);

DigitalIn pull9(PTA13);
DigitalIn pull10(PTD5);
DigitalIn pull11(PTD0);
DigitalIn pull12(PTD2);
DigitalIn pull13(PTD3);
DigitalIn pull14(PTD1);
DigitalIn pull15(PTE0);
DigitalIn pull16(PTE1);

DigitalIn pull17(PTC7);
DigitalIn pull18(PTC0);
DigitalIn pull19(PTC3);
DigitalIn pull20(PTC4);

DigitalIn pull21(PTC12);
DigitalIn pull22(PTC13);
DigitalIn pull23(PTC16);
DigitalIn pull24(PTC17);
DigitalIn pull25(PTA16);
DigitalIn pull26(PTA17);
DigitalIn pull27(PTE31);
DigitalIn pull28(PTD6);
DigitalIn pull29(PTD7);

DigitalIn pull30(PTE30);

DigitalIn pull34(PTE21);
DigitalIn pull35(PTE20);

DigitalIn pull38(PTE3);
DigitalIn pull39(PTE2);

DigitalIn pull47(PTB1);
DigitalIn pull48(PTB0);
DigitalIn pull49(PTA20);



//motor driver outputs
DigitalOut IN4(PTC5);
DigitalOut IN3(PTC6);
DigitalOut IN2(PTC10);
DigitalOut IN1(PTC11);
PwmOut ENA(PTC9);
PwmOut ENB(PTD4);

DigitalOut indicator(LED_BLUE);

//constant 3.3 volts for sensors
DigitalOut constant1(PTE5);
DigitalOut constant2(PTE4);

//line following inputs
DigitalIn leftmost(PTE23); 
AnalogIn left(PTC2);
AnalogIn middle(PTB2); 
AnalogIn right(PTB3);
DigitalIn rightmost(PTE22);

//debugging led outputs
DigitalOut ledleftmost(PTE29);
DigitalOut ledright(PTB10);
DigitalOut ledmiddle(PTB11);
DigitalOut ledleft(PTB8);
DigitalOut ledrightmost(PTB9);

int main() {
    
    pull1.mode(PullUp);
    pull2.mode(PullUp);
    //pull3.mode(PullUp);
    pull4.mode(PullUp);
    pull5.mode(PullUp);
    pull6.mode(PullUp);
    pull7.mode(PullUp);
    //pull8.mode(PullUp);
    pull9.mode(PullUp);
    pull10.mode(PullUp);
    pull11.mode(PullUp);
    pull12.mode(PullUp);
    pull13.mode(PullUp);
    pull14.mode(PullUp);
    pull15.mode(PullUp);
    pull16.mode(PullUp);
    pull17.mode(PullUp);
    pull18.mode(PullUp);
    pull19.mode(PullUp);
    pull20.mode(PullUp);
    pull21.mode(PullUp);
    pull22.mode(PullUp);
    pull23.mode(PullUp);
    pull24.mode(PullUp);
    pull25.mode(PullUp);
    pull26.mode(PullUp);
    pull27.mode(PullUp);
    pull28.mode(PullUp);
    pull29.mode(PullUp);
    pull30.mode(PullUp);
    pull34.mode(PullUp);
    pull35.mode(PullUp);
    pull38.mode(PullUp);
    pull39.mode(PullUp);
    pull47.mode(PullUp);
    pull48.mode(PullUp);
    pull49.mode(PullUp);
    
    indicator=1;
    wait(0.3);
    indicator=0;
    wait(0.3);
    indicator=1;
    wait(0.3);
    indicator=0;
    wait(0.3);
    indicator=1;
    
    ENA.period(0.001);
    ENB.period(0.001);
    
    IN1=0;
    IN2=1;
    IN3=0;
    IN4=1;   
    //set inital pwm values for motor driver outputs        
    ENA=0;
    ENB=0;
    
    while(1) {
       
       
       //ENA=0.5;
        //ENB=0.5;
        
        if(middle>0.45){
            ledmiddle=1;    
        }else{
            ledmiddle=0;    
        } 
        
        if(left>0.4){  
            ledleft=1; 
        }else{
            ledleft=0;  
        }
        
        if(right>0.4){  
            ledright=1; 
        }else{
            ledright=0;  
        }
        
        if(leftmost==1){   
            ledleftmost=1;
        }else{
            ledleftmost=0;   
        }
        
        if(rightmost==1){   
            ledrightmost=1;
        }else{
            ledrightmost=0;   
        }
       
       
    }
}