Funkcie → bitRead()
Popis :
Číta bit premennej, napr. bool, int. Premenna float a double nie sú podporované. Môžete čítať bity premenných až do unsigned long long (64 bitov / 8 bajtov).
Syntax :
bitRead(x, n)
Parametre :
x: číslo, z ktorého sa má čítať.
n: ktorý bit sa má čítať, počnúc 0 pre najmenej významný bit.
Returns :
Hodnota bitu (0 alebo 1).
Príklad kódu :
Tento príklad kódu ukazuje, ako čítať dve premenné, jedna rastúco, druha klesajúco, a zobraziť binárne aj desiatkové hodnoty premenných. Funkcia readBit() prechádza každým bitom premennej a zobrazí ho.
long negative_var = -0; //
unsigned long long positive_var = 0;
//preddefinované veľkosti
//napr. long_size je 32 bitov (čo je 0-31). Preto odčítame "1".
const int bool_size = (1 - 1);
const int int_size = (8 - 1);
const int long_size = (32 - 1);
void setup() {
Serial.begin(9600);
}
void loop() {
//spustite funkciu readBit a odovzdať premenné pos/neg
readBit("Positive ", positive_var);
readBit("Negative ", negative_var);
Serial.println();
//zvýšiť a znížiť premenné
negative_var--;
positive_var++;
delay(1000);
}
/*táto funkcia vezme premennú, vypíše ju po bitoch (začínajúc sprava)
potom vytlačí desatinné číslo na porovnanie.*/
void readBit(String direction, long counter) {
Serial.print(direction + "Binary Number: ");
//opakovať pre každý bit
for (int b = long_size; b >= 0; b--) {
byte bit = bitRead(counter, b);
Serial.print(bit);
}
Serial.print(" Desatinné číslo: ");
Serial.println(counter);
}
Pridaj komentár