TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: hades en 13 de Julio de 2006, 18:22:12
-
Hola de nuevo.....ahora tengo otro problemita...el CCS me compila bien pero al hacerlo compilar en el mplab me entrega el sgte error:"el MPlab me dice:"No Errors
Halting build on first failed translation as user preferences indicate." Alguien me puede ayudar con este error.....POR favor!.
Y la otra duda es que puede significar las sgtes instrucciones:
Temp=0;
while (!(Temp1 & 0x01)) // cuenta hasta que llegue a un bit set
{
Temp1>>=1;
Temp++;
}
if (Temp<4) // se ha pulsado
sobre todo eso de "Temp1>>=1" puesto que en el manual de ccs dice que es desplazamiento a la derecha pero lo que no entiendo es si desplaza 1 bit, o pone un "1" en el bit mas significativo???...jeje....
Ojala me ayuden... :(.-
-
Hola a ver si te puedo dar una mano.
TEMP=O // Inicializa la variable en 0
while (!(Temp1 & 0x01)) //Es un ciclo se ejecutara lo que se encuentre entre las llaves siempre que (!(Temp1 & 01))
//sea verdadero .
{
Temp1>>=1; // Cada vez que se ejecute esta instruccion se produce un desplazamiento de un bit a la derecha
Temp++; // Cada vez que se ejecute esta instruccion incrementara la variable Temp en uno
}
if (Temp<4) // Si la variable es menor que 4 se ejecuta lo que este dentro del if
-
gracias juanacho ....2 preguntas.....el ">>=1" desplaza un bit pero poniendo un cero en el bit 7??..por ejemplo:
si tengo Temp1=00010001; y luego Temp1>>=1 entonces al final quedaria Temp1=00001000 ?????....o no???....
y la otra es en el ciclo "while(!(Temp1 & 0x01))" es lo mismo que si pongo "while(Temp1&0x10)" ...
-
Lo primero es correcto claro que si el otro bit es uno tambien lo corre.
ejemplo tenes 11000000 despues de Temp1>>=1 tendrias 01100000.
No no es lo mismo el signo de admiracion se utiliza para negar
-
gracias por aclarar mis dudas....thx! :-/