Arduino dTOSTRF () -funksjon
Arduino dTOSTRF () -funksjon konverterer doble og flytende punktverdier til en streng. Ved hjelp av denne funksjonen blir en dobbel verdi gitt og konvertert til en ASCII -representasjonsverdi som vil bli lagret inne i strengen. Innringeren er ansvarlig for å gi tilstrekkelig lagring inne i strengen.
DTOSTRF () Funksjon hjelper mens du viser en tekst på en LCD -matriksskjerm ved hjelp av Arduino. Når dataene er konvertert til en streng, vil den fungere som en tekst som kan vises hvor som helst, det kan være en OLED -skjerm eller en hvilken som helst annen skjermmodul.
La oss se syntaksen den følger.
Syntaks
Følgende er syntaks for DTOSTRF () -funksjonen:
DTOSTRF (FloatValue, MinStringWidth, NumafterDecimal, Charbuf_To_Store_String);Parametere
Denne funksjonen tar fire parametere for å konvertere dobbelt til en ASCII -verdi som er lagret i strengen:
1. FloatValue: Det er den første parameteren som tar flyteverdien som vi ønsker å konvertere til streng.
2. MinstringWidth: Dette er den andre parameteren som definerer minimum feltbredde på utgangsstrengen. Hvis vi setter minimum strengbredde mindre enn de konverterende flytende punktverdiene, vil de ekstra sifrene fremdeles vises, og for å telle desimal og negativt tegn er også inkludert som mellomrom. På den annen side, hvis den definerte bredden for streng er mer enn å konvertere verdien, vil de ekstra verdiene bli fylt med blanke mellomrom.
3. numafterDecimal: Tredje parameter er presisjon som beskriver antall sifre etter desimalpunkt. Det avrunder de ekstra sifrene til antallet som er spesifisert i presisjon etter desimalpunkt.
4. Charbuffer: Endelig argument er hvor streng vil bli lagret. Dette er en slags char -matrise som har definert størrelse. Mens du vurderer skiltet, må du vurdere å vurdere:
Følgende er datatypen disse fire parametrene tar:
Returdata
En peker til den konverterte strengen returneres ved hjelp av DTOSTRF () funksjon.
Eksempelkode
dobbel kilde = 789.127; /*Kilde som en dobbel variabel initialiseres*/Her i ovenfor kode er en dobbeltpunktskildevariabel definert med verdi av “789.127 ” Neste en destinasjonsbufferarray initialiseres med en størrelse på "8". I oppsettdelen ved bruk av DTOSTRF () -funksjonskilde vil dobbeltpunktverdien bli konvertert til en streng med minimumsbredde på 5 og desimal presisjon på 2 sifre etter desimal sted. På slutten av koden skrev vi ut resultatet på seriemonitoren.
Produksjon
Utgangsterminalen viser oss en streng som er avrundet til 2 desimalpunkter.
Konklusjon
For å konvertere dobbel verdi til en streng, brukes en Arduino AVR -programmeringsfunksjon kjent som DTOSTRF (). Denne funksjonen tar fire parametere: en kilde som er en flytende punktverdi som vil bli konvertert til en destinasjonsstreng som har definert minimumsbreddeverdi og for presisjon en parameter er definert som avrundet til spesifikke desimalverdier. Denne artikkelen vil bidra til å forstå alle disse på en bedre måte.