Folgendes problem: Wir müssen als abschlussprojekt für die schule einen microcontroller (PIC 16F84) programmierein. Und zwar: Wir sollen 6aus45 (Lotto mit 6+1 zufallszahlen) auf einem LCD display ausgeben, hardware mäßig kein problem, aber die zufallszahl macht uns einfach zu schaffen, habe bereits lange gesucht, aber bis her nichts gefunden, und daher hier im forum unser versuch. Per taster soll die ziehnung gestartet werden und die 6+1 zahlen nacheinander auf dem display angezigt werden. Random funktion gibts leider keine, also sollte die zufallszahl wahrscheinlich mittels timer konstruiert werden! Um jede Hilfe dankbar, wir haben nämlich nicht mehr viel zeit!!!! Gruß
Lass doch einfach den Timer0 den Systemtakt zählen und lies den Zählerstand beim Tastendruck aus. Da der Tastendruck zu einem zufälligen Zeitpunkt auftritt ist auch der Zählerstand zufällig. Muß man halt sieben Mal drücken... Uwe
7 mal drücken oder: du speicherst den zufallswert bei jedem spiel ab und verrechnest alte gespeicherte zufallswerte mit dem neu ermitteltem zufallswert... z.B. 1.Zufallszahl= Neu ermittelte Zufallszahl 2.Zufallszahl= Neu ermittelte Zufallszahl + Zufallszahl von vor 3 Spielen Gruß Flo
Das Problem ist, dass es die 7 zahlen nach einer tasten betätigung im 2 sekunden takt ausspucken soll!!
Ich hoffe ihr habt daran gedacht, daß jede Zahl nur einmal gezogen werden darf.
Der Gag an dem Projekt wird wohl gerade eben dieser Zufallsgenerator sein :) Das ist nämlich nicht ganz trivial. Es gibt einige Ansätze dazu, und man sollte auch viel Literatur finden. Ein paar Taster abfragen und LCD ansteuern wäre warscheinlich einfach nur "zu einfach" gewesen...
Man könnte Pseudozufallszahlen nehmen, die wiederholen sich erst alle 2^31-1 = 2147483647 mal. Das Problem ist bloß, daß nach jedem Reset immer die gleiche Folge entsteht. Abhilfe ist aber ganz einfach: Sobald man eine Ziehung gemacht hat, speichert man den Wert des Pseudozufallsregisters im EEPROM und holt in nach einem Reset wieder dort als nächsten Startwert ab. Peter
Hallo Falls dieser Microcontroller einen Analogen Eingang hat legt man ein Rauschen auf den Pin und liesst dann den Wert aus. Soviel ich weiss gibt es so analoge Chaos-Schaltungen die ein chaotisches Signal erzeugen. Der Weihnachtsmann
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.