QUAND j'utilise ce code j'ai qu'un seul moteur qui fonctionne et non les 2:
const int trigPin_droit = A3; // Trigger (emission)
const int echoPin_droit = A4; // Echo (réception)
const int trigPin_gauche = 5; // Trigger (emission)
const int echoPin_gauche = 6; // Echo (réception)
const int motor_gauchePin2 = 2; // pin 2 du L293D
const int motor_gauchePin4 = 4; // pin 4 du L293D
const int enable_gauchePin10 = 10; // pin (Enable)du L293D
const int motor_droitPin3= 3; // pin 3 du L293D
const int motor_droitPin1 = 1; // pin 1 du L293D
const int enable_droitPin11 = 11; // pin (Enable)du L293D
// Variables
long duree_droit; // durée de l'echo
int distance_droit; // distance
long duree_gauche; // durée de l'echo
int distance_gauche; // distance
void setup() {
pinMode(trigPin_droit, OUTPUT); // Configuration du port du Trigger comme une SORTIE
pinMode(echoPin_droit, INPUT); // Configuration du port de l'Echo comme une ENTREE
digitalWrite(trigPin_droit, LOW);
digitalWrite(trigPin_gauche, LOW);
pinMode(trigPin_gauche, OUTPUT); // Configuration du port du Trigger comme une SORTIE
pinMode(echoPin_gauche, INPUT); // Configuration du port de l'Echo comme une ENTREE
Serial.begin(9600); // Démarrage de la communication série
pinMode(motor_gauchePin2, OUTPUT);
pinMode(motor_gauchePin4, OUTPUT) ;
pinMode(enable_gauchePin10, OUTPUT);
pinMode(motor_droitPin3, OUTPUT);
pinMode(motor_droitPin1, OUTPUT);
pinMode(enable_droitPin11, OUTPUT);
}
void loop() {
//Émission d'une slave ultrasonor pendant une période de 10 ps
digitalWrite(trigPin_droit, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin_droit, LOW);
duree_droit = pulseIn(echoPin_droit, HIGH);
distance_droit = duree_droit/58;// Calcul de la distance
// Affichage de la distance dans le Moniteur Série
Serial.print("Distance_droit : ");
Serial.print(distance_droit);
Serial.println("cm");
delay(60);
digitalWrite(trigPin_gauche, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin_gauche, LOW);
duree_gauche = pulseIn(echoPin_gauche, HIGH);
distance_gauche = duree_gauche/58;// Calcul de la distance
// Affichage de la distance dans le Moniteur Série
Serial.print("Distance_gauche : ");
Serial.print(distance_gauche);
Serial.println("cm");
analogWrite(enable_gauchePin10, 255);
analogWrite(enable_droitPin11,255);
}```
je l'ai remplacé par le pin8 mais c'est cette fois ci aucun moteur ne fonctionnent:
const int trigPin_droit = A3; // Trigger (emission)
const int echoPin_droit = A4; // Echo (réception)
const int trigPin_gauche = 5; // Trigger (emission)
const int echoPin_gauche = 6; // Echo (réception)
const int motor_gauchePin2 = 2; // pin 2 du L293D
const int motor_gauchePin4 = 4; // pin 4 du L293D
const int enable_gauchePin10 = 10; // pin (Enable)du L293D
const int motor_droitPin3= 3; // pin 3 du L293D
const int motor_droitPin8 = 8; // pin 1 du L293D
const int enable_droitPin11 = 11; // pin (Enable)du L293D
// Variables
long duree_droit; // durée de l'echo
int distance_droit; // distance
long duree_gauche; // durée de l'echo
int distance_gauche; // distance
void setup() {
pinMode(trigPin_droit, OUTPUT); // Configuration du port du Trigger comme une SORTIE
pinMode(echoPin_droit, INPUT);// Configuration du port de l'Echo comme une ENTREE
pinMode(trigPin_gauche, OUTPUT); // Configuration du port du Trigger comme une SORTIE
pinMode(echoPin_gauche, INPUT); // Configuration du port de l'Echo comme une ENTREE
digitalWrite(trigPin_droit, LOW);
digitalWrite(trigPin_gauche, LOW);
Serial.begin(9600); // Démarrage de la communication série
pinMode(motor_gauchePin2, OUTPUT);
pinMode(motor_gauchePin4, OUTPUT) ;
pinMode(enable_gauchePin10, OUTPUT);
pinMode(motor_droitPin3, OUTPUT);
pinMode(motor_droitPin8, OUTPUT);
pinMode(enable_droitPin11, OUTPUT);
analogWrite(enable_gauchePin10, 255);
analogWrite(enable_droitPin11, 255);
}
void loop() {
//Émission d'une slave ultrasonor pendant une période de 10 ps
digitalWrite(trigPin_droit, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin_droit, LOW);
duree_droit = pulseIn(echoPin_droit, HIGH);
distance_droit = duree_droit/58;// Calcul de la distance
// Affichage de la distance dans le Moniteur Série
Serial.print("Distance_droit : ");
Serial.print(distance_droit);
Serial.println("cm");
delay(60);
digitalWrite(trigPin_gauche, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin_gauche, LOW);
duree_gauche = pulseIn(echoPin_gauche, HIGH);
distance_gauche = duree_gauche/58;// Calcul de la distance
// Affichage de la distance dans le Moniteur Série
Serial.print("Distance_gauche : ");
Serial.print(distance_gauche);
Serial.println("cm");
pinMode(motor_gauchePin2, HIGH);
pinMode(motor_gauchePin4, LOW) ;
pinMode(motor_droitPin3, LOW);
pinMode(motor_droitPin8, HIGH);
}