Frage&Antwort Spiel

Ich bin gerade dabei ein Frage&Antwortspiel zu erstellen.

Auf dem LCD Display soll eine Frage angezeigt werden und dann per Taster (Taster richtig; Taster falsch beantwortet werden. Wurde die Frage richtig beantwortet, dann soll sich ein Servo bewegen und bei falsch eine LED leuchten.

In diesem Programm sollen 5-10 Fragen ablaufen, also wenn Frage 1 beantwortet wurde soll dann Frage 2 erscheinen.

Habe dafür auch mal ein Ablaufdiagramm erstellt.

Jetzt suche ich nach einer einfachen Lösung wie man so etwas Programmieren könnte, dass die Fragen dann nacheinander ablaufen.

Das ist wie immer eine Frage der Datenstruktur. Und wie so oft kann man das mit Arrays aus structs lösen

FSM, Zustandsautomat.

Die Fragen mit F-Macro oder Progmem ins Flash

Da es sicher auf Dauer langweilig ist, immer die selben Fragen zu sehen, würde ich die Fragen von einer auf dem PC editierbaren SD-Karte holen. Datenstruktur etwa "J Geht das mit Arduino?" mit "J" als der richtigen Antwort.

Dein Ablaufdiagramm (Gratulation, dass Du sowas machst!!!!) enthält keine Schleife für eine flexible Anzahl von Fragen. Das solltest Du aber machen, da Du sonst bei zehn Fragen zehn gleiche Programmteile erhälst. Das ist mit Copy&Paste zwar kein Problem, aber weder elegant noch effektiv.

Du solltest also so lange durch ein Feld (siehe #1) oder eine Datei gehen, bis diese beendet ist.

Das liest sich jetzt möglicherweise schwieriger, als es ist :slight_smile:

Da es sicher auf Dauer langweilig ist, immer die selben Fragen zu sehen, würde ich die Fragen von einer auf dem PC editierbaren SD-Karte holen. Datenstruktur etwa "J Geht das mit Arduino?" mit "J" als der richtigen Antwort.

Ich habe gerade mal etwas gerechnet... Mal angenommen, das Programm benötigt 12 kByte Flash. Verbleiben noch ca. 20 kByte Platz (im UNO). Und mal angenommen, man verwendet ein LCD mit 4x20 Zeichen, von denen die obere Hälfte für die Frage, die untere Hälfte für Buttons etc. belegt werden... wären 40 Bytes je Frage. 20.000 Byte / 40 Byte = 500 Fragen... die man dann noch per Random-Generator ausliest. Okay, bei langen Texten bis 80 Zeichen wären das immer noch 250 Fragen... Des wär a Gaudi :smiley: