Go Down

Topic: Solved (Read 471 times) previous topic - next topic

_Mare

Aug 08, 2016, 03:27 pm Last Edit: Aug 08, 2016, 08:02 pm by Coding Badly
Solved
[Moderator - original post restored.  OP, if you do delete your post again you will be Banned. Topic Locked.]

I´ve got a problem. I want to have a blink game. But my  LED´s blink all the time. It should blink one a time, and the other times the program test if any buttonist pressed, or is right. The notes are German.
If you need it you can use a Google Translater.

Code: [Select]
int ledA = 13;
int ledB = 12;    // Definiert die einzelen Leds mit Lautsprechern, für die übersichtlichkeit
int ledC = 11;
int ledD = 10;
int ledE = 8;
int ledF = 9;


int Taster1 = 7; // Definiert alle Taster
int Taster2 = 6;
int Taster3 = 5;
int Taster4 = 4;
int Taster5 = 3;
int Taster6 = 2;


int Richtig = 1; // Definiert den Output für die LED
int Betrunken = 14; //  Definiert den Output für die LED, 14 Pin! Größerer Arduino!
int Richtig1; // Definiert die Variable für den ersten Test



int TTest2; // Falls Test1 abgeschlossen, stellt Schalter auf Test2 um.
int TTest1; // Test1 prüft regelmäßig, ob auch Test1 benutzt wird.

int Check1;  // Definiert eine Variable die später dazu dient die Reihenfolge der Taster zu kontrollieren
int Check2;
int Check3;
int Check4;
int Check5;
int Check6;


int SchleifeT; // Testet ob er immernoch in der Schleife sein muss


