[Programmation] Arduino et strip led qui n'affiche pas ce qu'elle devrait.
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

Arduino et strip led qui n'affiche pas ce qu'elle devrait.



  1. #1
    invitef18b9670

    Arduino et strip led qui n'affiche pas ce qu'elle devrait.


    ------

    Bonjour à tous,

    J'ai un problème, en apparence simple, mais dont la résolution est moins simple (de mon point de vue).

    Avec une télécommande IR je contrôle une Strip LEDs.

    Ce que c'est censé faire:
    J'appuie sur 0, toutes les leds s’éteignent les unes après les autres.
    J'appuie sur 1, les leds s'allument en bleu les unes après les autres.
    J'appuie sur 2, les leds s'allument en vert les unes après les autres.
    J'appuie sur 3, les leds s'allument en rouge les unes après les autres.

    Ce que ça fait:
    J'appuie sur 1, les leds s'allument bien les unes après les autres.
    J'appuie sur 0, 2 ou 3, les leds s’éteignent les unes après les autres.

    J'ai essayé d'autre programmes, la strip fonctionne bien, j'ai essayé d'autre façons de faire dans mon programme, mais rien ne change.

    Je pense que le problème peut venir de la ligne " switch (codeIR.value)" car je ne sais pas à quoi correspond ce ".value" mais je peux me tromper.

    Voila mon code:
    (certaines partie du code ne sont pas encore utilisé tel que le lcd ou le tableau)

    Code:
    #include <Adafruit_NeoPixel.h>
    #include <LiquidCrystal.h>
    #include <IRremote.h>
    
    #define stripPin 10 //Commande Strip
    #define NBPIXELS 60
    
    Adafruit_NeoPixel strip = Adafruit_NeoPixel(NBPIXELS, stripPin, NEO_GRB + NEO_KHZ800);
    LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
    
    
    //Déclaration du Menu
    const int numMenu = 5;
    int menuCourant = 0;
    String menu[numMenu][2] = {{"Cadre Infini", "v0.0"}, {"Coul Constante", "%"}, {"RainB General", "%"}, {"RainB Avance", "%"}, {"Scintillement", "%"}};
    int parametres[numMenu];
    
    //Déclaration IR
    int receiver = 11; //Réception IR
    IRrecv irDecode(receiver);
    decode_results codeIR;
    
    //Constante de couleur
    byte V = 0;
    byte R = 0;
    byte B = 0;
    
    void setup() {
      irDecode.enableIRIn();
      strip.begin();
      strip.show();
    }
    
    void loop() {
      if (irDecode.decode(&codeIR))
    
      {
        switch (codeIR.value)
    
        {
          case 0xFF6897: // 0
            coulPredef(0);
            allumage();
            break;
    
          case 0xFF30CF: // 1
            coulPredef(1);
            allumage();
            break;
    
          case 0xFF18E7: // 2
            coulPredef(2);
            allumage();
            break;
    
          case 0xFF7A85: // 3
            coulPredef(3);
            allumage();
            break;
    
        }
        irDecode.resume(); // receive the next value
      }
    }
    
    void coulPredef(int key) {
      if (key == 0) {
        V = 0;
        R = 0;
        B = 0;
      }
      else if (key == 1) {
        V = 0;
        R = 0;
        B = 255;
      }
      else if (key == 2) {
        V = 0;
        R = 255;
        B = 0;
      }
      else if (key == 3) {
        V = 255;
        R = 0;
        B = 0;
      }
    }
    
    void allumage() {
      for (int i = 0; i < strip.numPixels(); i++) {
        strip.setPixelColor(i, (V, R, B));
        strip.show();
        delay(10);
      }
    }
    Merci de votre aide!

    -----

  2. #2
    penthode

    Re : Arduino et strip led qui n'affiche pas ce qu'elle devrait.

    quel est le protocole IR utilisé ?

    on peut voir un schéma du truc ?
    [b]le bon sens est un fardeau, car il faut s'entendre avec ceux qui ne l'ont pas [/b]

  3. #3
    invitef18b9670

    Re : Arduino et strip led qui n'affiche pas ce qu'elle devrait.

    Alors pour le schéma, le voici (peut-être pas très lisible, mais j'ai fais avec les moyen du bord.)

    Nom : schema.jpg
Affichages : 121
Taille : 54,0 Ko


    En ce qui concerne le protocole, je ne saurais pas trop quoi te réponde, le Récepteur et la télécommande viennent d'un starter kit.

    Le récepteur est un AX-1838HS et la télécommande n'a pas l'air d'avoir de ref particulière mais a les caractéristiques suivante:
     Remote control distance: more than 8 meters
     Launch tube infrared wavelength: 940Nm
     Crystal: the oscillation frequency of 455 KHz
     IR carrier frequency: 38KHz
     Encoding: the encoding format of the NEC, upd6122 encoding scheme, the user code 00FF, key coding below picture
     Size: 86 * 40 * 6mm
     Frequency: 38K
     Power supply: CR2025/160mAH

    J'ai remarqué autre chose, Peut importe les valeurs que je met à R, V et B dans le "KEY 1" la strip led s'allume quand même en bleu!

    En tout cas, merci de ton aide!

  4. #4
    penthode

    Re : Arduino et strip led qui n'affiche pas ce qu'elle devrait.

    mais... c'est un kit prévu pour l'arduino ?
    [b]le bon sens est un fardeau, car il faut s'entendre avec ceux qui ne l'ont pas [/b]

  5. A voir en vidéo sur Futura
  6. #5
    invitef18b9670

    Re : Arduino et strip led qui n'affiche pas ce qu'elle devrait.

    Oui c'est pas un kit arduino mais un elegoo mais de ce que j'ai put voir, c'est les même produit. Les composant utilisé sont les même que sur arduino!

    Qu'est ce qui te fais te poser cette question?

    Edit: La strip ne fait pas du tout partie du kit par contre, mais la télécommande et le récepteur IR oui (ainsi que la carte elegoo uno R3)

  7. #6
    penthode

    Re : Arduino et strip led qui n'affiche pas ce qu'elle devrait.

    parce que je ne vois nulle part , dans ton code (sauf erreur de ma part) la prise en compte d'un quelconque protocole de communication infra-rouge... si je me trompe , merci de m'indiquer les lignes de décodage.

    les plus connus étant le RC5 de chez philips , le RCS de chez sony ( je maitrise à peu prés ces deux normes)

    quand au codage NEC , je n'en connais pas le moindre bit
    [b]le bon sens est un fardeau, car il faut s'entendre avec ceux qui ne l'ont pas [/b]

  8. #7
    elektrax

    Re : Arduino et strip led qui n'affiche pas ce qu'elle devrait.

    dans la fonction allumage
    void allumage() {
    for (int i = 0; i < strip.numPixels(); i++) {
    strip.setPixelColor(i, strip.Color(V, R, B));
    strip.show();
    delay(100);

    vous avez oublié : (i, strip.Color(V, R, B)); et pas (i,(V, R, B));
    merci

  9. #8
    invitef18b9670

    Re : Arduino et strip led qui n'affiche pas ce qu'elle devrait.

    Halleluya, ça fonctionne, merci Elektrax, c'était un petit truc simple mais que je ne connaissais pas!! =D

    Penthode, dans //déclaration IR il y a une ligne "IRrecv irDecode (receiver);" qui permet de définir l'entrée du récepteur IR. Juste en dessous, la ligne "decode_results codeIR;" permet de décoder la valeur en hexa et de l'enregistrer dans la variable "codeIR". Et j'utilise cette variable après.
    Enfin ce que je dis est à prendre avec des pincettes car c'est ce que j'ai crus comprendre du code, mais n'étant pas un pro en la matière, je n'est pas la certitude de ce que j'avance. Mais en tout cas, ça marche comme ça.

    Merci a vous 2 pour le coup de main, grâce à vous je ne suis plus bloqué =)

  10. #9
    elektrax

    Re : Arduino et strip led qui n'affiche pas ce qu'elle devrait.

    irremote reconnait automatiquement les protocoles nec, sony, rc5 et 6, samsung, etc...
    merci

Discussions similaires

  1. Controler Led Strip RGB avec potentiometres (sans arduino)
    Par invite780d9961 dans le forum Électronique
    Réponses: 20
    Dernier message: 06/06/2015, 00h24
  2. Strip LED (3 SDM5050) à piloter avec un arduino
    Par invitecd12c5f7 dans le forum Électronique
    Réponses: 13
    Dernier message: 23/10/2012, 18h02
  3. [Blanc] Machine à pain qui ne chauffe plus comme elle devrait ...
    Par dnifamily dans le forum Dépannage
    Réponses: 10
    Dernier message: 07/12/2010, 14h10
  4. Prétélécharger une galerie d'images avant qu'elle ne s'affiche
    Par JPhL dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 15/09/2010, 22h55
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...