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.

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.

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...".

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
  Prüfung eines Drucksensors mit Hilfe des Arduino r4c3 1 75 19.10.2017 20:21
Letzter Beitrag: Tommy56
Photo Hilfe bei meinem Arduino Projekt Niklas 10 366 23.09.2017 21:05
Letzter Beitrag: Niklas
  Ublox Neo 6M und Nextion ! Bitte um Hilfe. b3ta 19 1.087 13.07.2017 14:52
Letzter Beitrag: Tommy56
  Anfänger sucht erfahrene Hilfe Customizer 21 1.415 11.07.2017 21:37
Letzter Beitrag: Customizer
  Bitte um Hilfe Arduino Nano-MAX7219-PIR_Sensor Opa_Klaus 35 2.028 20.05.2017 21:11
Letzter Beitrag: Opa_Klaus
  Brauche Hilfe für meine Abfüllanlage/ millis() Slash96 8 776 10.05.2017 21:04
Letzter Beitrag: MicroBahner
Question Problem beim Hochladen auf AtTiny45. Hilfe -.- Jonas Lindenblatt 17 1.327 16.04.2017 12:58
Letzter Beitrag: Jonas Lindenblatt
  Zeitschaltuhr Hilfe für RTC Anfänger 4Jordy 4 697 24.03.2017 15:23
Letzter Beitrag: MicroBahner
  Hilfe bei Taster huber5093 11 731 14.02.2017 19:26
Letzter Beitrag: Tommy56
  Hilfe: IR Remote Steuerung, MSGEQ7 + RGB-LED Streifen dastob 1 542 14.10.2016 21:40
Letzter Beitrag: hotsystems

Gehe zu:


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