LPC2366: Zufallszahlen?

Gast #768554
Lesenswert?

Hallo Hans und Peter,

als dass mit dem Timer ist so ne Sache da bekommt man eigentlich recht 
oft wiederholende bzw. rechnerisch nachvollzierbare Werte.

Ich habe ein solches Projekt (erstellen von Zufallszallen) mit einem 
kleinem ADC erreicht. Da habe ich den input port offengelassen und immer 
den dann anliegenden wert mit einem Faktor multipliziert.... der ADC 
wert insbesondere der LSB ändert sich ja recht oft.

Ich hoffe es hilft.

Gruß
Gast #768573
Lesenswert?

Für welchen Zweck möchtest Du die Zufallszahlen haben? Ist eine 
Periodizität gefordert?

Der Link ist zu nem Paper:
http://lehramt.cs.uni-magdeburg.de/Skripte/Pra/Material/zz.pdf

Bei dem Vorschlag von Hans ist es eigentlich nur eine Verschiebung des 
Problems. Du müsstest ja zu zufälligen Zeitpunkten den Zähler lesen. Im 
schlimmsten Fall passiert es dann das Du immer den gleichen Wert liest.
Gast #768594
Lesenswert?

Google mal nach dem Begriff
LFSR
(linear-feedback-shift-register bedeutet das)

So lassen sich beliebig grosse Zufallszahlen sehr simpel erzeugen.
Auf einem z.B. AVR ist das in Assembler mit weniger als 8 Befehlen 
gemacht, bei einer 8-Bit Zufallszahl.

Jochen Müller
Gast #769023
Lesenswert?

Hallo Leute,

Vielen Dank für eure Antworten.
Ich brauche die Zufallszahl um einmalig die untersten 24 Bits einer 
Ethernet-Adresse zu erzeugen (die Oberen sind fest). Die Idee mit dem 
Timer wird wohl nicht funktionieren, denn wenn ich den Timer starte und 
irgendwann später auslese, werde ich wohl immer die gleichen Wert 
erhalten. Die Idee mit dem ADC hat den Nachteil, dass man an seinem 
Eingang nichts anschließen darf, was auf Dauer auch keine Lösung zu sein 
scheint. Wahrscheinlich ist es in einem streng deterministischen System 
wie einem Microcontroller sowieso unmöglich einen zufällligen Wert zu 
erhalten, d.h. man muß es wohl von äußeren Einflüssen abhängig machen. 
Aber ich lese mir gleich mal den Artikel durch...

Vielen Dank nochmal,
 --> Peter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren