Reaktionstest 2

Da Uwe den letzten Tread geschlossen hat und er nicht wusste, dass ich gerade Hilfe hatte hier nochmal

void setup() {

pinMode(13,INPUT); //ich habe gelsen, dass wenn man Input benutzt die Zahl random ist.
Serial.begin(9600); // da die Reaktionszeit später auf dem seriellen monitor angezeigt werden
muss benutze ich Serial begin
digitalRead(13,HIGH);

void loop() }

{
a = random (1,7); //für eine Random Zahl
delay(1000);
Serial.println(a);
}

Serial.println("Aufleuchten!") // wird dann auf dem seriellen monitor angezeigt wenn die LED leuchtet
a=0

So weit bin ich bis jetzt gekommen, ich bin mir sicher.dass da Fehler drin sind vorallem weiß ich garnicht wie man mit millis und dem Taster die Zeit messen muss ;/ da hab ich noch Schwierigkeiten

Aber Du hast den Code auch schon mal kompiliert, die Fehlermeldungen gelesen, verstanden und danach Dein Programm korrigiert?

Dann zeig uns doch mal die korrekte Version. Ich kann ohne Compiler schon mindestens drei Fehler sehen.

wno158:
Aber Du hast den Code auch schon mal kompiliert, die Fehlermeldungen gelesen, verstanden und danach Dein Programm korrigiert?

Dann zeig uns doch mal die korrekte Version. Ich kann ohne Compiler schon mindestens drei Fehler sehen.

void loop() {}

?

Na ja, das ist (fast) ein halber.
Deine Loop ist jetzt leer.

Bitte gebrauchen Sie

[code]....[/code]

tags.

Pin 13 is das interne LED, so besser nicht gebrauchen als INPUT.

void setup()
{
  Serial.begin(115200);   
  Serial.println(__FILE__);            // so kan man sehen welche sketch auf Arduino Ist

  pinMode(13, OUTPUT);
  digitalWrite(13, LOW);

  pinMode(10, INPUT_PULLUP);           // verbinden Sie die schalter mit GND
}


void loop()
{
  Serial.print("...");
  
  int waitingTime = random (5000);                   //  eine Random zeit in millisecunden

  delay(1000 + waitingTime);
  digitalWrite(13, HIGH)
  Serial.println("Aufleuchten!")
  
  uint32_t start = millis();
  while (digitalRead(10) == HIGH);     //warte biss ein KeyPress
  uint32_t stop - millis();

  Serial.print("Zeit (ms): ");
  Serial.println(stop - start);

  delay(2000);
}

Probiere es mal

wno158:
Na ja, das ist (fast) ein halber.
Deine Loop ist jetzt leer.

d.h.

