Beskrivelse
Serien.ParseInt () -funksjonen leser inndata fra seriell monitor ett tegn om gangen til den oppdager et ikke-numerisk tegn. Den konverterer deretter den numeriske inngangen til et heltall.
Hvis funksjonen ikke mottar noen inngang, returnerer den null. Hvis den mottar en ugyldig inngang (e.g., En karakter som ikke er et tall), den returnerer det siste gyldige heltallet som det har lest.
Det avsluttes også når den når tidene ut (seriell.setTimeout ()). Denne funksjonen arves fra strømklassen i Arduino -programmering.
Syntaks
Syntaksen til serien.parseInt () -funksjonen er grei. Det er skrevet som følger:
Serie.parseint ()
Serie.parseint (lookahead)
Serie.parseint (lookahead, ignorere)
Dette er metoder i Arduino -programmeringsspråket som brukes til å lese og konvertere karakterer fra seriell kommunikasjonsport til heltall.
Parametere
I denne funksjonen er det ingen parametere. Den leser inngangen fra seriemonitoren og konverterer til et heltall.
se fremover: Det er modusen som brukes av Arduino -programmet for å se fremover etter et heltall i det kommende Datastream. De tillatte datatypene er lookaheadmode.
Følgende er listen over tillatte verdier:
overse: Dette vil hoppe over karakteren som er spesifisert i søket. Den tillatte datatypen er røye. For eksempel kan det hoppe over de tusen skillerne.
Returnerer
Denne funksjonen gir neste gyldige heltall. Datatypen av returnert verdi er lang.
Hvis det ikke gis noen numerisk inngang til denne funksjonen, vil den returnere den siste gyldige heltallverdien som den har lest. Hvis ingen inngang mottas, returnerer funksjonen null.
Arduino eksempelkode
Under kode dekker bruken av seriell.parseInt () funksjon:
int val;
void setup ()
Serie.Begynn (9600);
void loop ()
mens (seriell.tilgjengelig () == 0)
// Vent på brukerinngang
val = serie.parseInt ();
Serie.trykk ("Du skrev inn:");
Serie.println (val);
I denne koden brukes en stund loop som venter på brukerinngang fra seriemonitoren. Når den mottar inngang, bruker den serien.parseInt () funksjon for å konvertere den til heltall. Den skriver deretter ut den angitte verdien til seriemonitoren.
Produksjon
I utgangen når vi sender en sifferverdi, returneres antallet, men når vi sender et alfabet, returneres et null.
Begrensninger i serien.parseint ()
Serien.parseInt () -funksjonen er begrenset til heltallverdier. Funksjonen støtter bare inngangsverdier som er heltall. Den kan ikke håndtere flytende punkt- eller desimaltall.
Forskjell mellom seriell.parseInt () og seriell.Les () Arduino -funksjon
Serien.parseInt () og seriell.Les () Funksjoner er begge innebygde funksjoner i Arduino-programmeringsspråket som brukes til å lese innspill fra seriemonitoren. Imidlertid er de forskjellige i oppførselen sin og hvilken type data de returnerer.
Serie.lese()
De Serie.lese() Funksjonen leser en enkelt byte med data fra seriemonitoren og returnerer den som en heltallverdi.
Funksjonen tar ingen parametere. Den leser en enkelt byte med data fra seriemonitoren og returnerer den som en heltallverdi mellom 0 og 255. I tilfelle av ingen data vil den returnere -1.
Serie.parseint ()
På den annen side, Serie.parseint () Funksjonen leser en sekvens av ASCII -tegn fra seriemonitoren og konverterer dem til en heltallverdi.
Funksjonen tar ingen parametere. Den leser en sekvens av ASCII -tegn fra seriemonitoren og konverterer dem til en heltallverdi. Hvis ingen numerisk tegn mottas, vil funksjonen gi den siste gyldige heltallverdien som den har lest. Hvis ingen inngang mottas, returnerer funksjonen null.
Konklusjon
Serien.ParseInt () -funksjonen leser inndata fra seriell monitor ett tegn om gangen til den oppdager et ikke-numerisk tegn. Den konverterer deretter det numeriske tegnet til heltall. For mer detaljer om denne funksjonen vil eksemplet som er gitt i artikkelen veilede deg.