Comment générer les nombres pseudo-aléatoires à Arduino

Comment générer les nombres pseudo-aléatoires à Arduino

Pour générer les nombres pseudo-aléatoires dans Arduino, nous utilisons les fonctions intégrées aléatoire (), nous comprenons d'abord pourquoi nous devons générer les nombres pseudo-aléatoires? Dans la vraie vie, nous devons générer des codes aléatoires à des fins de vérification. De même, dans les jeux numériques, nous devons générer des mots de passe aléatoires. À cette fin, nous devons générer les nombres aléatoires dans Arduino.

Dans cet article, nous discuterons des techniques par lesquelles nous pouvons générer des nombres aléatoires à l'aide d'exemples.

Comment générer des nombres aléatoires dans Arduino

Il existe deux fonctions intégrées dans Arduino qui sont utilisées pour générer les nombres pseudo-aléatoires:

  • aléatoire()
  • Randomsseed ()

Nous expliquerons ces deux fonctions en détail.

aléatoire(): Cette fonction est utilisée pour générer les nombres pseudo-aléatoires en définissant la plage de nombres ou toute condition spécifique. La syntaxe générale de l'utilisation de la fonction aléatoire () est:

aléatoire (max)

Selon cette syntaxe, vous devez définir un numéro entier, à la suite de laquelle il générera les nombres moins que ce nombre particulier. Pour comprendre l'utilisation de cette syntaxe, considérez l'exemple:

int randomnnumber; vide setup ()
En série.commencer (9600);

VOID LOOP ()
RandomNumber = Random (500);
En série.println (randomNumber);
retard (1000);


Nous avons déclaré une variable de type de données int à l'échelle mondiale avec le nom «RandomNumber» dans l'exemple de code ci-dessus. Dans la boucle vide, en utilisant la fonction aléatoire (), nous avons stocké des valeurs dans RandomNumber et spécifié les nombres générés devraient être inférieurs à 500. Ensuite, avec l'aide de la communication en série, nous avons affiché le résultat sur la sortie du moniteur série. Et à la fin, nous avons utilisé la fonction de retard pendant une seconde.

La sortie du code est:

Chaque seconde, un nombre aléatoire est affiché.

L'autre façon d'utiliser le Random () est de spécifier la plage:

aléatoire (min, max);

Vous devez utiliser la fonction aléatoire avec la plage spécifiée de nombres pseudo-aléatoires en mentionnant les limites maximales et minimales. Ainsi, les nombres générés doivent être dans la plage spécifiée, par exemple, nous considérons un autre exemple:

int randomnnumber; vide setup ()
En série.commencer (9600);

VOID LOOP ()
RandomNumber = Random (100 500);
En série.println (randomNumber);
retard (1000);


Le code utilisé dans cet exemple est le même que l'exemple ci-dessus, la seule différence est que nous avons spécifié la plage du nombre aléatoire généré entre 100 et 500. La sortie du code sera:


RandomSeEd (): L'autre fonction intégrée pour générer les nombres aléatoires est en utilisant la fonction RandomSeEd (). La fonction aléatoire () génère les nombres pseudo-aléat. La différence entre les deux fonctions est que la sortie de Random () est parfois prévisible alors qu'il n'est pas possible de prédire la sortie si la fonction RandomSeEd () est utilisée. La syntaxe est de la fonction aléatoire est:

Random (Seed)

graine : un long nombre non signé

Supposons que la broche 4 est une broche non connectée analogique, puis la fonction sera utilisée comme:

Randomseed (AnalogueRead (4));

Le RandomSeEd () générera un nombre différent chaque fois que le code est exécuté pour s'assurer que la broche n'est pas connectée.

Conclusion

Pour générer les nombres pseudo-aléatoires dans Arduino, nous pouvons utiliser les fonctions intégrées; Random () et RandomSeEd (), d'Arduino. Ces fonctions génèrent des nombres aléatoires qui peuvent être utilisés pour divers projets d'Arduino. Dans cet article, nous avons expliqué les méthodes de génération des nombres aléatoires dans Arduino à l'aide d'exemples.