- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 7 von 7

Thema: Array in einer Swich case schleife

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Begeisterter Techniker Avatar von Ferdinand
    Registriert seit
    10.09.2004
    Ort
    Stuttgart
    Alter
    44
    Beiträge
    230
    OK ich verstehe also die beste lössung ist mit if else anweisungen also so

    Code:
    // 14-19
    //Sensoren
    const int V_LINKS = 14;
    const int V_MITTE = 15;
    const int V_RECHTS = 16;
    const int H_LINKS = 17;;
    const int H_MITTE = 18;;
    const int H_RECHTS = 19;
    //Motoren
    const int LINKS = 6;
    const int RECHTS = 5;
    const int VOR = 4;
    const int ZURUECK = 2;
    const int PWM = 3;
    
    int pwm = 127;
    
    
    void setup() {
      // put your setup code here, to run once:
    
    
    
    
    
    
    
      pinMode(V_LINKS, INPUT);
      pinMode(V_MITTE, INPUT);
      pinMode(V_RECHTS, INPUT);
      pinMode(H_LINKS, INPUT);
      pinMode(H_MITTE, INPUT);
      pinMode(H_RECHTS, INPUT);
    
      pinMode(LINKS, OUTPUT);
      pinMode(RECHTS, OUTPUT);
      pinMode(VOR, OUTPUT);
      pinMode(ZURUECK, OUTPUT);
      pinMode(PWM, OUTPUT);
    
    
    
    
    
    
    }
    
    void loop() {
        
       analogWrite(PWM, pwm);
    
       
      if (digitalRead(V_MITTE) == LOW)
      {
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(LINKS, HIGH);
       digitalWrite(RECHTS, HIGH); 
      }
      else if (digitalRead(V_LINKS) == LOW)
      { 
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(RECHTS, HIGH); 
       digitalWrite(LINKS, LOW);
      }
      else if (digitalRead(V_RECHTS) == LOW)
      { 
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(LINKS, HIGH); 
       digitalWrite(RECHTS, LOW); 
      }
      else if (digitalRead(H_MITTE) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(LINKS, HIGH);
       digitalWrite(RECHTS, HIGH);
      }
    
      else if (digitalRead(H_LINKS) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(RECHTS, HIGH); 
       digitalWrite(LINKS, LOW);
      }
      else if (digitalRead(H_RECHTS) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(LINKS, HIGH); 
       digitalWrite(RECHTS, LOW); 
      } 
    
      else 
      {
        
      digitalWrite(VOR, HIGH);
      digitalWrite(ZURUECK, HIGH);
      digitalWrite(LINKS, HIGH);
      digitalWrite(RECHTS, HIGH); 
      }
    
    //delay(30);
    
    
    
    }
    habe schreiben erst heute gelernt.

    bin legasteniger.

    by Ferdinand.

  2. #2
    HaWe
    Gast
    Zitat Zitat von Ferdinand Beitrag anzeigen
    OK ich verstehe also die beste lössung ist mit if else anweisungen also so

    Code:
    // 14-19
    //Sensoren
    const int V_LINKS = 14;
    const int V_MITTE = 15;
    const int V_RECHTS = 16;
    const int H_LINKS = 17;;
    const int H_MITTE = 18;;
    const int H_RECHTS = 19;
    //Motoren
    const int LINKS = 6;
    const int RECHTS = 5;
    const int VOR = 4;
    const int ZURUECK = 2;
    const int PWM = 3;
    
    int pwm = 127;
    
    
    void setup() {
      // put your setup code here, to run once:
    
    
    
    
    
    
    
      pinMode(V_LINKS, INPUT);
      pinMode(V_MITTE, INPUT);
      pinMode(V_RECHTS, INPUT);
      pinMode(H_LINKS, INPUT);
      pinMode(H_MITTE, INPUT);
      pinMode(H_RECHTS, INPUT);
    
      pinMode(LINKS, OUTPUT);
      pinMode(RECHTS, OUTPUT);
      pinMode(VOR, OUTPUT);
      pinMode(ZURUECK, OUTPUT);
      pinMode(PWM, OUTPUT);
    
    
    
    
    
    
    }
    
    void loop() {
        
       analogWrite(PWM, pwm);
    
       
      if (digitalRead(V_MITTE) == LOW)
      {
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(LINKS, HIGH);
       digitalWrite(RECHTS, HIGH); 
      }
      else if (digitalRead(V_LINKS) == LOW)
      { 
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(RECHTS, HIGH); 
       digitalWrite(LINKS, LOW);
      }
      else if (digitalRead(V_RECHTS) == LOW)
      { 
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(LINKS, HIGH); 
       digitalWrite(RECHTS, LOW); 
      }
      else if (digitalRead(H_MITTE) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(LINKS, HIGH);
       digitalWrite(RECHTS, HIGH);
      }
    
      else if (digitalRead(H_LINKS) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(RECHTS, HIGH); 
       digitalWrite(LINKS, LOW);
      }
      else if (digitalRead(H_RECHTS) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(LINKS, HIGH); 
       digitalWrite(RECHTS, LOW); 
      } 
    
      else 
      {
        
      digitalWrite(VOR, HIGH);
      digitalWrite(ZURUECK, HIGH);
      digitalWrite(LINKS, HIGH);
      digitalWrite(RECHTS, HIGH); 
      }
    
    //delay(30);
    
    
    
    }
    theoretisch, von der Syntax her, sieht es korrekt aus - ob er aber genau das tut, was du vorhast, weiß ich ntl nicht.

  3. #3
    Erfahrener Benutzer Begeisterter Techniker Avatar von Ferdinand
    Registriert seit
    10.09.2004
    Ort
    Stuttgart
    Alter
    44
    Beiträge
    230
    Also hier noch mal der fertige Code jetzt geht alles

    Code:
    // 14-19
    //Sensoren
    const int V_LINKS = 14;
    const int V_MITTE = 15;
    const int V_RECHTS = 16;
    const int H_LINKS = 17;;
    const int H_MITTE = 18;;
    const int H_RECHTS = 19;
    //Motoren
    const int LINKS = 6;
    const int RECHTS = 5;
    const int VOR = 4;
    const int ZURUECK = 2;
    const int PWM = 3;
    
    int pwm = 90;
    
    
    void setup() {
      // put your setup code here, to run once:
      pinMode(V_LINKS, INPUT);
      pinMode(V_MITTE, INPUT);
      pinMode(V_RECHTS, INPUT);
      pinMode(H_LINKS, INPUT);
      pinMode(H_MITTE, INPUT);
      pinMode(H_RECHTS, INPUT);
    
      pinMode(LINKS, OUTPUT);
      pinMode(RECHTS, OUTPUT);
      pinMode(VOR, OUTPUT);
      pinMode(ZURUECK, OUTPUT);
      pinMode(PWM, OUTPUT);
    }
    
    void loop() {
        
       analogWrite(PWM, pwm);
    
     
       
      if (digitalRead(V_MITTE) == LOW)
      {
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(LINKS, HIGH);
       digitalWrite(RECHTS, HIGH); 
      }
      else if (digitalRead(V_LINKS) == LOW)
      { 
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(RECHTS, HIGH); 
       digitalWrite(LINKS, LOW);
      }
      else if (digitalRead(V_RECHTS) == LOW)
      { 
       digitalWrite(ZURUECK, HIGH);
       digitalWrite(VOR, LOW);
       digitalWrite(LINKS, HIGH); 
       digitalWrite(RECHTS, LOW); 
      }
      else if (digitalRead(H_MITTE) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(LINKS, HIGH);
       digitalWrite(RECHTS, HIGH);
      }
    
      else if (digitalRead(H_LINKS) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(RECHTS, HIGH); 
       digitalWrite(LINKS, LOW);
      }
      else if (digitalRead(H_RECHTS) == LOW)
      { 
       digitalWrite(VOR, HIGH);
       digitalWrite(ZURUECK, LOW); 
       digitalWrite(LINKS, HIGH); 
       digitalWrite(RECHTS, LOW); 
      } 
    
     /* else 
      {
        
      digitalWrite(VOR, HIGH);
      digitalWrite(ZURUECK, HIGH);
      digitalWrite(LINKS, HIGH);
      digitalWrite(RECHTS, HIGH); 
      }*/
    //delay(30);
    
    
    
    }
    Danke für eure Hilfe.
    habe schreiben erst heute gelernt.

    bin legasteniger.

    by Ferdinand.

Ähnliche Themen

  1. Kleine Frage zu einer Schleife
    Von White_Fox im Forum Assembler-Programmierung
    Antworten: 4
    Letzter Beitrag: 09.01.2016, 19:51
  2. switch case aud union und struct gehen schief, hat einer eine Idee warum ???
    Von jdelphi im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 0
    Letzter Beitrag: 29.09.2011, 13:04
  3. Array mit for-Schleife beschreiben macht Fehler
    Von Gock im Forum C - Programmierung (GCC u.a.)
    Antworten: 8
    Letzter Beitrag: 12.10.2009, 20:32
  4. Stack beim verlassen einer Schleife...
    Von Klingon77 im Forum Software, Algorithmen und KI
    Antworten: 10
    Letzter Beitrag: 26.04.2009, 10:17
  5. Addition in einer For-Schleife
    Von bertl100 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 06.05.2005, 16:08

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests