Jedním z důležitých aspektů programování pomocí Arduina je manipulace s daty a konverze. Při práci s čísly a daty je často nutné převádět mezi různými datovými typy, například z bajtů na celá čísla.
Převod Arduino Byte na celé číslo
V Arduinu je byte 8bitový datový typ, který může ukládat hodnoty od 0 do 255. Na druhou stranu celé číslo je 16bitový datový typ, který může ukládat hodnoty od -32 768 do 32 767.
Pro převod z bajtu na celé číslo lze použít následující kód:
int výsledek ;
byte b = 100 ;
výsledek = b ;
V tomto příkladu je bajtu b přiřazena hodnota 100. Celému číslu je pak přiřazena hodnota b. Protože b je bajt, je automaticky převedeno na celé číslo, když je přiřazeno k výsledku.
Je také možné převést více bajtů na jediné celé číslo. Například:
int výsledek ;
vyměnit b1 = 100 ;
bajt b2 = 200 ;
výsledek = ( b2 << 8 ) | b1 ;
V tomto příkladu je prvnímu bajtu b1 přiřazena hodnota 100 a druhému bajtu b2 je přiřazena hodnota 200. Bajt b2 je poté posunut o 8 bitů doleva pomocí operátoru bitového posunu <<. Výsledek je pak kombinován s hodnotou b1 pomocí bitového operátoru OR |. Konečný výsledek je uložen v celočíselném výsledku.
Příklad kódu Arduino
Zde je příklad kódu v Arduinu, který demonstruje převod z a byte na celé číslo :
prázdnota založit ( ) {
Seriál. začít ( 9600 ) ;
}
prázdnota smyčka ( ) {
byte b = 100 ;
int výsledek = b ;
Seriál. println ( výsledek ) ; // Výstupy 100
zpoždění ( 1000 ) ;
}
V tomto příkladu bajt b je přiřazena hodnota 100. Bajt je poté automaticky převeden na celé číslo, když je přiřazen k proměnné result. The Serial.begin funkce se používá ke spuštění sériové komunikace.
A zde je příklad kódu, který demonstruje konverzi více bajtů do jednoho celého čísla :
prázdnota založit ( ) {Seriál. začít ( 9600 ) ;
}
prázdnota smyčka ( ) {
byte pi_b = 3.14 ;
byte radius_b = 5 ;
int plocha = ft_b * poloměr_b * poloměr_b ;
Seriál. println ( plocha ) ; // Výstupy 75
zpoždění ( 1000 ) ;
}
V tomto kódu dva bajty ft_b a poloměr_b jsou přiřazeny hodnoty 3,14 resp. 5. Byty se poté převedou na celá čísla výpočtem plochy kruhu jako součinu pí, poloměru a poloměru a uloží se do celého čísla. plocha . Hodnota plochy se poté vytiskne na sériový monitor.
Výše uvedený příklad kódu ukazuje, jak převádět mezi bajty a celými čísly v Arduinu.
Závěr
Převod bajtu na celé číslo v Arduinu je jednoduchá operace, kterou lze provést buď pomocí funkce int() nebo operátoru type cast. Převodem mezi datovými typy mohou uživatelé Arduina využít celou škálu datových typů dostupných na platformě a provádět širokou škálu operací a výpočtů, tento průvodce je zaměřen na převod Arduino Byte na celé číslo.