bitRead()
bitRead(x, n)
Todo número por dentro é uma sequência de bits, e às vezes você quer olhar um bit só — tipo checar se uma flag está ligada ou ler um sensor que empacota vários status num byte. O bitRead() devolve exatamente o valor daquele bit.
Sintaxe
bitRead(x, n);
Parâmetros
- x: o número que você quer inspecionar.
- n: qual bit ler, contando a partir de 0 (o bit menos significativo, mais à direita).
Retorno
O valor do bit: 0 ou 1.
Exemplo
void setup() {
Serial.begin(9600);
byte estado = 0b00100101; // bits 0, 2 e 5 ligados
Serial.println(bitRead(estado, 0)); // 1
Serial.println(bitRead(estado, 1)); // 0
Serial.println(bitRead(estado, 5)); // 1
}
void loop() {
}
Notas e cuidados
- A contagem começa em 0: o bit 0 é o da direita (menos significativo).
- Cuidado pra não pedir um bit que não existe no tipo (ex.: bit 8 num
byte, que só vai de 0 a 7).