Generere tilfeldige tall ved bruk av esptop 10 og arduino ide

Generere tilfeldige tall ved bruk av esptop 10 og arduino ide
Ved hjelp av ESP32 kan vi lage forskjellige prosjekter og lage unike produkter som kan løse flere problemer. ESP32 er et mikrokontrollertavle, så ved å bruke Arduino IDE -programmeringsfunksjoner kan vi lage interessant utgang. Denne leksjonen guider hvordan man kan generere tilfeldige tall ved hjelp av ESP32 -styret.

Hva er tilfeldige tall

Tilfeldige tall spiller en viktig rolle i sikkerhet og kryptering. Du har kanskje brukt forslag til Google -passord. Det fungerer på et prinsipp som på en eller annen måte ligner på å generere tilfeldige tall.

Tilfeldige tall er en sekvens av tall som man ikke kan forutsi, og det er et tall som velges fra et sett med tall.

Hvorfor vi trenger tilfeldige tall

Tilfeldige tall er viktige for kryptografiske operasjoner, moderne databehandling og simuleringer. Tilfeldige tall hjelper også til å forbedre datasikkerheten. Her er få hovedapplikasjoner av tilfeldige tall:

  • Tilfeldige tall som brukes i algoritmer
  • Prosessuelt generert innhold som tilfeldige bilder, navn og mange andre
  • For simuleringer som er ikke -beterministiske, for eksempel om mønster, terninger stokking og værmønster

Som nå forstår vi de grunnleggende applikasjonene til ESP32 Random Number Generator lar oss ta en titt på kode og generere noen tilfeldige tall.

Funksjon for å generere tilfeldig tall i ESP32

ESP32 -brettet inneholder en maskinvare tilfeldig tallgenerator som bruker funksjonen esp_random ().

esp_random () tar ingen argumenter og gir oss en verdi tilfeldig generert fra 0 til uint32_max (det er den maksimale verdien en usignert int kan lagre inne i den).

Merk: En ting å huske her er ESP32 Maskinvare Random Number Generator Works ved hjelp av WiFi og Bluetooth. Det sanne tilfeldig tall genereres bare når begge er aktivert. Hvis disse to er deaktivert, kan ESP32 bare generere en Pseudo -nummer. For mer informasjon, vennligst sjekk espressif ESP32 Random Number Documentation.

Interessant informasjon: En interessant informasjon om ESP32 Maskinvare Random Number Generator er at ESP32 har passert Dieharder tilfeldig tall -testsuite når en dataprøve på 2 GB tas med ESP32 når WiFi er aktivert. Die hardere er en test for tilfeldig tallgenerator.

Syntaks
Her er syntaksen til ESP32 -funksjonen for tilfeldig tall:

esp_random ()

Komme tilbake
Denne funksjonen returnerer en tilfeldig verdi mellom 0 og uint32_max.

Kode for å generere et tilfeldig tall

Åpne Arduino IDE og last opp den gitte koden i ESP32 for å generere et tilfeldig tall mellom 0 og 4294967295 (maksimal usignert INT -verdi).

void setup ()
Serie.Begin (115200); /*Baud rate definert*/

void loop ()
Serie.println ("**********");
Serie.print ("tilfeldig tall =");
Serie.println (esp_random ()); /*Skriv ut et hvilket som helst tilfeldig tall fra 0 til største usignerte int*/
forsinkelse (2000); /*Forsinkelse på 2 sek*/

Produksjon
Etter å ha lastet opp kode, kan vi se utdataene på seriemonitoren. Her kan vi se ESP32 generert to forskjellige tilfeldige tall.

Kode for å generere et tilfeldig tall mellom spesifikt område

Anta at hvis ESP32 WiFi ikke er aktivert, er det et alternativ til funksjon esp_random (). Vi kan bruke Arduino Random Number Generator -funksjonen (tilfeldig()).

Ved å bruke denne funksjonen kan vi generere et hvilket som helst tilfeldig tall i et spesifisert område.

Åpne Arduino IDE og last opp en gitt kode som vil gi oss et tilfeldig tall mellom 10-20.

void setup ()
Serie.Begin (115200); /*Baud rate definert*/

void loop ()
Serie.println ("**********");
Serie.print ("tilfeldig tall mellom 10 og 20 =");/*Skriv ut et hvilket som helst tilfeldig tall mellom 10 og 20*/
Serie.println (tilfeldig (10,20));
forsinkelse (2000); /*Forsinkelse på 2 sek*/

Produksjon
Følgende utgang kan sees på seriemonitoren: Et tilfeldig tall genereres hvert 2. sekund.

Vi har dekket funksjonene som ESP32 brukte for å generere tilfeldige tall.

Konklusjon

Tilfeldige tall spiller en viktig rolle i sannsynlighet og statistikk. Det er også nyttig i sikkerhetskryptering og kryptografiske operasjoner. Denne leksjonen vil guide deg om å generere forskjellige tilfeldige tall. Vi kan også definere et område for å få et tilfeldig tall.