[Programmation] condition pour arduino
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

condition pour arduino



  1. #1
    naramdani

    Smile condition pour arduino


    ------

    bonjour,

    je souhaite afficher un message sur mon afficheur lcd avec un microcontrôleur quand 2 relais commutent, cependant voilà ce que j'avais écrit :
    Code:
    if((digitalRead(6)==HIGH)&&(digitalRead(A5)==HIGH))   // Lorsque les deux relais sont activés
              {
        digitalWrite(A3, HIGH);       //Allumage de la LED verte 
            //delay(1000);
            lcd.clear();
            lcd.setCursor(2,0);
            lcd.print("abcd");   
            lcd.setCursor(4,1);
            lcd.print("efgh");
            delay(1000);
            lcd.clear();
            lcd.setCursor(3,0);
            lcd.print("ijkl :");
            lcd.setCursor(7,1);
            lcd.print("mnop");
            delay(3000);
        digitalWrite(A3,LOW);         // Extinction de la LED verte 
        lcd.clear();
        break;
              } 
           else 
            {
            digitalWrite(A3,LOW);      // Extinction de la LED verte
            }
    Sachant que cette condition est dans une boucle for(), comment pourrais je remédier à ce problème?

    -----
    Dernière modification par Antoane ; 28/04/2017 à 15h56. Motif: Ajout balises code

  2. #2
    sandrecarpe

    Re : condition pour arduino

    Salut,
    Quel est le problème ?

    Sachant que cette condition est dans une boucle for()
    On peut voir la boucle for du coup ?

  3. #3
    naramdani

    Re : condition pour arduino

    biensur, la voilà :


    Code:
    lcd.setCursor(2,0);
      lcd.print("Redemarrage");         // écriture dans la premiére ligne de l'afficheur
      delay(1000);
      lcd.clear();
            for (int i=10; i>=0; i--)
              {
          lcd.setCursor(0,0);
          lcd.print("Cligno  rapide");          //Clignotement de la led STATE f=1Hz (Début apprentissage)  
          lcd.setCursor(2,1);
          lcd.print("Led 3");
          lcd.setCursor(13,1);
          lcd.print(i);
          lcd.setCursor(15,1);
          lcd.print("s");
          delay(1000) ;                  // durée d'affichage du message = 5 secondes 
          lcd.clear();
              }
      for (int i=30; i>=0; i--)
       {
        lcd.clear();
        lcd.setCursor(2,0);
        lcd.print("ABCD");
        lcd.setCursor(0,1);
        lcd.print("EFGH");
        lcd.setCursor(13,1);
        lcd.print("s");
        lcd.setCursor(11,1);
        lcd.print(i);                   // Décrementation de notre temporisation
        delay(1000);
        
        if((digitalRead(6)==HIGH)&&(digitalRead(A5)==HIGH))   // Lorsque les deux relais sont activés
            {
    
        digitalWrite(A3, HIGH);       //Allumage de la LED verte 
    
            lcd.clear();
            lcd.setCursor(2,0);
            lcd.print("IJKL");   //Allumage lorsque l'actionneur qui va bien (appairé) est enfoncé dans la cavité 
            lcd.setCursor(4,1);
            lcd.print("MNOP");
            delay(1000);
            lcd.clear();
            lcd.setCursor(3,0);
            lcd.print("Appairage :");
            lcd.setCursor(7,1);
            lcd.print("OK");
            delay(3000);
        digitalWrite(A3,LOW);         // Extinction de la LED verte 
        lcd.clear();
        break;
            } 
    
    
          else
          {
             digitalWrite(A3, LOW);       //Extinction de la LED verte 
          }
        
        
       }
    Le problème c'est que je veux que la led A3 ne s'allume ainsi que les messages associés que lorsque les 2 relais commutent ou l'inverse.
    Dernière modification par Antoane ; 28/04/2017 à 15h57. Motif: Ajout balises code

  4. #4
    sandrecarpe

    Re : condition pour arduino

    Et pour l'instant qu'est-ce qui ne va pas ? Le fonctionnement est correct uniquement lorsque les 2 relais sont fermés, c'est ça ?


    Le problème c'est que je veux que la led A3 ne s'allume ainsi que les messages associés que lorsque les 2 relais commutent ou l'inverse.
    C'est-à-dire lorsque
    digitalRead(6) = digitalRead(A5)

  5. A voir en vidéo sur Futura

Discussions similaires

  1. [Outils/Fab/Comp] Quelle carte arduino choisir ? Et probleme condition
    Par Tpe de ssi dans le forum Électronique
    Réponses: 0
    Dernier message: 08/02/2017, 16h11
  2. Condition périodique et condition aux limites dans Abaqus
    Par vdo_05 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 15/03/2016, 16h27
  3. condition pour aller en L1 bio
    Par invite93f6838d dans le forum Orientation après le BAC
    Réponses: 3
    Dernier message: 17/03/2011, 03h11
  4. Condition pour une fac de médecine
    Par invite09d06cc9 dans le forum Orientation après le BAC
    Réponses: 0
    Dernier message: 08/02/2011, 01h18
  5. Condition pour 2 réactions simultanées
    Par citron_21 dans le forum Chimie
    Réponses: 11
    Dernier message: 16/06/2009, 17h57
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...