randomSeed()
randomSeed(semente)
O gerador de aleatórios do Arduino é, na verdade, uma sequência fixa — ele começa sempre do mesmo ponto quando liga. O randomSeed() é o truque pra "embaralhar o baralho": você dá uma semente diferente e a sequência muda de verdade.
Sintaxe
randomSeed(semente);
Parâmetros
- semente: um número inteiro que define o ponto de partida do gerador. Costuma-se usar algo imprevisível, como a leitura de um pino analógico solto.
Retorno
Nada (void).
Exemplo
void setup() {
Serial.begin(9600);
// pino A0 sem nada ligado capta ruido eletrico: otima semente
randomSeed(analogRead(A0));
}
void loop() {
Serial.println(random(100)); // 0 a 99, sequencia diferente a cada boot
delay(500);
}
Notas e cuidados
- Chame uma única vez, geralmente dentro do
setup(), antes de usarrandom(). - Ler um pino analógico não conectado (ex.:
analogRead(A0)) é a fonte de semente mais popular, pois capta ruído aleatório. - Se você passar sempre a mesma semente, obtém sempre a mesma sequência — útil quando você precisa de resultados reproduzíveis para testar.