Bonjour a tous
je vient a vous pour optenir de l'aide ou du moins le code pour un chenillard 8 leds
voila je voudrai savoir le code pour optenir un effet d'atténuement entre chaque leds
Voici mon code actuelle que faut t'il rejouter
const int LED[8]={0,1,2,3,4,5,6,7}; // déclare un tableau de 8 constantes de broches
// la broche 4 correspond à la LED[0], 5 à LED[1], ..
// --- Déclaration des variables globales ---
int vitesse=250; // variable de vitesse entre chaque affichage des LEDs
// --- Déclaration des objets utiles pour les fonctionnalités utilisées ---
//**************** FONCTION SETUP = Code d'initialisation *****
// La fonction setup() est exécutée en premier et 1 seule fois, au démarrage du programme
void setup() { // debut de la fonction setup()
// --- ici instructions à exécuter au démarrage ---
// ------- Broches en sortie -------
// met les 8 broches en sortie
for (int i=0; i<=7; i++) { // boucle de défilement des 8 broches
pinMode(LED*, OUTPUT); //met la broche en sortie*
_ digitalWrite(LED*, LOW); // met la broche à 0V (LED éteinte) pour démarrer*_
}
} // fin de la fonction setup()
// ********************************************************************************
//*************** FONCTION LOOP = Boucle sans fin = coeur du programme *************
// la fonction loop() s'exécute sans fin en boucle aussi longtemps que l'Arduino est sous tension
void loop(){ // debut de la fonction loop()
//-------- méthode basique -----------
// LED seule se déplace
for (int j=0; j<10; j++) { //boucle de répétition x 10
* digitalWrite (LED[0],1), digitalWrite (LED[1],0), digitalWrite (LED[2],0),digitalWrite (LED[3],0);*
* digitalWrite (LED[4],0),digitalWrite (LED[5],0),digitalWrite (LED[6],0),digitalWrite (LED[7],0);*
* delay (vitesse);*
* digitalWrite (LED[0],0), digitalWrite (LED[1],1), digitalWrite (LED[2],0),digitalWrite (LED[3],0);*
* digitalWrite (LED[4],0),digitalWrite (LED[5],0),digitalWrite (LED[6],0),digitalWrite (LED[7],0);*
* delay (vitesse);*
* digitalWrite (LED[0],0), digitalWrite (LED[1],0), digitalWrite (LED[2],1),digitalWrite (LED[3],0);*
* digitalWrite (LED[4],0),digitalWrite (LED[5],0),digitalWrite (LED[6],0),digitalWrite (LED[7],0);*
* delay (vitesse);*
* digitalWrite (LED[0],0), digitalWrite (LED[1],0), digitalWrite (LED[2],0),digitalWrite (LED[3],1);*
* digitalWrite (LED[4],0),digitalWrite (LED[5],0),digitalWrite (LED[6],0),digitalWrite (LED[7],0);*
* delay (vitesse);*
* digitalWrite (LED[0],0), digitalWrite (LED[1],0), digitalWrite (LED[2],0),digitalWrite (LED[3],0);*
* digitalWrite (LED[4],1),digitalWrite (LED[5],0),digitalWrite (LED[6],0),digitalWrite (LED[7],0);*
* delay (vitesse);*
* digitalWrite (LED[0],0), digitalWrite (LED[1],0), digitalWrite (LED[2],0),digitalWrite (LED[3],0);*
* digitalWrite (LED[4],0),digitalWrite (LED[5],1),digitalWrite (LED[6],0),digitalWrite (LED[7],0);*
* delay (vitesse);*
* digitalWrite (LED[0],0), digitalWrite (LED[1],0), digitalWrite (LED[2],0),digitalWrite (LED[3],0);*
* digitalWrite (LED[4],0),digitalWrite (LED[5],0),digitalWrite (LED[6],1),digitalWrite (LED[7],0);*
* delay (vitesse);*
* digitalWrite (LED[0],0), digitalWrite (LED[1],0), digitalWrite (LED[2],0),digitalWrite (LED[3],0);*
* digitalWrite (LED[4],0),digitalWrite (LED[5],0),digitalWrite (LED[6],0),digitalWrite (LED[7],1);*
* delay (vitesse);*
} // fin boucle for x10
allumeLED(B00000000);
delay(300);
//----------- méthode évoluée - code plus propre ---------------
// effet rideau
for (int j=0; j<10; j++) { //boucle de répétition x 10
* allumeLED(B00000000); // appelle la fonction qui met les LEDs dans l'état des bits*
* allumeLED(B10000001); *
* allumeLED(B11000011); *
* allumeLED(B11100111); *
* allumeLED(B11111111); *
* allumeLED(B11100111); *
* allumeLED(B11000011); *
* allumeLED(B10000001); *
* allumeLED(B00000000); *
} // fin boucle for x10
allumeLED(B00000000);
delay(300);
// effet K2000
for (int j=0; j<10; j++) { //boucle de répétition x 10
* allumeLED(B11100000); // appelle la fonction qui met les LEDs dans l'état des bits*
* allumeLED(B01110000); *
* allumeLED(B00111000); *
* allumeLED(B00011100); *
* allumeLED(B00000110); *
* allumeLED(B00000011); *
* allumeLED(B00001110); *
* allumeLED(B00011100); *
* allumeLED(B00111000); *
* allumeLED(B01110000);*
* allumeLED(B11100000); *
} // fin boucle for x10
allumeLED(B00000000);
delay(300);
// effet FLIPPERS
for (int j=0; j<10; j++) { //boucle de répétition x 10
* allumeLED(B00000000); // appelle la fonction qui met les LEDs dans l'état des bits*
* allumeLED(B00011000); *
* allumeLED(B00111100); *
* allumeLED(B01111110); *
* allumeLED(B11111111); *
* allumeLED(B01111110); *
* allumeLED(B00111100); *
* allumeLED(B00011000); *
* allumeLED(B00000000); *
} // fin boucle for x10
allumeLED(B00000000);
delay(300);
// effet FLIPPERS 02
for (int j=0; j<10; j++) { //boucle de répétition x 10
* allumeLED(B00010001); // appelle la fonction qui met les LEDs dans l'état des bits*
* allumeLED(B00100010); *
* allumeLED(B01000100); *
* allumeLED(B10001000); *
* allumeLED(B01000100); *
* allumeLED(B00100010); *
* allumeLED(B00010001);*
} // fin boucle for x10
allumeLED(B00000000);
delay(300);
* // effet FLIPPERS 03*
for (int j=0; j<10; j++) { //boucle de répétition x 10
* allumeLED(B10000000); // appelle la fonction qui met les LEDs dans l'état des bits*
* allumeLED(B11000000); *
* allumeLED(B11100000); *
* allumeLED(B11110000); *
* allumeLED(B11111000); *
* allumeLED(B11111100); *
* allumeLED(B11111110);*
* allumeLED(B11111111);*
* allumeLED(B01111111); *
* allumeLED(B00111111); *
* allumeLED(B00011111); *
* allumeLED(B00001111); *
* allumeLED(B00000111); *
* allumeLED(B00000011);*
* allumeLED(B00000001);*
} // fin boucle for x10
} // fin de la fonction loop() - le programme recommence au début de la fonction loop sans fin
// ********************************************************************************
//*************** Autres Fonctions du programme *************
// création d'une fonction qui reçoit une valeur de type byte et ne renvoie aucune valeur
void allumeLED(byte valeur) { // fonction pour allumer/éteindre les LEDs voulue en fonction valeur 8 bits reçue
* for (int i=0; i<=7; i++) {*
digitalWrite(LED_,bitRead(valeur,i)); // met la broche LED dans l'état du bit de rang i de la variable
* }
delay(vitesse); //pause*
} // fin de la fonction
// --- Fin programme ---
Milles merci de votre aide_