Az Arduino programozás egyik fontos szempontja az adatok manipulálása és átalakítása. Amikor számokkal és adatokkal foglalkozunk, gyakran szükséges a különböző adattípusok közötti konvertálás, például bájtokból egész számokká.
Arduino byte konverzió egész számmá
Az Arduinóban a bájt egy 8 bites adattípus, amely 0 és 255 közötti értékeket tud tárolni. Az egész viszont egy 16 bites adattípus, amely -32 768 és 32 767 közötti értékeket tud tárolni.
Egy bájtból egész számmá konvertálásához a következő kód használható:
int eredmény ;
bájt b = 100 ;
eredmény = b ;
Ebben a példában a b bájthoz 100 értéket rendelünk. Az egész eredményhez ezután b értéket rendelünk. Mivel b egy bájt, a rendszer automatikusan egész számmá alakítja, amikor hozzá van rendelve az eredményhez.
Lehetőség van több bájt egyetlen egész számmá alakítására is. Például:
int eredmény ;
csere b1 = 100 ;
b2 bájt = 200 ;
eredmény = ( b2 << 8 ) | b1 ;
Ebben a példában az első b1 bájthoz 100, a második b2 bájthoz pedig 200 értéket rendelünk. A b2 bájtot ezután 8 bittel balra toljuk a << bitenkénti eltolás operátorral. Az eredményt ezután a bitenkénti VAGY | operátor használatával kombináljuk b1 értékével. A végeredmény az egész eredményben tárolódik.
Arduino példakód
Itt van egy példakód az Arduino-ban, amely bemutatja az a bájt egész számra :
üres beállít ( ) {
Sorozatszám. kezdődik ( 9600 ) ;
}
üres hurok ( ) {
bájt b = 100 ;
int eredmény = b ;
Sorozatszám. println ( eredmény ) ; // 100. kimenet
késleltetés ( 1000 ) ;
}
Ebben a példában egy bájt b 100 értéket kap. A bájt ezután automatikusan egész számmá alakul, amikor hozzá van rendelve a változó eredményéhez. A Serial.begin funkció a soros kommunikáció indítására szolgál.
És itt van egy példakód, amely bemutatja a konvertálását több bájt egyetlen egész számba :
üres beállít ( ) {Sorozatszám. kezdődik ( 9600 ) ;
}
üres hurok ( ) {
bájt pi_b = 3.14 ;
bájt sugara_b = 5 ;
int terület = ft_b * sugar_b * sugar_b ;
Sorozatszám. println ( terület ) ; // 75. kimenetek
késleltetés ( 1000 ) ;
}
Ebben a kódban két bájt ft_b és sugar_b 3,14, illetve 5 értékkel rendelkeznek. A bájtokat ezután egész számokká alakítják úgy, hogy a kör területét a pi, a sugár és a sugár szorzataként számítják ki, és az egész számban tárolják. terület . A terület értéke ezután kinyomtatásra kerül a soros monitorra.
A fenti példakód bemutatja, hogyan konvertálhat bájtok és egész számok között az Arduino-ban.
Következtetés
Egy bájt egész számmá konvertálása az Arduino-ban egy egyszerű művelet, amelyet akár az int() függvénnyel, akár egy típusú cast operátorral lehet elérni. Az adattípusok közötti konvertálással az Arduino-felhasználók kihasználhatják a platformon elérhető adattípusok teljes skáláját, és műveletek és számítások széles skáláját hajthatják végre, ez az útmutató az Arduino byte egész számmá konvertálásáról szól.