Gast
#97015
Hallo, kennt ihr nen Random befehl für C der auf dem Atmega 8 funktioniert?
|
Anzeige
|
Random mit ATMEGA 8?
Gast
#97015
Hallo, kennt ihr nen Random befehl für C der auf dem Atmega 8 funktioniert?
Gast
#97016
mußt du einfach einen laufenden timer auslesen. z.B. TCNT0 ich weiß... ist nicht wirklich random, aber viel mehr geht da bestimmt nicht. ein "richtiger" Computer macht das glaube ich auch nur über die systemzeit.
Gast
#97017
Naja, es gibt PRNG-Algorithmen, avr-libc hat zumindest welche dabei. Damit das wirklich `random' wird, muß man diese allerdings mit einem gut zufälligen Wert initialisieren (`to seed'). Dafür sollte man so viel wie möglich Zufall heranziehen, was auch immer man gerade verfügbar hat. Die Uhrzeit ist ja nicht gerade wirklich unvorhersagbar, insofern taugt sie zumindest im kryptografischen Sinne eher nicht als hinreichender Zufall. Ideal sind Dinge wie Interruptzähler von Ethernet-Hardware, RS-232 Hardware, Keyboard-Eingaben (so sie regelmäßig getätigt werden), USB.
Gast
#97018
Achso, eine Hardwarelösung mit Rauschgenerator (Z-Diode plus Verstärker) über den Analogkomparator (einfach nur Interrupts zählen) kann sich auch ganz brauchbar machen.
Gast
#97019
Oder einfach mal nen AD-Wert lesen, die unteren Bits "titschen" mit sicherheit ganz gut... Ansonsten: gibt schon mind. zwei Threads zu dem Thema, einfach mal nach "Zufall" suchen. ... http://www.mikrocontroller.net/forum/read-1-94598.html ... Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|