Hi Jeffrey,
I’ve modified some things in the code but the joystick doesn’t influence anything
Here is my modifications and thank you for your help !
PS : A question => can the motors work with only the USB connection on the Arduino ? Do you know the number of the pin for A and B motors’s connections on the motorshield ?
[code]// — Déclaration des constantes des broches E/S numériques —
int vitesseMotA=3; // Constante pour la broche 3
int sensMotA=12; // Constante pour la broche 12
int vitesseMotB=11; // Constante pour la broche 11
int sensMotB=13; // Constante pour la broche 13
// — Déclaration des constantes des broches analogiques —
int axe1Joystick = A2; // Constante pour la broche analogique 2
int axe2Joystick = A3; // Constante pour la broche analogique 3
int JoyStick_Z = A4; // Constante pour la broche analogique 4
// — Déclaration des variables globales —
int mesure_brute=0;// Variable pour acquisition résultat brut de conversion analogique numérique
float mesuref=0.0;// Variable pour calcul résultat décimal de conversion analogique numérique
int positionAxe1=0; // Variable pour acquisition résultat brut de conversion analogique numérique axe 1 Joystick
int positionAxe2=0; // Variable pour acquisition résultat brut de conversion analogique numérique axe 2 Joystick
void setup() { // debut de la fonction setup()
// ------- Initialisation fonctionnalités utilisées -------
Serial.begin(115200);
// ------- Broches en sorties numériques -------
pinMode (vitesseMotA,OUTPUT); // Broche vitesseMotA configurée en sortie
pinMode (vitesseMotB,OUTPUT); // Broche vitesseMotB configurée en sortie
// ------- Broches en entrées numériques -------
pinMode (axe1Joystick,INPUT); // Broche axe1joystick configurée en entrée
pinMode (axe2Joystick,INPUT); // Broche axe2joystick configurée en entrée
pinMode (JoyStick_Z,INPUT); // Broche JoyStick_Z configurée en entrée
// ------- Codes d’initialisation utile -------
digitalWrite(vitesseMotA,LOW); // a l’arret
digitalWrite(sensMotA,LOW);
digitalWrite(vitesseMotB,LOW); // à l’arret
digitalWrite(sensMotB,LOW);
}
void loop(){ // debut de la fonction loop()
while(1) {
//----- lecture position Joytstick
positionAxe1=analogRead(axe1Joystick); // acquisition conversion analogique numérique sur broche analogique axe 1
positionAxe2=analogRead(axe2Joystick); // acquisition conversion analogique numérique sur broche analogique axe 2
int x,y,z;
if (positionAxe1>0) {
digitalWrite(vitesseMotA,HIGH);
digitalWrite(sensMotA,HIGH);
}
else if (positionAxe1<0) {
digitalWrite(vitesseMotA,HIGH);
digitalWrite(sensMotA,LOW);
}
else if (positionAxe2>0) {
digitalWrite(vitesseMotB,HIGH);
digitalWrite(sensMotB,HIGH);
}
else if (positionAxe2<0) {
digitalWrite(vitesseMotB,HIGH);
digitalWrite(sensMotB,LOW);
}
else if (analogRead(JoyStick_Z)) {
digitalWrite(vitesseMotA,LOW);
digitalWrite(vitesseMotB,LOW);
}
else {
digitalWrite(vitesseMotA,LOW); // turn motor off when between points
digitalWrite(vitesseMotB,LOW); // turn motor off when between points
}
}// stop loop
}
[/code]