banc test

Dependencies:   BSP_DISCO_F429ZI LCD_DISCO_F429ZI mbed

Committer:
Alex_mln
Date:
Fri Mar 23 06:41:39 2018 +0000
Revision:
1:6defa6d9b3c8
Parent:
0:c5b6d7cd9939
Programme op

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RpzEnsea4ever 0:c5b6d7cd9939 1 #include "mbed.h"
RpzEnsea4ever 0:c5b6d7cd9939 2 #include "LCD_DISCO_F429ZI.h"
RpzEnsea4ever 0:c5b6d7cd9939 3
RpzEnsea4ever 0:c5b6d7cd9939 4 LCD_DISCO_F429ZI lcd;
RpzEnsea4ever 0:c5b6d7cd9939 5
RpzEnsea4ever 0:c5b6d7cd9939 6
Alex_mln 1:6defa6d9b3c8 7 AnalogIn bouton1(PF_3); //bouton gauche -> roue droite à accélérer
Alex_mln 1:6defa6d9b3c8 8 AnalogIn bouton2(PF_4); //bouton central -> aucune roue à accélérer
Alex_mln 1:6defa6d9b3c8 9 AnalogIn bouton3(PF_5); //bouton droit -> roue gauche à accélérer
Alex_mln 1:6defa6d9b3c8 10 float buton1, buton2, buton3;
RpzEnsea4ever 0:c5b6d7cd9939 11 //LEDs correspondent à la vitesse du moteur (droit(1,2) ou gauche(3,4) ou arrêt)
RpzEnsea4ever 0:c5b6d7cd9939 12
Alex_mln 1:6defa6d9b3c8 13 DigitalOut led1(PG_7); //lente gauche
Alex_mln 1:6defa6d9b3c8 14 DigitalOut led2(PB_4); //rapide
RpzEnsea4ever 0:c5b6d7cd9939 15
Alex_mln 1:6defa6d9b3c8 16 DigitalOut led3(PA_8); //lente droite
RpzEnsea4ever 0:c5b6d7cd9939 17 DigitalOut led4(PA_14); //rapide
RpzEnsea4ever 0:c5b6d7cd9939 18
RpzEnsea4ever 0:c5b6d7cd9939 19 DigitalOut led5(PC_12); //arrêt
RpzEnsea4ever 0:c5b6d7cd9939 20
RpzEnsea4ever 0:c5b6d7cd9939 21
RpzEnsea4ever 0:c5b6d7cd9939 22
RpzEnsea4ever 0:c5b6d7cd9939 23 void frequenceLED(int indice){
RpzEnsea4ever 0:c5b6d7cd9939 24 if (indice==1){
RpzEnsea4ever 0:c5b6d7cd9939 25 led1=!led1;
RpzEnsea4ever 0:c5b6d7cd9939 26 }
RpzEnsea4ever 0:c5b6d7cd9939 27 else if (indice==2){
RpzEnsea4ever 0:c5b6d7cd9939 28 led2=!led2;
RpzEnsea4ever 0:c5b6d7cd9939 29 }
RpzEnsea4ever 0:c5b6d7cd9939 30 else if (indice==3){
RpzEnsea4ever 0:c5b6d7cd9939 31 led3=!led3;
RpzEnsea4ever 0:c5b6d7cd9939 32 }
RpzEnsea4ever 0:c5b6d7cd9939 33 else if (indice==4){
RpzEnsea4ever 0:c5b6d7cd9939 34 led4=!led4;
RpzEnsea4ever 0:c5b6d7cd9939 35 }
RpzEnsea4ever 0:c5b6d7cd9939 36 }
Alex_mln 1:6defa6d9b3c8 37
Alex_mln 1:6defa6d9b3c8 38
RpzEnsea4ever 0:c5b6d7cd9939 39
Alex_mln 1:6defa6d9b3c8 40
RpzEnsea4ever 0:c5b6d7cd9939 41 int main(){
RpzEnsea4ever 0:c5b6d7cd9939 42 while(1){
RpzEnsea4ever 0:c5b6d7cd9939 43 //Arrêt
Alex_mln 1:6defa6d9b3c8 44 led1=0;
RpzEnsea4ever 0:c5b6d7cd9939 45 led2=0;
RpzEnsea4ever 0:c5b6d7cd9939 46 led3=0;
RpzEnsea4ever 0:c5b6d7cd9939 47 led4=0;
RpzEnsea4ever 0:c5b6d7cd9939 48 led5=1;
Alex_mln 1:6defa6d9b3c8 49 buton1=bouton1.read()*100;
Alex_mln 1:6defa6d9b3c8 50 buton2=bouton2.read()*100;
Alex_mln 1:6defa6d9b3c8 51 buton3=bouton3.read()*100;
Alex_mln 1:6defa6d9b3c8 52
RpzEnsea4ever 0:c5b6d7cd9939 53 //Lent
Alex_mln 1:6defa6d9b3c8 54 //capteur milieu
Alex_mln 1:6defa6d9b3c8 55 while(buton2>95 && buton1<95 && buton3<95){
RpzEnsea4ever 0:c5b6d7cd9939 56 led5=0;
RpzEnsea4ever 0:c5b6d7cd9939 57 //clignotement normal des deux LEDs lentes
RpzEnsea4ever 0:c5b6d7cd9939 58 frequenceLED(1);
RpzEnsea4ever 0:c5b6d7cd9939 59 frequenceLED(3);
RpzEnsea4ever 0:c5b6d7cd9939 60 wait(0.3);
Alex_mln 1:6defa6d9b3c8 61 buton1=bouton1.read()*100;
Alex_mln 1:6defa6d9b3c8 62 buton2=bouton2.read()*100;
Alex_mln 1:6defa6d9b3c8 63 buton3=bouton3.read()*100;
Alex_mln 1:6defa6d9b3c8 64 } led1=0;
Alex_mln 1:6defa6d9b3c8 65 led3=0;
RpzEnsea4ever 0:c5b6d7cd9939 66
RpzEnsea4ever 0:c5b6d7cd9939 67 //capteur gauche
Alex_mln 1:6defa6d9b3c8 68 while(buton1>95 && buton2<95 && buton2<95){
RpzEnsea4ever 0:c5b6d7cd9939 69 led5=0;
RpzEnsea4ever 0:c5b6d7cd9939 70 //clignotement normal LED droite
RpzEnsea4ever 0:c5b6d7cd9939 71 frequenceLED(3);
RpzEnsea4ever 0:c5b6d7cd9939 72 wait(0.3);
Alex_mln 1:6defa6d9b3c8 73 buton1=bouton1.read()*100;
Alex_mln 1:6defa6d9b3c8 74 buton2=bouton2.read()*100;
Alex_mln 1:6defa6d9b3c8 75 buton3=bouton3.read()*100;
Alex_mln 1:6defa6d9b3c8 76 } led3=0;
RpzEnsea4ever 0:c5b6d7cd9939 77 //capteur droit
Alex_mln 1:6defa6d9b3c8 78 while(buton3>95 && buton1<95 && buton2<95){
RpzEnsea4ever 0:c5b6d7cd9939 79 led5=0;
RpzEnsea4ever 0:c5b6d7cd9939 80 //clignotement normal LED gauche
RpzEnsea4ever 0:c5b6d7cd9939 81 frequenceLED(1);
RpzEnsea4ever 0:c5b6d7cd9939 82 wait(0.3);
Alex_mln 1:6defa6d9b3c8 83 buton1=bouton1.read()*100;
Alex_mln 1:6defa6d9b3c8 84 buton2=bouton2.read()*100;
Alex_mln 1:6defa6d9b3c8 85 buton3=bouton3.read()*100;
Alex_mln 1:6defa6d9b3c8 86 } led1=0;
RpzEnsea4ever 0:c5b6d7cd9939 87
Alex_mln 1:6defa6d9b3c8 88 //Rapide
RpzEnsea4ever 0:c5b6d7cd9939 89 //capteur gauche
Alex_mln 1:6defa6d9b3c8 90 while(buton1>95 && buton2>95 && buton3<95){
RpzEnsea4ever 0:c5b6d7cd9939 91 led5=0;
RpzEnsea4ever 0:c5b6d7cd9939 92 //clignotement rapide LED gauche
Alex_mln 1:6defa6d9b3c8 93 frequenceLED(3);
RpzEnsea4ever 0:c5b6d7cd9939 94 wait(0.1);
Alex_mln 1:6defa6d9b3c8 95 buton1=bouton1.read()*100;
Alex_mln 1:6defa6d9b3c8 96 buton2=bouton2.read()*100;
Alex_mln 1:6defa6d9b3c8 97 buton3=bouton3.read()*100;
Alex_mln 1:6defa6d9b3c8 98 } led3=0;
RpzEnsea4ever 0:c5b6d7cd9939 99 //capteur droit
Alex_mln 1:6defa6d9b3c8 100 while(buton3>95 && buton2>95 && buton1<95){
RpzEnsea4ever 0:c5b6d7cd9939 101 led5=0;
RpzEnsea4ever 0:c5b6d7cd9939 102 //clignotement rapide LED droite
Alex_mln 1:6defa6d9b3c8 103 frequenceLED(1);
RpzEnsea4ever 0:c5b6d7cd9939 104 wait(0.1);
Alex_mln 1:6defa6d9b3c8 105 buton1=bouton1.read()*100;
Alex_mln 1:6defa6d9b3c8 106 buton2=bouton2.read()*100;
Alex_mln 1:6defa6d9b3c8 107 buton3=bouton3.read()*100;
Alex_mln 1:6defa6d9b3c8 108 } led1=0;
Alex_mln 1:6defa6d9b3c8 109
Alex_mln 1:6defa6d9b3c8 110 //marche arrière
Alex_mln 1:6defa6d9b3c8 111 while(buton1>95 && buton2>95 && buton3>95){
Alex_mln 1:6defa6d9b3c8 112 frequenceLED(2);
Alex_mln 1:6defa6d9b3c8 113 frequenceLED(4);
Alex_mln 1:6defa6d9b3c8 114 wait(0.2);
Alex_mln 1:6defa6d9b3c8 115 buton1=bouton1.read()*100;
Alex_mln 1:6defa6d9b3c8 116 buton2=bouton2.read()*100;
Alex_mln 1:6defa6d9b3c8 117 buton3=bouton3.read()*100;}
Alex_mln 1:6defa6d9b3c8 118 led2=0;
Alex_mln 1:6defa6d9b3c8 119 led4=0;
RpzEnsea4ever 0:c5b6d7cd9939 120 }
RpzEnsea4ever 0:c5b6d7cd9939 121 }
RpzEnsea4ever 0:c5b6d7cd9939 122