Jak przekonwertować INT, aby unosić się w Arduino

Jak przekonwertować INT, aby unosić się w Arduino
Podczas pracy z Arduino możesz natknąć się na sytuacje, w których musisz przekonwertować liczbę całkowitą na numer zmiennoprzecinkowy. Na przykład, gdy mierzysz analogowe wejścia lub wykonywasz obliczenia wymagające punktów dziesiętnych, będziesz musiał przekonwertować wartości liczb całkowitych na liczby zmiennoprzecinkowych. W tym artykule obejmuje proces przekształcania INT na pływaka w Arduino.

Zrozumienie różnicy między INT a pływakiem w Arduino

Int i Float to dwa ważne typy danych w Arduino. INT służy do przechowywania liczb całkowitych, podczas gdy pływak jest używany do przechowywania liczb rzeczywistych z punktem dziesiętnym. Na przykład użyłbyś INT do przechowywania wartości liczby razy wykonywanej pętli, podczas gdy używa się do przechowywania wartości odczytu temperatury.

Zrozumienie liczb całkowitych

Liczby całkowite, lub int, są typem danych w Arduino, które mogą pomieścić liczby (dodatnie, ujemne lub zerowe) w określonym zakresie. INT może przechowywać wartość od -32 768 do 32 767.

Zrozumienie liczb zmiennoprzecinkowych

Float to typ danych w Arduino, który może przechowywać wartości dziesiętne. pływaki mogą przechowywać znacznie większe wartości niż int między (-3.4028235e38 do 3.4028235e38), ale wymagają więcej pamięci do przechowywania.

Jak przekonwertować INT, aby unosić się w Arduino

Teraz, gdy mamy podstawowe zrozumienie INT i Float, zbadajmy proces konwersji INT, aby unosić się w Arduino.

Krok 1: Dokonaj zmiennej INT
Pierwszym krokiem w przekształceniu Int na zmiennoprzecinę jest deklarowanie zmiennej int. Powiedzmy na przykład, że mamy zmienną całkowitą o nazwie „Myint”:

int myint = 10;

Krok 2: Zadeklaruj zmienną zmiennoprzecinkową
Następnie deklarujemy zmienną pływową, która będzie przechowywać przekonwertowaną wartość liczb całkowitą. Na przykład nazwijmy zmienną zmiennoprzecinkową „Myfloat”:

pływać myfloat;

Krok 3: Wykonaj konwersję
Na koniec wykonujemy konwersję z INT na float, przypisując zmienną Int do zmiennej pływowej. W tym celu używamy funkcji float ():

myfloat = float (myint);

Funkcja „float ()” przekształca wartość liczbową na liczbę zmiennoprzecinkową.

Typecasting Int do pływania w Arduino

Typecasting w programowaniu Arduino to inny sposób konwersji jednego typu danych na inny. W Arduino Typecasting od int float odbywa się poprzez umieszczenie typu danych, na które chcesz przekonwertować w nawiasach przed zmienną, którą chcesz przekonwertować. Oto przykład:

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

W tym przykładzie najpierw przypisaliśmy wartość 10 do zmiennej miint. Następnie przypisaliśmy wartość MyINT do zmiennej MyFloat, ale tym razem wyraźnie rzuciliśmy wartość do typu danych zmiennoprzecinkowych.

Zmienna MyFloat posiada teraz wartość 10.0, który jest typem danych zmiennoprzecinkowych. Konwersja z INT na float jest wykonywana jawnie przez typecasting.

Przykładowy kod Arduino

Oto przykładowy kod w Arduino, który przekształca wartość INT na Float:

void setup ()
Seryjny.rozpocząć (9600);
int myint = 423; // Przykładowa wartość liczb całkowita
float myfloat = (float) myint; // Konwertuj int na float
// Wydrukuj oryginalne i przekonwertowane wartości
Seryjny.print („Wartość całkowitą:”);
Seryjny.println (myint/100);
Seryjny.print („Float Value:”);
Seryjny.println (myfloat/100);

void Loop ()

W powyższym kodzie najpierw definiujemy zmienną całkowitą o nazwie myint i zainicjuj go o wartości 423 (Możesz zastąpić tę wartość dowolną liczbą całkowitą, którą chcesz przekonwertować.

Następnie tworzymy zmienną zmiennoprzecinkową o nazwie Myfloat i przypisz go wartość myint Przekształcony na pływak. Aby to zrobić, po prostu rzuciliśmy myint do pływaka, umieszczając (pływak) przed nim.

Na koniec używamy obiektu szeregowego do wydrukowania oryginalnej wartości liczb całkowitych i przekonwertowanej wartości zmiennoprzecinkowej na monitor szeregowy. Program drukuje wartości zmiennej liczby całkowitej i zmiennej zmiennoprzecinkowej podzielonej przez 100 do monitora szeregowego:

Wyjście
W wyjściu możemy zobaczyć wartość całkowitą i wartość zmiennoprzecinkową z punktem dziesiętnym, który pokazuje, że jest teraz konwertowana.

Używając float w Arduino

Po pomyślnym przekonwertowaniu INT na float w Arduino możesz użyć go w swoim projekcie. Oto kilka rzeczy, o których należy pamiętać podczas używania pływaków w Arduino:

  • Dane zmiennoprzecinkowe wymagają więcej pamięci niż int. Upewnij się, że na płycie Arduino jest dostępna wystarczająca ilość pamięci przed użyciem zbyt wielu zmiennych pływakowych.
  • Dane zmiennoprzecinkowe mogą być mniej dokładne niż dane INT. Wynika to z faktu, że pływaki są przybliżeniami liczb rzeczywistych i mogą wprowadzać błędy zaokrąglenia.
  • Dane zmiennoprzecinkowe są wolniejsze w przetworzeniu niż int. Wynika to z faktu, że procesor Arduino jest zoptymalizowany do arytmetyki całkowitej.
Typ danych Rozmiar Przechowywany zakres wartości
platforma 4 bajty (32 -bitowe) -3.4028235e38 do 3.4028235e38
int 2 bajty (16 bitów) -32768 do 32767

Wniosek

Przekształcenie INT na pływak w Arduino to prosty proces, który może się przydać podczas pracy z analogowymi wejściami lub wykonywanie obliczeń wymagających punktów dziesiętnych. Podążając za krokami tego artykułu, możesz łatwo przekonwertować wartości liczb całkowitych na liczby zmiennoprzecinkowe.