meta données pour cette page
  •  

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
neopixels_-_exemple_de_fonctions_pour_allumer_et_eteindre_les_neopixels [2015/04/08 10:07] Alexandre Castonguayneopixels_-_exemple_de_fonctions_pour_allumer_et_eteindre_les_neopixels [2015/04/08 15:01] (Version actuelle) Alexandre Castonguay
Ligne 1: Ligne 1:
 <sxh java> <sxh java>
- 
 // Par Alexandre Castonguay, basé sur le code de "NeoPixel Ring simple sketch (c) 2013 Shae Erisson" // Par Alexandre Castonguay, basé sur le code de "NeoPixel Ring simple sketch (c) 2013 Shae Erisson"
-// released under the GPLv3 license to match the rest of the AdaFruit NeoPixel library+// publié sous la licence GPLv3 pour correspondre au reste de la bibliothèque Adafruit néopixel
 // Utilisez les appels de fonction "allumer(int,int);" et "eteindre(int,int);"  // Utilisez les appels de fonction "allumer(int,int);" et "eteindre(int,int);" 
 + 
 #include <Adafruit_NeoPixel.h> #include <Adafruit_NeoPixel.h>
 #include <avr/power.h> #include <avr/power.h>
 + 
 +// Sur quelle broche (PIN) de l'arduino sont connectés les néopixels?
  
-// Which pin on the Arduino is connected to the NeoPixels? +#define PIN            6    // la broche PWM qui controlera les néopixels 
-// On a Trinket or Gemma we suggest changing this to 1 +  
-#define PIN1            3    // jaune   +// Combien de néopixels sont connectés sur l'arduino? 
-#define PIN2            6    // vert+#define NUMPIXELS      8   
 +  
 +// Lorsque nous configurons la bibliothèque néopixel , nous devons déclarer le nombre de néopixels et de 
 +// broches à utiliser pour envoyer des signaux. 
 +// Notez que pour les plus vieilles versions de néopixels, vous pourriez avoir besoin de changer le troisième paramètre - voir "strandtest" 
 +// Allez voir les exemples pour plus d'information sur les valeurs possibles 
 +  
 +Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);  
 +  
 +  
 +void setup() {
  
-// How many NeoPixels are attached to the Arduino? +  pixels.begin(); // Ceci initialise les néopixels dans la bibliothèque
-#define NUMPIXELS1      5  // jaune +
-#define NUMPIXELS2      5  // vert +
- +
-// When we setup the NeoPixel library, we tell it how many pixels, and which pin to use to send signals. +
-// Note that for older NeoPixel strips you might need to change the third parameter--see the strandtest +
-// example for more information on possible values. +
-Adafruit_NeoPixel pixels1 = Adafruit_NeoPixel(NUMPIXELS1, PIN1, NEO_GRB + NEO_KHZ800); // jaune  +
-Adafruit_NeoPixel pixels2 = Adafruit_NeoPixel(NUMPIXELS2, PIN2, NEO_GRB + NEO_KHZ800); // vert +
- +
- +
-void setup() { +
-  pixels1.begin(); // This initializes the NeoPixel library. +
-  pixels2.begin(); // This initializes the NeoPixel library.+
   Serial.begin(9600);   Serial.begin(9600);
 } }
 + 
 void loop() { void loop() {
-  // For a set of NeoPixels the first NeoPixel is 0, second is 1, all the way up to the count of pixels minus one. +  // Pour un jeu de néopixels le premier néopixel est 0, le deuxième est 1, et ainsi de suite 
-  pixels1.show(); +  pixels.show(); // Nécessaire pour initialiser les néopixels, ici, ils seront tous éteints 
-  pixels2.show(); +    
-   +  for(int i=0;i<NUMPIXELS;i++){ // boucle qui va faire un cycle entre tous les néopixels 
-  for(int i=NUMPIXELS1;i>=0;i--){ +     Serial.print("allume DEL : "); // afficher le numéro du néopixel dans le moniteur série
-    Serial.print("DELS1 : "); +
-    Serial.println(i); +
-     allumer1(i,2);  +
-     delay(15); // Delay for a period of time (in milliseconds). +
-     } +
-   +
-  for(int i=0;i<NUMPIXELS2;i++){ +
-     Serial.print("allume DEL 2: ");+
      Serial.println(i);      Serial.println(i);
-     allumer2(i,2);  +     allumer(i,2); // appel de la fonction "allumer()" voir plus bas sa définition  
-     delay(15); // Delay for a period of time (in milliseconds).+     delay(15); // delai pour la période de temps (en millisecondes)
      }      }
-    
          
-   /* +   for(int i=0;i<NUMPIXELS;i++){
-   for(int i=0;i<NUMPIXELS2;i++){+
       eteindre(i,5);       eteindre(i,5);
-      delay(20); // Delay for a period of time (in milliseconds). +      delay(20);  
-      } +      }   
-      */ +
-   +
-  +
 } }
  
- void allumer1(int DEL,int delai){ // le premier argument est la lumiere et le second est l'intervalle+ void allumer(int DEL,int delai){ // le premier argument est le numéro du néopixel et le second est l'intervalle
     for(int fi=0;fi<255;fi++){     for(int fi=0;fi<255;fi++){
-       pixels1.setPixelColor(DEL, pixels1.Color(fi,fi,fi)); // allume de 0 a 255 +       pixels.setPixelColor(DEL, pixels.Color(fi,fi,fi)); // allume de 0 a 255 
-       pixels1.show(); +       pixels.show(); 
-       delay(delai);+       delay(delai); // temps de pause entre chaque augmentation d'intensité, va faire varier la longueur de la gradation
             }             }
        }        }
-        +        
- +
- void allumer2(int DEL,int delai){ // le premier argument est la lumiere et le second est l'intervalle +
-    for(int fi=0;fi<255;fi++){ +
-       pixels2.setPixelColor(DEL, pixels2.Color(fi,fi,fi)); // allume de 0 a 255 +
-       pixels2.show(); +
-       delay(delai); +
-            } +
-       } +
-       +
         void eteindre(int DEL,int delai){ // le premier argument est la lumiere et le second est l'intervalle         void eteindre(int DEL,int delai){ // le premier argument est la lumiere et le second est l'intervalle
     for(int fo=255;fo>=0;fo--){     for(int fo=255;fo>=0;fo--){
Ligne 83: Ligne 59:
       Serial.print("avec fondu au noir de valeur : ");       Serial.print("avec fondu au noir de valeur : ");
       Serial.println(fo);       Serial.println(fo);
-       +        
-       pixels2.setPixelColor(DEL, pixels2.Color(fo,fo,fo)); // eteint de 255 a 0 +       pixels.setPixelColor(DEL, pixels.Color(fo,fo,fo)); // eteint de 255 a 0 
-       pixels2.show();+       pixels.show();
        delay(delai);        delay(delai);
             }             }
        }        }
- 
  
 </sxh> </sxh>