banc test

Dependencies:   BSP_DISCO_F429ZI LCD_DISCO_F429ZI mbed

main.cpp

Committer:
Alex_mln
Date:
2018-03-23
Revision:
1:6defa6d9b3c8
Parent:
0:c5b6d7cd9939

File content as of revision 1:6defa6d9b3c8:

#include "mbed.h"
#include "LCD_DISCO_F429ZI.h"

LCD_DISCO_F429ZI lcd;


AnalogIn bouton1(PF_3); //bouton gauche -> roue droite à accélérer
AnalogIn bouton2(PF_4); //bouton central -> aucune roue à accélérer
AnalogIn bouton3(PF_5); //bouton droit -> roue gauche à accélérer
float buton1, buton2, buton3;
//LEDs correspondent à la vitesse du moteur (droit(1,2) ou gauche(3,4) ou arrêt)

DigitalOut led1(PG_7); //lente gauche
DigitalOut led2(PB_4); //rapide

DigitalOut led3(PA_8); //lente droite
DigitalOut led4(PA_14); //rapide

DigitalOut led5(PC_12); //arrêt



void frequenceLED(int indice){
    if (indice==1){
        led1=!led1;
        }
    else if (indice==2){
        led2=!led2;
        }
    else if (indice==3){
        led3=!led3;
        }
    else if (indice==4){
        led4=!led4;        
        }
}  


    
     
int main(){     
    while(1){ 
//Arrêt
        led1=0;
         led2=0;
         led3=0;
         led4=0;
         led5=1;
        buton1=bouton1.read()*100;
         buton2=bouton2.read()*100;
         buton3=bouton3.read()*100;
         
//Lent    
      //capteur milieu
        while(buton2>95 && buton1<95 && buton3<95){
             led5=0;
             //clignotement normal des deux LEDs lentes
             frequenceLED(1);
             frequenceLED(3);
             wait(0.3);
             buton1=bouton1.read()*100;
         buton2=bouton2.read()*100;
         buton3=bouton3.read()*100;
             } led1=0;
             led3=0;

        //capteur gauche
         while(buton1>95 && buton2<95 && buton2<95){
             led5=0;
             //clignotement normal LED droite
             frequenceLED(3);
             wait(0.3);
             buton1=bouton1.read()*100;
         buton2=bouton2.read()*100;
         buton3=bouton3.read()*100;
        }     led3=0; 
        //capteur droit
         while(buton3>95 && buton1<95 && buton2<95){
             led5=0;
             //clignotement normal LED gauche
             frequenceLED(1);
             wait(0.3);
             buton1=bouton1.read()*100;
         buton2=bouton2.read()*100;
         buton3=bouton3.read()*100;
        }   led1=0;

//Rapide         
        //capteur gauche
         while(buton1>95 && buton2>95 && buton3<95){
             led5=0;
             //clignotement rapide LED gauche
             frequenceLED(3);
             wait(0.1);
              buton1=bouton1.read()*100;
         buton2=bouton2.read()*100;
         buton3=bouton3.read()*100;
         }    led3=0;
        //capteur droit
         while(buton3>95 && buton2>95 && buton1<95){
             led5=0;
             //clignotement rapide LED droite
             frequenceLED(1);
             wait(0.1);
            buton1=bouton1.read()*100;
         buton2=bouton2.read()*100;
         buton3=bouton3.read()*100;
             }    led1=0;
             
           //marche arrière  
           while(buton1>95 && buton2>95 && buton3>95){  
           frequenceLED(2);
           frequenceLED(4);
           wait(0.2);
             buton1=bouton1.read()*100;
         buton2=bouton2.read()*100;
         buton3=bouton3.read()*100;}
         led2=0;
         led4=0;
     }
}