INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Hilfe bei eigenem Spiel( Überprüfung von Zufallsvariablen)
16.12.2015, 11:23 (Dieser Beitrag wurde zuletzt bearbeitet: 16.12.2015 12:34 von Bitklopfer.)
Beitrag #1
Hilfe bei eigenem Spiel( Überprüfung von Zufallsvariablen)
Hallo Leute,
ich programmiere aktuell im Unterricht ein Spiel.
Unsere Kenntnisse sind stark eingeschränkt und wir benötigen etwas Hilfe. In unserem Spiel tickt eine "Bombe". Es wird aus 4 Variablen ein Zufallscode generiert, welcher dann Tastern zugeordnet wird.
Wenn man den ersten Taster richtig eingegeben hat, z.B Taster 2 Leuchte die erste Lampe grün. Bei falscher Eingabe, soll der Code gleich bleiben, die Lampen aber ausgehen.

Code:
int schalter1     = 2;
int schalter2     = 3;
int schalter3     = 4;
int schalter4     = 5;
int schalterstart = 6;
int led1          = 8;
int led2          = 9;
int led3          = 10;
int led4          = 11;

int code[4]={schalter1,schalter2,schalter3,schalter4};
int schalter[4];

void setup() {

  digitalWrite(schalter1,INPUT);
  digitalWrite(schalter2,INPUT);
  digitalWrite(schalter3,INPUT);
  digitalWrite(schalter4,INPUT);
  digitalWrite(schalterstart,INPUT);
  digitalWrite(led1,OUTPUT);
  digitalWrite(led2,OUTPUT);
  digitalWrite(led3,OUTPUT);
  digitalWrite(led4,OUTPUT);
  for(int x = 0; x < 50; x++) {
    tausche(random(4), random(4));
  }
}


void loop() {
  if(schalterstart == HIGH)
  {
    Serial.println("HIGH-Level erreicht.");
    Serial.println(code[0]);
    Serial.println(code[1]);
    Serial.println(code[2]);
    Serial.println(code[3]);
    
  }
}


void tausche(int index1, int index2){
  int hilf= schalter[index1];
  schalter[index1]= schalter[index2];
  schalter[index2]= hilf;
}
Zitat Change to Code by Mod. lgbk


Wie überprüfe ich nun die Variablen in der richtigen Reihenfolge, bzw. wie kann ich überprüfen ob der richtige Schalter gedrückt wurde.
Ich würde mich über Mustervorschläge freuen.
MFG Jan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.12.2015, 12:01 (Dieser Beitrag wurde zuletzt bearbeitet: 16.12.2015 13:50 von hotsystems.)
Beitrag #2
RE: Hilfe bei eigenem Spiel( Überprüfung von Zufallsvariablen)
Den Code habe ich noch nicht weiter geprüft.

Aber wichtig dabei sind die PullUp oder PullDown Widerstände.

Hier wäre es einfacher, wenn du die Taster auf "LOW" prüfst und alle Eingänge mit einem internen Pullup

Code:
PinMode(schalter1, INPUT_PULLUP);
digitalWrite(schalter1, HIGH);
versiehst.
Dann solltest du den Code nicht als Zitat sondern in Code-Tags posten, dann bleibt auch eine Formatierung erhalten, die zum sauberen lesen wichtig ist.

Edit:
Fehler beseitigt.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.12.2015, 12:32
Beitrag #3
RE: Hilfe bei eigenem Spiel( Überprüfung von Zufallsvariablen)
(16.12.2015 12:01)hotsystems schrieb:  Den Code habe ich noch nicht weiter geprüft.

Aber wichtig dabei sind die PullUp oder PullDown Widerstände.

Hier wäre es einfacher, wenn du die Taster auf "LOW" prüfst und alle Eingänge mit einem internen Pullup

Code:
digitalWrite(schalter1,INPUT_PULLUP);
....

Hi,
also ich kenne das als
Code:
pinMode(schalterX, INPUT_PULLUP);
..komischerweise meckert der Compiler die Schreibweise mit digitalWrite nicht an...
aber ob das dann die gleiche Wirkung hat kann ich Moment nicht prüfen.
Auch in seinem Sketch oben wird pinMode nicht verwendet....seltsam seltsam...
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.12.2015, 12:41 (Dieser Beitrag wurde zuletzt bearbeitet: 16.12.2015 13:57 von hotsystems.)
Beitrag #4
RE: Hilfe bei eigenem Spiel( Überprüfung von Zufallsvariablen)
(16.12.2015 12:32)Bitklopfer schrieb:  ..komischerweise meckert der Compiler die Schreibweise mit digitalWrite nicht an...
aber ob das dann die gleiche Wirkung hat kann ich Moment nicht prüfen.
Auch in seinem Sketch oben wird pinMode nicht verwendet....seltsam seltsam...
lgbk