void loop (){   //und dann ganz am ende noch eine } hinzufügen?

robtillaart:
Bitte gebrauchen Sie

[code]....[/code]

tags.

Pin 13 is das interne LED, so besser nicht gebrauchen als INPUT.

void setup()

{
 Serial.begin(115200);  
 Serial.println(FILE);            // so kan man sehen welche sketch auf Arduino Ist

pinMode(13, OUTPUT);
 digitalWrite(13, LOW);

pinMode(10, INPUT_PULLUP);           // verbinden Sie die schalter mit GND
}

void loop()
{
 Serial.print("...");
 
 int waitingTime = random (5000);                   //  eine Random zeit in millisecunden

delay(1000 + waitingTime);
 digitalWrite(13, HIGH)
 Serial.println("Aufleuchten!")
 
 uint32_t start = millis();
 while (digitalRead(10) == HIGH);     //warte biss ein KeyPress
 uint32_t stop - millis();

Serial.print("Zeit (ms): ");
 Serial.println(stop - start);

delay(2000);
}




Probiere es mal

danke für den Code robtillart ich werde den Code morgen ausprobieren, da ich momentan nicht in der Lage bin.

Es gibt schon einen bestimmten Grund wieso ich den Tread geschlossen haben. Sicher nicht damit Du einen neuen aufmachst.
Ich hab Dir etwas über einen persönlche Nachricht geschicket. Was sagst Du dazu?
Grüße Uwe

Hallo melanieH,

zuerst mal herzlich Willkommen im Forum!

Bitte komplett lesen:

Verstehe uns bitte nicht falsch, wir versuchen Dir alle zu helfen!
Um es blöd auszudrücken, Du versuchst jetzt nach der 1. Fahrstunde gleich ein Rennen zu fahren
oder nach der 1. Kochstunde ein 3 Gänge Menü zu zaubern. Dazu hast Du aber alles was Du gefunden
hast wahllos in einen Topf geworfen und umgerührt. So wird das nie was. Zuerst muss man wissen
was die einzelnen Zutaten bewirken.

Uwe hat Dich nur gesperrt weil Du gleich auf die Leute losgegangen bist, ohne das es dafür einen
Grund gab. Eigentlich hast nämlich Du gegen die Netiquette verstoßen und nicht Tommy56.

Bitte How to use this forum - please read lesen.
Vor allem Punkt 13 "Etikette" (z.B. wegen Cross-post...).

Wenn Du einen Fachbegriff nicht verstehst, einfach Google fragen (z.B. bei IDE spukt Google als erstes Ergebnis
"integrierte Entwicklungsumgebung (von englisch integrated development environment)" aus).
Wenn das nicht hilft frag uns. Wenn man nett fragt, bekommt man eine nette Antwort!

Vor allem sind wir genervt wenn jemand kommt und ein riesengroßes Projekt am Anfang umsetzen will,
aber sich überhaupt nicht auskennt.
Oder wie Tommy56 in seiner Signatur stehen hat: "Wer den schnellen Erfolg sucht, sollte nicht programmieren,
sondern Holz hacken." (Quelle unbekannt)

Wenn Du vorher die Beispiele in der IDE (Begriff siehe oben) schön durcharbeitest, kannst Du uns bestimmt
mehr an Code anbieten! Dann wird Dir auch bei Fehlern geholfen!

Eines noch:
Wir haben alle mal mit 0 angefangen und haben mit der Zeit viel gelernt. Das geht aber leider nicht von
heute auf morgen! Außerdem helfen hier alle freiwillig OHNE Bezahlung! Das ist unser Hobby. Also bitte nicht
gleich rumnerven wenn nicht sofort Hilfe kommt!

Ich hoffe das die weitere Zusammenarbeit besser läuft und Du uns eventuell auch ein wenig besser verstehst
wenn von uns nicht immer gleich das Erwartete auf dem Silbertablett serviert wird.

Gruß, Jürgen

Wir mach das gerade in der Schule unser Projekt ist es so etwas zu bauen und wir haben alle einzelnen Sachen in Gruppen gelernt. Also die Lehrerin hat es uns nicht erklärt wir mussten es selbst raus finden.
Das mit dem Reaktionstest zählt wie eine Arbeit.
Und ich weiß ihr wollt mir alle helfen aber die Schritte bei denen ihr sagt lern erstmal eine LED blinken zu lassen das muss ich jetzt nicht können.
Wenn mir jemand wie robtillart gesagt hätte was ich schreiben könnte ich auch daran erkennen welche " "(ich weiß nicht wie man das nennt aber pinMode etc diese Sachen) benutzt hat dann würde ich es auch verstehen.
Aber ich kann in der Arbeit ja nicht nur eine LED zum leuchten bringen.
Und da die Abgabefrist schon sehr bald ist konntet ihr mir leider nicht helfen.
Jetzt muss ich eine 6 kassieren.
Das heißt 6 im Zeugnis und ich bleibe sitzen... eine 6 in einem Hauptfach kann man nicht ausgleichen...

aber trotzdem danke

melanieH:
....
Jetzt muss ich eine 6 kassieren.
Das heißt 6 im Zeugnis und ich bleibe sitzen... eine 6 in einem Hauptfach kann man nicht ausgleichen...

Dann hättest du wohl früher anfangen sollen.

Im übrigen lesen hier viele Lehrer/innen mit und erkennen das wir für dich alles machen, das ist sich auch nicht gut für deine Zensur.

HotSystems:
Dann hättest du wohl früher anfangen sollen.

Ich habe schon heute um 16 Uhr gefragt und habe nur Antworten bekommen wie "lern erstmal wie man eine LED zum leuchten bringt"

melanieH:
Ich habe schon heute um 16 Uhr gefragt und habe nur Antworten bekommen wie "lern erstmal wie man eine LED zum leuchten bringt"

Ja....dann lese meinen kompletten Post und den von Katsumi_S.

Das ist alles nicht böswillig, aber wir machen hier nicht die Arbeit von Schülern, deren Lehrer/innen hier evtl. mitlesen.

Allerdings helfen hier alle deren Möglichkeiten entsprechend sehr gern.

Was ist der Sinn einer solchen Arbeit? Die Leistung des Schülers zu bewerten... und wenn man nichts kann, kriegt man eine 6... Darum: lernen. Da ist ein solches Forum durchaus ein guter Ansatzpunkt. Aber das geht nicht von jetzt auf gleich, und erst recht nicht, wenn man die Helfer anpöbelt!
Außerdem kannst Du mir nicht sagen, dass die Arbeit von heute auf morgen ist... erst recht nicht eine Gruppenarbeit.

Nebenbei: die Nutzung eines Profilbildes von Spamprofilen dient nicht wirklich einem seriösem bzw. erhlichem Erscheinungsbild....

PS:
"Und ich weiß ihr wollt mir alle helfen aber die Schritte bei denen ihr sagt lern erstmal eine LED blinken zu lassen das muss ich jetzt nicht können."
-->und das willst Du wie beurteilen? Wir bringen hier Hilfe zur Selbsthilfe... eine solche Aussage ist Gift für dieses Forum...

HotSystems:
Ja....dann lese meinen kompletten Post und den von Katsumi_S.

Das ist alles nicht böswillig, aber wir machen hier nicht die Arbeit von Schülern, deren Lehrer/innen hier evtl. mitlesen.

Allerdings helfen hier alle deren Möglichkeiten entsprechend sehr gern.

ich wollte es nur erklärt kriegen, was bringt mir es wenn ich einen Sketch kopier und es dann nicht erklären kann?

Ich wollte verstehen was man machen muss und wieso man es machen muss.

melanieH:
Ich habe schon heute um 16 Uhr gefragt und habe nur Antworten bekommen wie "lern erstmal wie man eine LED zum leuchten bringt"

Sorry aber was erwartest Du dir? Wir sind kein Dienstleistungsunternehmen. IMHO

melanieH:
ich wollte es nur erklärt kriegen, was bringt mir es wenn ich einen Sketch kopier und es dann nicht erklären kann?

Ich wollte verstehen was man machen muss und wieso man es machen muss.

Und diese Erklärungen findest du in allen Beispielen in der IDE oder hier auf arduino.cc
Was du dann nicht findest, kannst du hier fragen.

Wir können dir ja nicht das Web vorlesen.

Vielleicht versteckt sich ein Psychologe, Meinungsforscher oder alter 'Freund' hinter diesen Foto. :confused:

melanieH:
Ich wollte verstehen was man machen muss und wieso man es machen muss.

Und das ist exakt das wobei wir Dir hier versuchen zu helfen - indem wir die Hilfestellung geben, selbst Quellen zu erschließen, Fehler und für Dich zunächst neue Funktionen zu entdecken. Genau wie die Lehrerin: Du musst es selbst rausfinden, sonst ist es nicht "Deins", sondern ein auswendig gelerntes Gedicht.

Jetzt mal Butter bei die Fische (um zu sehen, ob überhaupt noch eine Chance besteht):
Wann muss das Werk denn fertig sein?

Hallo,

ein Reaktionstest könnte doch so aussehen.
Eine Led geht plötzlich an. Man merkt sich den Einschaltzeitpunkt mit millis Abfrage.
Ab da fragt man einen Taster ab, also einen Eingang. Sobald sich an dem Eingang etwas tut, fragt man wieder die aktuelle Zeit mit millis ab. Bildet die Differenz der zwei Zeiten und hat die gesuchte Reaktionszeit und gibt diese auf dem seriellen Monitor aus. Jetzt schaltet man die Led wieder aus. Wenn das läuft, kannste dich meinetwegen um etwas zufälliges einschalten kümmern. Aber erst dann. Ich denke das ist Aufgabe genug.

Du merkst, die Grundlagen eine LED blinken zulassen wären schon hilfreich. Zum Thema millis gibts hier gute Erklärungen.
Lesen solltest du das, auch wenn du das in der Form nicht für dein "Spiel" benötigst.

Theseus erklärt millis()
http://forum.arduino.cc/index.php?topic=400102.msg2752141#msg2752141

GuntherB - BlinkwithoutDelay - Die Nachtwächtererklärung
http://forum.arduino.cc/index.php?topic=423688.0