// Definitions des constantes : branchement des PIN #define AV_M1 9 // Commande Marche Avant Moteur 1 sur PIN 9 #define AR_M1 8 // Commande Marche Arriere Moteur 1 sur PIN 8 #define AV_M2 7 // Commande Marche Avant Moteur 2 sur PIN 7 #define AR_M2 6 // Commande Marche Arriere Moteur 2 sur PIN 6 #define VIT_M1 2 // Vitesse Moteur 1 sur PIN 2 #define VIT_M2 3 // Vitesse Moteur 2 sur PIN 3 void setup() { // Initialisation des entrees/sorties de l'Arduino // --> Tout en sortie pinMode(AV_M1, OUTPUT); pinMode(AR_M1, OUTPUT); pinMode(AV_M2, OUTPUT); pinMode(AR_M2, OUTPUT); pinMode(VIT_M1, OUTPUT); pinMode(VIT_M2, OUTPUT); } // Fonction qui permet de mettre en marche AVANT // Paramètres : // vit : vitesse à régler : entre 0 et 255 void marche_av(byte vit) { // Comme on ne sait pas quel était l'état des // moteurs -> on les met à 0 // Réglage vitesse du moteur 1 analogWrite(VIT_M1, 0); // Réglage vitesse du moteur 2 analogWrite(VIT_M2, 0); // Marche AVANT du moteur 1 digitalWrite(AV_M1, HIGH); digitalWrite(AR_M1, LOW); // Marche AVANT du moteur 2 digitalWrite(AV_M2, HIGH); digitalWrite(AR_M2, LOW); // Réglage vitesse du moteur 1 analogWrite(VIT_M1, vit); // Réglage vitesse du moteur 2 analogWrite(VIT_M2, vit); } // Fonction qui permet de mettre en marche ARRIERE // Paramètres : // vit : vitesse à régler : entre 0 et 255 void marche_ar(byte vit) { // Comme on ne sait pas quel était l'état des // moteurs -> on les met à 0 // Réglage vitesse du moteur 1 analogWrite(VIT_M1, 0); // Réglage vitesse du moteur 2 analogWrite(VIT_M2, 0); // Marche ARRIERE du moteur 1 digitalWrite(AV_M1, LOW); digitalWrite(AR_M1, HIGH); // Marche ARRIERE du moteur 2 digitalWrite(AV_M2, LOW); digitalWrite(AR_M2, HIGH); // Réglage vitesse du moteur 1 analogWrite(VIT_M1, vit); // Réglage vitesse du moteur 2 analogWrite(VIT_M2, vit); } void loop() { // On demande une marche AVANT marche_av(127); // Attente de 5 secondes delay(5000); // On demande un arret marche_av(0); // Attente de 5 secondes delay(5000); // On demande une marche ARRIERE marche_ar(127); // Attente de 5 secondes delay(5000); // On demande un arret marche_ar(0); // Attente de 5 secondes delay(5000); }