Ja, du hast Recht. Das ist sicher falsch.
Aber zu meiner Entschuldigung, ich habe ja gleich geschrieben, den Code habe ich nicht weiter geprüft.

Wichtig war mir, die Pullups zu verwenden.
Ich sollte doch besser lesen. Wink

Ja und die Pinmode-Deklaration gehört ins Setup.

Und so wie der Code aufgebaut ist, kann er nicht funktionieren.
Pindeklarationen fehlen in dem Setup.
Befehle um Ein und Ausgangspins zu bedienen gehören in die Loop.

Bitte beschäftigt euch erst mal mit den Basics.
Grundlagen sind für die Programmierung eines Arduinos wichtig.

Wie bringe ich eine Led zum Leuchten, wie frage ich einen Taster ab.
Das sind Informationen die ihr in den Beispielen der IDE nachlesen und testen könnt.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.12.2015, 19:18
Beitrag #5
RE: Hilfe bei eigenem Spiel( Überprüfung von Zufallsvariablen)
(16.12.2015 12:41)hotsystems schrieb:  ...
Ja und die Pinmode-Deklaration gehört ins Setup.
...

...im Prinzip ja.

Doch wenn man weis was man tut kann es durchaus auch zur Laufzeit nötig sein mal den I/O Mode zu ändern....erlaubt ist das schon.
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.12.2015, 22:09
Beitrag #6
RE: Hilfe bei eigenem Spiel( Überprüfung von Zufallsvariablen)
(16.12.2015 19:18)Bitklopfer schrieb:  
(16.12.2015 12:41)hotsystems schrieb:  ...
Ja und die Pinmode-Deklaration gehört ins Setup.
...

...im Prinzip ja.

Doch wenn man weis was man tut kann es durchaus auch zur Laufzeit nötig sein mal den I/O Mode zu ändern....erlaubt ist das schon.
lgbk
Das stimmt natürlich.
Ich hätte besser schreiben sollen: "...die erste Pinmode-Deklaration gehört...".

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.12.2015, 22:21
Beitrag #7
RE: Hilfe bei eigenem Spiel( Überprüfung von Zufallsvariablen)
(16.12.2015 22:09)hotsystems schrieb:  
(16.12.2015 19:18)Bitklopfer schrieb:  
(16.12.2015 12:41)hotsystems schrieb:  ...
Ja und die Pinmode-Deklaration gehört ins Setup.
...

...im Prinzip ja.

Doch wenn man weis was man tut kann es durchaus auch zur Laufzeit nötig sein mal den I/O Mode zu ändern....erlaubt ist das schon.
lgbk
Das stimmt natürlich.
Ich hätte besser schreiben sollen: "...die erste Pinmode-Deklaration gehört...".

...korrekt wollte ich schon schreiben....bis auf den Ausnahmefall das aufgrund eines bestimmten Zustandes so oder so gestartet werden soll...könnte ja sein....auch wenn mir gerade kein Beispiel einfällt...
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
Sad Hilfe bei 2.4 TFT Display Harry Hirsch 40 1.419 22.04.2018 15:34
Letzter Beitrag: Tommy56
  hilfe bei callback ausgabe per knopfdruck merz 5 173 15.04.2018 14:16
Letzter Beitrag: Tommy56
  Hilfe bei Fehlermeldung TroyPan 3 289 23.03.2018 23:38
Letzter Beitrag: Tommy56
  Hilfe beim skript Devtris 24 1.185 12.03.2018 18:19
Letzter Beitrag: Tommy56
  Hilfe bei einen kleinen Programm FPV 9 826 11.03.2018 20:42
Letzter Beitrag: Tommy56
  Hilfe beim Programmieren Klawino 28 1.385 10.03.2018 13:36
Letzter Beitrag: hotsystems
  Hilfe bei der Programmierung Digitaluhr ,mit Anzeige 32x8 Lora 1 241 10.03.2018 11:44
Letzter Beitrag: hotsystems
  Hold Button - Doppel Klick Hilfe GSA1150 8 575 08.03.2018 16:24
Letzter Beitrag: Tommy56
  Brauch hilfe bei einnem Sketch MrMagoo 10 554 11.02.2018 13:49
Letzter Beitrag: hotsystems
  Hilfe bei diesen Fehler MrMagoo 22 945 06.02.2018 20:03
Letzter Beitrag: hotsystems

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste