TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: teve en 07 de Mayo de 2005, 12:17:00

Título: Cómo se testea un bit en C?
Publicado por: teve en 07 de Mayo de 2005, 12:17:00
Hola compañeros, estoy investigando en ejemplos y no  encuentro nada, necesitaria saber como se puede testear un bit utilizando el lenguane c, ejemplo:
dato = 0b10000000 ; como leo por ejemplo el valor de la ultima posicion, si es un 1 o un cero de la variable dato.Un saludo.RollEyes
Título: RE: Cómo se testea un bit en C?
Publicado por: Nocturno en 07 de Mayo de 2005, 14:37:00
Bit= ((valor & 0x80)!=0);

Si en vez de ver el bit más significativo, quieres ver otro, vas cambiando el 0x80 por otros valores.
Título: RE: Cómo se testea un bit en C?
Publicado por: Lager. en 07 de Mayo de 2005, 14:44:00
Asi es pana Teve,
Una forma es usando la mascara que te comenta el pana nocturno66 ,para saber el valor.. otra es usando el comando BIT_TEST():
Ejemplo:
Formato:
value = bit_test (var, bit)

donde bit es un numero de 0 a 31;var es la variable que contiene el valor del cual vas a testear dicho bit, puede ser de 8,16 o 32 bits(dword) ; y value es donde pondra ese bit para ser revizado dandote un 0 o 1 logico...

Salu2 pana Sonrisa
Título: RE: Cómo se testea un bit en C?
Publicado por: teve en 07 de Mayo de 2005, 15:34:00
Un saludo, abrazo  y agradecimiento a los dosGiño.