Come convertire int in galleggiare in Arduino

Come convertire int in galleggiare in Arduino
Quando lavori con Arduino, potresti imbatterti in situazioni in cui è necessario convertire un numero intero in un numero mobile. Ad esempio, quando si misurano gli ingressi analogici o si eseguono calcoli che richiedono punti decimali, dovrai convertire i valori interi in numeri a punto mobile. Questo articolo copre il processo di conversione di un INT in un galleggiante in Arduino.

Comprendere la differenza tra int e galleggiante in Arduino

int e galleggianti sono due importanti tipi di dati in Arduino. INT viene utilizzato per conservare i numeri interi, mentre il galleggiante viene utilizzato per conservare numeri reali con un punto decimale. Ad esempio, useresti INT per archiviare il valore del numero di volte in cui viene eseguito un ciclo, mentre si utilizza il galleggiante per archiviare il valore di una lettura della temperatura.

Comprensione dei numeri interi

I numeri interi, o int, sono un tipo di dati in Arduino che può contenere numeri interi (positivi, negativi o zero) in un intervallo specifico. Un INT può archiviare un valore compreso tra -32.768 e 32.767.

Comprensione dei numeri a punto mobile

Un galleggiante è un tipo di dati in Arduino che può contenere valori decimali. Le galleggianti possono archiviare valori molto più grandi di int tra (-3.4028235e38 a 3.4028235e38) ma richiedono più memoria per archiviare.

Come convertire int in galleggiare in Arduino

Ora che abbiamo una comprensione di base di int e float, esploriamo il processo di conversione in fluttuante in Arduino.

Passaggio 1: dichiarare la variabile int
Il primo passo nella conversione di un int in un galleggiante è dichiarare la variabile int. Ad esempio, supponiamo che abbiamo una variabile intera chiamata "myint":

int myint = 10;

Passaggio 2: dichiarare la variabile float
Successivamente, dichiariamo la variabile float che memorizzerà il valore intero convertito. Ad esempio, chiamiamo la variabile float "myfloat":

fluttuare myfloat;

Passaggio 3: eseguire la conversione
Infine, eseguiamo la conversione da int al galleggiante assegnando la variabile int alla variabile float. Per questo utilizziamo la funzione float ():

myfloat = float (myint);

La funzione "float ()" converte il valore intero in un numero di punto mobile.

Typecasting int per galleggiare in Arduino

Il tipo di tipografia nella programmazione Arduino è un altro modo per convertire un tipo di dati in un altro. In Arduino, il tipo di tipografia da int al galleggiante viene eseguito posizionando il tipo di dati che si desidera convertire tra parentesi davanti alla variabile che si desidera convertire. Ecco un esempio:

int myint = 10;
fluttuare myfloat = (float) myint;

In questo esempio, abbiamo prima assegnato il valore di 10 alla variabile myint. Abbiamo quindi assegnato il valore di myint alla variabile myfloat, ma questa volta abbiamo esplicitamente lanciato il valore a un tipo di dati float.

La variabile myfloat ora contiene il valore 10.0, che è un tipo di dati float. La conversione da int al galleggiante viene eseguita esplicitamente dal typecasting.

Codice di esempio Arduino

Ecco un codice di esempio in Arduino che converte un valore int in un galleggiante:

void setup ()
Seriale.Inizia (9600);
int myint = 423; // Esempio Valore intero
fluttuare myfloat = (float) myint; // Converti int in galleggiare
// stampa i valori originali e convertiti
Seriale.print ("Valore intero:");
Seriale.println (myint/100);
Seriale.print ("Valore float:");
Seriale.println (myfloat/100);

void loop ()

Nel codice sopra, definiamo innanzitutto una variabile intera chiamata myint e inizializzalo con il valore 423 (Puoi sostituire questo valore con qualsiasi intero che desideri convertire.

Quindi, creiamo una variabile float chiamata myfloat e assegnargli il valore di myint convertito in un galleggiante. Per fare questo, abbiamo semplicemente lanciato myint a un galleggiante posizionando (float) prima di esso.

Infine, utilizziamo l'oggetto seriale per stampare il valore intero originale e il valore a virgola mobile convertito al monitor seriale. Il programma stampa i valori della variabile interi e la variabile a punto mobile diviso da 100 al monitor seriale:

Produzione
In output possiamo vedere un valore intero e un valore a punto mobile con punto decimale che mostra che ora è convertito.

Usando il galleggiante in Arduino

Una volta che hai convertito con successo un INT in un galleggiante ad Arduino, puoi usarlo nel tuo progetto. Ecco alcune cose da tenere a mente quando si usano i galleggianti in Arduino:

  • I dati float occupano più memoria di int. Assicurati che sia disponibile sufficiente memoria sulla scheda Arduino prima di utilizzare troppe variabili float.
  • I dati galleggianti possono essere meno accurati dei dati INT. Questo perché i galleggianti sono approssimazioni di numeri reali e possono introdurre errori di arrotondamento.
  • I dati float sono più lenti da elaborare di int. Questo perché il processore Arduino è ottimizzato per l'aritmetica intera.
Tipo di dati Misurare Intervallo di valori memorizzato
galleggiante 4 byte (32 bit) -3.4028235e38 a 3.4028235E38
int 2 byte (16 bit) -32768 a 32767

Conclusione

La conversione di un INT in un galleggiante in Arduino è un semplice processo che può tornare utile quando si lavora con ingressi analogici o si eseguono calcoli che richiedono punti decimali. Seguendo i passaggi di questo articolo, è possibile convertire facilmente i valori interi in numeri a punto mobile.