Arduino - ZufallszahlenZufallszahlen werden mit der Funktion random erzeugt. Man kann Zufallszahlen
zwischen Null und einem Maximum, oder zwischen zwei Grenzwerten erzeugen.
random(max)Random(max) liefert eine Zufallszahl zwischen 0 und max zurück.
random(min, max)Random(min, max) liefert eine Zufallszahl zwischen min und max zurück.
Beispiel:
// ----------------------------------------------------------
// Zufallszahlen mit random
int Zufallszahl;
void setup() {
Serial.begin(9600);
}
void loop() {
Zufallszahl = random(5,15);
Serial.print ("Nächste Zufallszahl ist = ");
Serial.println (Zufallszahl);
delay(2000);
}
// ----------------------------------------------------------
randomSeed(x)RandomSeed (StartParameter) bestimmt für die Funktion random den Startwert. Der
Zufallsgenerator wird mit einem vom Seed-Parameter bestimmten Wert gestartet. Das verursacht,
dass nach dem Start des Programms jeweils andere Zufallszahlen generiert werden. Den Wert
des Seed-Parameters kann man bei Bedarf über digitale oder analoge Eingänge von Extern
beeinflussen.
// ----------------------------------------------------------
// Zufallszahlen mit konstantem Parameter von randomSeed
int Zufallszahl;
void setup() {
Serial.begin(9600);
}
void loop() {
for (int i=1; i<5; i++) {
Serial.print ("Zufallszahl-Reihe mit einem konstanten Seed-Startwert: ");
randomSeed(10);
for (int j=0; j<10; j++) {
Zufallszahl = random(15);
Serial.print (Zufallszahl);
Serial.print (" ");
}
Serial.println ();
delay (1000);
}
}
// ----------------------------------------------------------
// ----------------------------------------------------------
// Zufallszahlen mit einem sich veränderndem Parameter von randomSeed
int Zufallszahl;
void setup() {
Serial.begin(9600);
}
void loop() {
for (int i=1; i<5; i++) {
Serial.print ("Meine Zufallszahl-Reihe: ");
randomSeed(i);
for (int j=0; j<10; j++) {
Zufallszahl = random(15);
Serial.print (Zufallszahl);
Serial.print (" ");
}
Serial.println ();
delay (1000);
}
}
// ----------------------------------------------------------
// ----------------------------------------------------------
// Zufallszahlen mit sich veräderndem Parameter von randomSeed
// Parameter Bestimmung über einen nicht verdrahteten analogen Eingang.
int Zufallszahl;
void setup() {
Serial.begin(9600);
}
void loop() {
for (int i=1; i<5; i++) {
Serial.print ("Meine Zufallszahl-Reihe: ");
randomSeed(analogRead(1));
for (int j=0; j<10; j++) {
Zufallszahl = random(15);
Serial.print (Zufallszahl);
Serial.print (" ");
}
Serial.println ();
delay (1000);
}
}
// ----------------------------------------------------------
Beispiel mit einem verdrahtetem analogen Eingang (Kondensator)
Google-Suche auf MEINE-SCHALTUNG.de :
|
|