Hvordan konvertere desimalnummer til heksadesimal ved bruk av Arduino

Hvordan konvertere desimalnummer til heksadesimal ved bruk av Arduino
Arduino -programmering har flere funksjoner for å lese og manipulere data ved hjelp av seriell kommunikasjon. Ved å bruke disse funksjonene kan vi designe forskjellige Arduino -prosjekter og lage en sanntidsløsning. En vanlig oppgave når du jobber med mikrokontrollere er å konvertere desimalnumre til heksadesimal format. I denne artikkelen vil vi utforske hvordan du konverterer desimaltall til heksadesimal ved hjelp av Arduino, trinn for trinn.

Introduksjon til nummersystem i Arduino

Før du dykker inn i prosessen med å konvertere desimaltall til heksadesimal ved bruk av Arduino, er det viktig å forstå det grunnleggende i de to tallsystemene.

  • Desimal er et base-10 nummereringssystem. Dette betyr at desimaltall bruker ti sifre (0-9)
  • Heksadesimal er et base-16 nummereringssystem. Disse tallene bruker seksten sifre (0-9, A-F)

Konverter et desimaltall til heksadesimal ved hjelp av Arduino -kode

For å konvertere et desimaltall til heksadesimal ved hjelp av Arduino-kode kan vi bruke den innebygde funksjonen TOHEX (). Denne funksjonen tar desimal som inngang og returnerer heksadesimal nummer i en streng.

Den resulterende heksadesimale verdien kan deretter skrives ut til seriemonitoren eller brukes i ytterligere beregninger i Arduino -skissen.

Arduino -kode for desimal til heksadesimal omformer

Under gitt er Arduino -koden som konverterer et brukerinngangsnummer til heksadesimal:

void setup ()
Serie.Begynn (9600); // Initialiser seriell kommunikasjon på 9600 baud

void loop ()
lang desimal_input;
// be brukeren om en desimalinngang
Serie.println ("Skriv inn et desimaltall:");
// Vent på innspill fra brukeren
mens (seriell.tilgjengelig () == 0)
// Les desimalinngangen fra brukeren
desimal_input = seriell.parseInt ();
// Konverter desimalinngangen til heksadesimal og skriv den ut
Serie.print ("den heksadesimale ekvivalenten til");
Serie.print (desimal_input);
Serie.print ("er 0x");
Serie.println (desimal_input, hex);

I Setup () -funksjonen startet vi med å definere seriell kommunikasjon. Neste i Loop () -funksjonen definerer vi en heltallvariabel desimal_input å holde brukerens innspill.

Vi ber brukeren om å oppgi et desimaltall ved å skrive ut en melding til seriemonitoren. Neste program vil vente med å motta brukerinngangen ved hjelp av serien.Tilgjengelig () -funksjon, som gir de totale byte som er tilgjengelige å lese.

Når inngangen er tilgjengelig, leser vi desimalinngangen ved hjelp av serien.parseInt () funksjon. Desimalinngangen konverteres til heksadesimal ved bruk av hex -alternativet i serien.println () funksjon.

Endelig skrives det konverterte heksadesimalet ut på seriemonitoren.

Bruk av Arduino -basert desimal til heksadesimal omformer

Her er fem bruk av desimal til heksadesimal tallomformer ved bruk av Arduino:

Viser sensoravlesninger: Mange sensorer utgangsdata i desimalformat, som kan konverteres til heksadesimal før du vises på en LED- eller LCD -skjerm ved hjelp av Arduino.

Kommuniserer med andre enheter: Det meste av kommunikasjonen mellom Arduino og andre enheter gjøres ved hjelp av heksadesimal nummer eller format. For det må vi konvertere desimal til heksadesimal.

Adressere minneplasser: Minneadresser i datamaskiner vises generelt i heksadesimal.

Utføre bitvis operasjoner: Bitvis operasjoner som skifting og maskering utføres ofte ved hjelp av heksadesimale tall.

Konklusjon

Å konvertere desimalnumre til heksadesimal ved bruk av Arduino er en enkel prosess som kan gjøres ved hjelp av serien.println () -funksjon sammen med standard tohex () arduino -funksjon. Trinnene som er forklart i denne skrivingen, vil bidra til å enkelt konvertere desimaltall til heksadesimal.