maze solver

hi
I want to make a maze solver robot, i completed the mechanical and electronical parts but i have somme problems with the code and i need help its actualy works but not perfectly
here is my code if you have any suggestions please help me :slight_smile: :slight_smile: :slight_smile: :slight_smile: thank you

#define VITESSE 343
int emetteur[3]={8,10,12};//le trig et l'echo de l'ultrason
int recepteur[3]={9,11,13};
unsigned long temps[3];
float distance[3];// la distance mesurée par l'ultrason
const int enable1=3;//PIN qui sert a controle la vitesse
const int in1=2;// deux PIN pour la direction
const int in2=4;
const int enable2=5;
const int in3=6;
const int in4=7;
void setup(){
pinMode(in1,OUTPUT);// on definit tous les PIN des moteurs
pinMode(in2,OUTPUT);// comme des sorties
pinMode(enable2,OUTPUT);
pinMode(in3,OUTPUT);
pinMode(in4,OUTPUT);
pinMode(enable1,OUTPUT);
for (int i=0;i<3;i++){
pinMode(emetteur*,OUTPUT);// le trig comme sortie*
_ pinMode(recepteur*,INPUT);// l'echo comme entrée*_
* }*
Serial.begin(9600);// l'objet Seri
}
void loop(){
lecture();
compare();
}
void compare(){
if (distance[0]>17 && distance[1]>8 && distance[2]>8){
* forward();*
* }*
* else if(distance[0]>17 && distance[1]<=distance[2]){*
* gauche();*
* }*
* else if(distance[0]>17 &&distance[2]<=distance[1]){*
* droite();*
* }*

else if (distance[0]<=17 && (distance[2]<distance[1])){

* droite_complet();
_
}*_
else if (distance[0]<=17 && (distance[2]>distance[1])){

* gauche_complet();
_
}_
else {
Stop();
_
}_
_
}_
void lecture(){ // fonction de lecture des données
_
digitalWrite(emetteur[0],HIGH);_
_
delayMicroseconds(10);_
_
digitalWrite(emetteur[0],LOW);_
_
temps[0]=pulseIn(recepteur[0],HIGH,10000);_
_ distance[0]=(temps[0]/2000000.0)VITESSE100;_
_
if (distance[0]==0){_
_
distance[0]=50;_
_
}_
_
Serial.print(distance[0]);_
_
Serial.print(" ");_
_
digitalWrite(emetteur[1],HIGH);_
_
delayMicroseconds(10);_
_
digitalWrite(emetteur[1],LOW);_
_
temps[1]=pulseIn(recepteur[1],HIGH,10000);_
_ distance[1]=(temps[1]/2000000.0)VITESSE100;_
_
if (distance[1]==0){_
_
distance[1]=50;_
_
}_
_
Serial.print(distance[1]);_
_
Serial.print(" ");_
_
digitalWrite(emetteur[2],HIGH);_
_
delayMicroseconds(10);_
_
digitalWrite(emetteur[2],LOW);_
_
temps[2]=pulseIn(recepteur[2],HIGH,10000);_
_ distance[2]=(temps[2]/2000000.0)VITESSE100;_
_
if (distance[2]==0){_
_
distance[2]=60;_
_
}_
_
Serial.print(distance[2]);_
_
Serial.print(" ");_
_
Serial.println("");_
_
}_
void forward(){
_
digitalWrite(in1,HIGH);_
_
digitalWrite(in2,LOW);_
_
analogWrite(enable1,90);_
_
digitalWrite(in3,HIGH);_
_
digitalWrite(in4,LOW);_
_
analogWrite(enable2,120);_
_
}_
void droite(){
_
digitalWrite(in1,HIGH);_
_
digitalWrite(in2,LOW);_
_
analogWrite(enable1,80);_
_
digitalWrite(in3,HIGH);_
_
digitalWrite(in4,LOW);_
_
analogWrite(enable2,180);*_

* }*
* void droite_complet(){
_
digitalWrite(in1,LOW);_
_
digitalWrite(in2,HIGH);_
_
analogWrite(enable1,160);_
_
digitalWrite(in3,HIGH);_
_
digitalWrite(in4,LOW);_
_
analogWrite(enable2,160);_
_
delay(500);_
_
}_
void gauche_complet(){
digitalWrite(in1,HIGH);
_
digitalWrite(in2,LOW);_
_
analogWrite(enable1,160);_
_
digitalWrite(in3,LOW);_
_
digitalWrite(in4,HIGH);_
_
analogWrite(enable2,160);_
_
delay(500);*_

* }*
* void gauche(){*
* digitalWrite(in1,HIGH);*
* digitalWrite(in2,LOW);*
* analogWrite(enable1,130);*
* digitalWrite(in3,HIGH);*
* digitalWrite(in4,LOW);*
* analogWrite(enable2,100);*
* }*
* void Stop(){*
* digitalWrite(in1,HIGH);*
* digitalWrite(in2,HIGH);*
* analogWrite(enable1,0);*
* digitalWrite(in3,HIGH);*
* digitalWrite(in4,HIGH);*
* analogWrite(enable2,0);*
* }*

The compiler doesn't like italics.
Please edit your post and add the [code][/code] tags you left out.

The code you posted does something. You left out what it does.

You have some expectations about what the code should do. You left those out, too.