Hetpro USBasp V3.0 Guía De Usuario página 36

Tabla de contenido
Guía de Usuario USBasp V3.0| HeTPro
while(1){
while(PORTB < 0x80){
_delay_ms(800);
PORTB=PORTB<<1;
}
El while infinito inicia la parte del programa que se ciclara y después vemos otro
while que nos indica "mientras el PORTB sea menor que 0x80, ejecuta las
siguientes instrucciones", dentro de las instrucciones del while esta un delay que
nos indica que esperara 800 milisegundos y después al PORTB se le iguala al
mismo pero desplazado a la izquierda 1 valor, por lo tanto si el valor de PORTB
era 0b00000001 ahora es de 0b00000010. La rutina se ciclara desplazando el
valor del PORTB en 1 hasta llegar a 0x80 o 0b10000000, al llegar a ese valor la
rutina del while terminara y el programa continuara.
while(1){
while(PORTB > 0x01){
_delay_ms(800);
PORTB=PORTB>>1;
}
Al igual que en la anterior pero ahora el deslazamiento se hará hacia la derecha y
la condición en el while será que siempre que sea mayor que 0x01 estará dentro
del ciclo.
}
}
Sin dejar a un lado los dos últimos corchetes, ya que son muy importantes en el
programa, el primero indica el final del while(1), por lo tanto cuando llegue a ese
corchete el programa siempre regresara ya que nunca se romperá la condición del
while(1). El segundo corchete es el final de nuestro programa, y corresponde a la
función int main.
35
Tabla de contenido
loading

Tabla de contenido