Arduino è una piattaforma basata su microcontrollori costituita da software e hardware. La programmazione Arduino si basa sul linguaggio C/C ++. Funzioni multiple utilizzate in Arduino sono ereditate da entrambe queste lingue. Questo articolo descriverà diversi modi di convertire Int in stringa usando le funzioni C in Arduino IDE.
Metodi per convertire INT in String in Arduino
La conversione int in stringa è il processo di conversione di un tipo di dati interi in un tipo di dati stringa utilizzando il codice Arduino. Ciò è spesso necessario quando si lavora con i linguaggi di programmazione, poiché diversi tipi di dati hanno caratteristiche e metodi di manipolazione diversi.
Per esempio, Un intero può essere utilizzato per eseguire calcoli matematici, mentre una stringa può essere utilizzata per contenere i dati di testo. Per utilizzare i dati archiviati in un numero intero come stringa, deve prima essere convertito nel tipo di dati della stringa.
Sono disponibili più funzioni C che possono essere utilizzate nella programmazione Arduino per la conversione Int in String. Di seguito sono riportati i tre modi che possono convertire qualsiasi numero intero in una stringa:
1: usando la funzione string ()
La funzione stringa nella programmazione Arduino è il modo più semplice per trasformare Int in String. La funzione String () costruisce un'istanza di classe stringa. Utilizzando questa funzione diversi tipi di dati possono essere convertiti in stringa incluso INT.
Sintassi
String () Sintassi della funzione:
String (Val)
Parametri:
Questa funzione prende un parametro:
Val: Una variabile per formattare in una stringa.
Ritorna:
Restituisce una stringa.
Codice di esempio
Di seguito è riportato il codice di esempio in cui inizializziamo una variabile "UN"Con il tipo di dati INT. Dopodiché una nuova stringa viene inizializzata con il nome Mystr. Poi usando il Corda() variabile funzione UN viene restituito come istanza di stringa.
void setup ()
Seriale.Inizia (9600); /*Tasso di baud per comunicazione seriale*/
int a = 1234; /*Inizializza una stringa con valore 1234*/
String Mystr; /*La nuova stringa è definita*/
mystr = string (a); /*Converti int in string*/
Seriale.print ("intero convertito in stringa:");
Seriale.println (mystr); /*Stampa Valore stringa sul monitor seriale*/
void loop ()
Possiamo vedere la stringa del convertitore nel monitor seriale IDE.
2: usando la funzione sprintf ()
Sprintf sta per la stampa di stringhe. Questa funzione prende valore dalle variabili e la memorizza all'interno del buffer. Per mostrare la variabile formattata come stringa all'interno di quel buffer utilizziamo il Seriale.funzione di stampa ().
Sintassi
sprintf (buffer, "%d", myint);
Parametri
Questa funzione prende due argomenti.
ritorna
Restituisce un buffer che memorizza una stringa.
Per informazioni più dettagliate su Arduino sprintf () Funzione Leggi l'articolo Come stampare più variabili utilizzando la funzione sprintf () in Arduino Serial Monitor.
Codice di esempio
Nel codice dato un int La variabile è inizializzata. Dopodiché usando il sprintf () Funzione Questo valore intero viene convertito in stringa e memorizzato all'interno del buffer.
void setup ()
Seriale.Inizia (9600); /*Tasso di baud per comunicazione seriale*/
int myint = 123; /*Int definito*/
Char Buffer [10]; /*Dimensione buffer definita*/
sprintf (buffer, "%d", myint); /*Converti int in una stringa e memorizza all'interno di un buffer*/
String mystring = string (buffer);
Seriale.print ("intero convertito in stringa:");
Seriale.println (mystring); /*Stampa Valore stringa sul monitor seriale*/
void loop ()
L'output rappresenta l'intero convertito in stringa.
3: usando la funzione dtostrf ()
Arduino funzione dtostrf () consente di specificare la larghezza minima e il numero di luoghi decimali per la stringa risultante.
Questa funzione può passare un doppio valore e convertirlo in una rappresentazione ASCII che viene memorizzata all'interno corda.
Sintassi
dTOSTRF (floatvalue, Minstringwidth, NimafterDecimal, chabuf_to_store_string);
Parametri
Questa funzione prende 4 argomenti:
Ritorno
Questa funzione restituisce un nuovo puntatore verso la stringa convertita da int.
Per una guida più dettagliata sul dtostrf () funzione leggi il tutorial Arduino dtostrf () funzione -Rumpisci i galleggianti in stringhe.
Codice di esempio
Ciò creerà una stringa con una larghezza minima di 6 caratteri e nessun decimale, quindi la stringa risultante sarà " 123".
void setup ()
Seriale.Inizia (9600); /*Tasso di baud per comunicazione seriale*/
int myint = 123; /*Int definito*/
Char Buffer [10]; /*Dimensione buffer definita*/
dtostrf (myint, 6, 0, buffer); /*Converti i valori doppi e galleggianti in stringa*/
String mystring = string (buffer);
Seriale.print ("intero convertito in stringa:");
Seriale.println (mystring); /*Stampa Valore stringa sul monitor seriale*/
void loop ()
L'output rappresenta la stringa " 123". Tre spazi sinistro vengono lasciati poiché la larghezza definita per la stringa di uscita è 6.
Conclusione
La programmazione Arduino prende la maggior parte della sua funzione da C/C++. Per convertire l'intero in stringa nella programmazione di Arduino, ci sono tre diverse funzioni che includono dtostrf (), sprintf () e string (). Utilizzando queste funzioni, uno qualsiasi degli interi può essere convertito in stringa e visualizzato su monitor seriale o sul display LCD I2C o OLED.