Establece un valor, o semilla, como punto de partida para la función random().
randomSeed(valor); // Hace que valor sea la semilla del random
Debido a que Arduino es incapaz de crear un verdadero número aleatorio, randomSeed te
permite colocar una variable, constante, u otra función de control dentro de la función
random, lo que permite generar números aleatorios "al azar".
Hay una variedad de semillas, o funciones, que pueden ser utilizados en esta función, incluido
millis() o incluso analogRead() que permite leer ruido eléctrico a través
de un pin analógico.
La función random devuelve un número aleatorio entero de un intervalo de valores especificado entre los valores min y max.
valor = random(100, 200); // Asigna a 'valor' un numero aleatorio entre 100-200
Nota: Usa esta funcián después de usar el randomSeed().
El siguiente ejemplo genera un valor aleatorio entre 0-255 y lo envía a una salida analógica PWM:
int randNumber; // Variable que almacena el valor aleatorio
int led = 10; // Define led como 10
void setup() // No es necesario configurar nada
{
}
void loop()
{
randomSeed(millis()); // Genera una semilla a partir de millis()
randNumber = random(255); // Genera número aleatorio entre 0-255
analogWrite(led, randNumber); // Envía a la salida led de tipo PWM el valor
delay(500); // Espera 0,5 seg.
}