pues de entrada te diria que si, aunque tendria que explicarme un poco mas tu necesidad.
Por ahora voy con esto a ver si te resulta.
Tu tienes una variable tipo BYTE y lo que quieres es a partir de esa tener ocho variables tipo BOOL, o ocho variables BYTE pero que sean 1 o 0.
Pues yo hago eso con una máscara y lo uso cuando tengo una variable que la uso como registro de banderas (flags).
byte variable_byte;
byte variable_0bit;
byte variable_1bit;
byte variable_2bit;
byte variable_3bit;
byte variable_4bit;
byte variable_5bit;
byte variable_6bit;
byte variable_7bit;
if((variable_byte & 0x01) == 0x01){variable_0bit = 1;}
else{variable_0bit = 0;}
if((variable_byte & 0x02) == 0x02){variable_1bit = 1;}
else{variable_1bit = 0;}
if((variable_byte & 0x04) == 0x04){variable_2bit = 1;}
else{variable_2bit = 0;}
if((variable_byte & 0x08) == 0x08){variable_3bit = 1;}
else{variable_3bit = 0;}
if((variable_byte & 0x10) == 0x10){variable_4bit = 1;}
else{variable_4bit = 0;}
if((variable_byte & 0x20) == 0x20){variable_5bit = 1;}
else{variable_5bit = 0;}
if((variable_byte & 0x40) == 0x40){variable_6bit = 1;}
else{variable_6bit = 0;}
if((variable_byte & 0x80) == 0x80){variable_7bit = 1;}
else{variable_7bit = 0;}Y para setear o limpiar cada uno de los bits del registro de banderas, por ejemplo para el 2 bit:
variable_byte |= 0x02; // Setea el segundo bit
variable_byte &= 0xFD; // Limpia el segundo bitEspero te sirva, yo lo uso así y me funciona, si alguien sabe de una forma mas simple por favor que avise
