Appunti di programmazione su Arduino: numeri casuali

randomSeed(seed)

Imposta un valore di partenza per generare un numero casuale.

Poiché Arduino non è in grado di creare un vero numero casuale la funzione randomSeed consente di inserire una variabile, una costante o un’altra funzione casuale per generare numeri “casuali” ancora più casuali 🙂
randomSeed viene utilizzata come base di partenza per generare un numero casuale, può essere utilizzata in diversi modi associandola ad altre funzioni, come ad esempio utilizzare il valore restituito da millis() funzione che restituisce il numero di millisecondi da quando la scheda Arduino è in funzione, o ancora con analogRead() per leggere il rumore elettrico attraverso un pin analogico, in questo modo trattandosi di rumore, che varia in modo caotico, la analogRead() restituirà un valore “abbastanza” casuale.

random(max)
random(min, max)

La funzione random permette di restituire numeri pseudo-casuali in un intervallo specificato tra un valore minimo e massimo.

Nota: utilizzare questa funzione dopo aver utilizzato la funzione randomSeed().

L’esempio che segue crea un numero casuale compreso tra 0 e 255 e fornisce un segnale PWM su un pin PWM uguale al valore casuale:

Come potete notare viene utilizzata la funzione randomSeed(millis()) per inizializzare il generatore di numeri casuali, agendo in questo modo siamo abbastanza sicuri di generare numri sempre diversi.

Per le lezioni precedenti consultare la sezione Appunti di programmazione che trovate nella pagina Arduino di questo sito.

Articoli simili:

Questa voce è stata pubblicata in arduino e contrassegnata con , , , . Contrassegna il permalink.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.