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 :

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

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

Nemôžete kopírovať obsah tejto stránky