Hallo,
ich mache gerade Experimente zum Test einer Funkverbindung zwischen zwei Arduinos und wollte eine Quasi Zufallsbytefolge als Testmuster übertragen.
Dabei habe ich festgestellt, dass der Funktionsaufruf randomSeed(0)
nicht bei jedem Aufruf die gleiche Folge von Zufallszahlen generiert, sondern
nur beim ersten Aufruf.
Wenn ich stattdessen randomSeed(1) aufrufe, wird nach dem Aufruf auch im laufenden Programm immer wieder die gleiche Folge generiert.
Ausprobieren kann das jeder mit folgendem kleinen Programm
void setup(){
Serial.begin(9600);
}
void loop(){
randomSeed(0);
Serial.println(" ");
for (int i=0;i<256;i++) {
long randNumber = random(255);
Serial.print(randNumber);
Serial.print(";");
}
Serial.println(" ");
delay(1000);
}
Wenn man statt randomSeed(0) randomSeed(1) einsetzt, wird in jeder loop die gleiche Folge generiert.
Zu diesem seltsamen Verhalten konnte ich nichts in der Dokumentation finden.
Gruß
Reinhard