void setup() {
   Serial.begin(9600);   //SeriellerMonitor für Test2
   
   pinMode(ledA, OUTPUT);  // Definiert die einzelenen Pins, mit den davor festgelegten LED
   pinMode(ledB, OUTPUT);
   pinMode(ledC, OUTPUT);
   pinMode(ledD, OUTPUT);
   pinMode(ledE, OUTPUT);
   pinMode(ledF, OUTPUT);
   pinMode(Taster2, INPUT);
   pinMode(Taster1, INPUT);
   pinMode(Taster3, INPUT);
   pinMode(Taster4, INPUT);
   pinMode(Taster5, INPUT);
   pinMode(Taster6, INPUT);
   pinMode(Richtig1, OUTPUT); // Definiert den Output für die LED
   SchleifeT == 1;
   
   
}

   void loop()
{
    digitalWrite(13, HIGH); // Setzt nacheinander die LEDS+Lautsprecher auf An/Aus
    digitalWrite(12, LOW);
    digitalWrite(11, LOW);
    digitalWrite(10, LOW);
    digitalWrite(9, LOW);
    digitalWrite(8, LOW);
    delay(1000);
    digitalWrite(13, LOW);
    digitalWrite(12, HIGH);
    digitalWrite(11, LOW);
    digitalWrite(10, LOW);
    digitalWrite(9, LOW);
    digitalWrite(8, LOW);
     delay(1000);
    digitalWrite(13, LOW);
    digitalWrite(12, LOW);
    digitalWrite(11, HIGH);
    digitalWrite(10, LOW);
    digitalWrite(9, LOW);
    digitalWrite(8, LOW);
      delay(1000);
    digitalWrite(13, LOW);
    digitalWrite(12, LOW);
    digitalWrite(11, LOW);
    digitalWrite(10, HIGH);
    digitalWrite(9, LOW);
    digitalWrite(8, LOW);
     delay(1000);
    digitalWrite(13, LOW);
    digitalWrite(12, LOW);
    digitalWrite(11, LOW);
    digitalWrite(10, LOW);
    digitalWrite(9, HIGH);
    digitalWrite(8, LOW);
     delay(1000);
    digitalWrite(13, LOW);
    digitalWrite(12, LOW);
    digitalWrite(11, LOW);
    digitalWrite(10, LOW);
    digitalWrite(9, LOW);
    digitalWrite(8, HIGH);
    delay(1000);

 Schleife:  // Testet ununterbrochen in einer SCHLEIFE alle Schlater ab.

 
   
  if (TTest1 ==0) 
 { 
 
   if (Taster1 == 1 && Taster2 == 0 && Taster3 == 0 && Taster4 == 0 && Taster5 == 0 && Taster6 == 0) //Testet Schalter.
 {
   if (Check1 == 1 || Check2 == 1 || Check3 == 1 || Check4 == 1 ||Check5 == 1 || Check6 == 1) // Fals ein "Check" falsch ist, sendet er eine Fehlermeldung. Siehe Fehlermeldung unten.
 {
   Betrunken == 1;   // Fehlermeldung
 }
 
 else
 {
   Check1 == 1;   // Ist der richtige Knopf gedrückt worden, setzt er den "Check" auf An.
 }
 }








 
   if (Taster1 == 0 && Taster2 == 1 && Taster3 == 0 && Taster4 == 0 && Taster5 == 0 && Taster6 == 0) //Testet Schalter.
 {
   if (Check1 == 0 || Check2 == 1 || Check3 == 1 || Check4 == 1 ||Check5 == 1 || Check6 == 1) // Fals ein "Check" falsch ist, sendet er eine Fehlermeldung. Siehe Fehlermeldung unten.
 {
   Betrunken == 1;   // Fehlermeldung
 }
 
 else
 {
   Check2 == 1;   // Ist der richtige Knopf gedrückt worden, setzt er den "Check" auf An.
 }
  } 
 
 
 
 
 
 
 
   if (Taster1 == 0 && Taster2 == 0 && Taster3 == 1 && Taster4 == 0 && Taster5 == 0 && Taster6 == 0) //Testet Schalter.
 {
   if (Check1 == 0 || Check2 == 0 || Check3 == 1 || Check4 == 1 ||Check5 == 1 || Check6 == 1) // Fals ein "Check" falsch ist, sendet er eine Fehlermeldung. Siehe Fehlermeldung unten.
 {
   Betrunken == 1;   // Fehlermeldung
 }
 
 else
 {
   Check3 == 1;   // Ist der richtige Knopf gedrückt worden, setzt er den "Check" auf An.
 }
  }
 
 


   if (Taster1 == 0 && Taster2 == 0 && Taster3 == 0 && Taster4 == 1 && Taster5 == 0 && Taster6 == 0) //Testet Schalter.
 {
   if (Check1 == 0 || Check2 == 0|| Check3 == 0 || Check4 == 1 ||Check5 == 1 || Check6 == 1) // Fals ein "Check" falsch ist, sendet er eine Fehlermeldung. Siehe Fehlermeldung unten.
 {
   Betrunken == 1;   // Fehlermeldung
 }
 
 else
 {
   Check4 == 1;   // Ist der richtige Knopf gedrückt worden, setzt er den "Check" auf An.
 }
  }
 
 
 




   if (Taster1 == 0 && Taster2 == 0 && Taster3 == 0 && Taster4 == 0 && Taster5 == 1 && Taster6 == 0) //Testet Schalter.
 {
   if (Check1 == 0 || Check2 == 0 || Check3 == 0 || Check4 == 0 ||Check5 == 1 || Check6 == 1) // Fals ein "Check" falsch ist, sendet er eine Fehlermeldung. Siehe Fehlermeldung unten.
 {
   Betrunken == 1;   // Fehlermeldung
 }
 
 else
 {
   Check5 == 1;   // Ist der richtige Knopf gedrückt worden, setzt er den "Check" auf An.
 }
  }
 






   if (Taster1 == 0 && Taster2 == 0 && Taster3 == 0 && Taster4 == 0 && Taster5 == 0 && Taster6 == 1) //Testet Schalter.
 {
   if (Check1 == 0 || Check2 == 0 || Check3 == 0 || Check4 == 0 ||Check5 == 0 || Check6 == 1) // Fals ein "Check" falsch ist, sendet er eine Fehlermeldung. Siehe Fehlermeldung unten.
 {
   Betrunken == 1;   // Fehlermeldung
 }
 
 else
 {
   Check6 == 1;   // Ist der richtige Knopf gedrückt worden, setzt er den "Check" auf An.
 }
  }



  if (Check1 == 1  && Check2 == 1 && Check3 == 1 && Check4 == 1 && Check5 == 1 && Check6 == 1);
{
 TTest1 == 1;
 TTest2 == 1; // Setzt alle Schalter für Tests 2 um. goto 2Test wenn alles richtig, geht zu Test2
}
 }
 else
{
  SchleifeT == 1;
}
 
 if (SchleifeT == 1)
{
  goto Schleife;
}

}




_Mare

Öhm,  so right?

On the other Link i cant find anything

UKHeliBob

Code: [Select]
int Taster1 = 7;
Taster1 is given a value of 7 and you don't change it in the program so
Code: [Select]
   if (1 == Taster1 && button2 == 0 && Taster3 == 0 && Taster4 == 0 && Taster5 == 0 && Taster6 == 0) // Tests switch.

how can Taster1 ever equal 1 ?
You are not reading the state of the input pins anywhere in the program.

Please read this before posting a programming question and edit your post to put code tags around the program having Auto Formatted it in the IDE first.

As to the use of goto, I will say no more than why ?
Please do not send me PMs asking for help.  Post in the forum then everyone will benefit from seeing the questions and answers.

groundFungus

Code: [Select]
SchleifeT == 1;
Betrunken == 1;

  == for compare, = for assignment.  You have this in many places.


Code: [Select]
Schleife:

This should be a function.  We rarely use goto in C++.

http://playground.arduino.cc/Code/Function

Put some Serial.print()s in your code to follow the values of variables.
 

Robin2

@_Mare, please reinstate your Original Post and your title so that other can benefit from this Thread. The purpose of this Forum is to share.

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

MorganS

Wow. Deleting the question after it has been answered? Nasty.
"The problem is in the code you didn't post."

Go Up