#include
#include
void main(){
int i=0;
for(i=0;i<10;i++){
P2_0=1; //liga P2.0
delay_ms(1000); //aguarda 1 segundo
if(P3_0==1) continue; //se P3.0 receber nivel alto
P2_0=0; //desliga P2.0
delay_ms(1000); //aguarda 1 segundo
}
}
No trecho de programa acima os dois últimos comandos P2_0=0; e delay_ms(1000); não serão executados caso a entrada P3.0 receber nível 0.
O Comando while
A estrutura while verifica inicialmente se a condição de teste é verdadeira. Caso verdadeiro, todos os comandos dentro do laço while serão executados. Ao retornar para o inicio do laço, é verificado novamente se a condição de teste é verdadeira, executa novamente todos os blocos de comandos; se for falsa, interrompe o laço while e salta para a linha do programa logo após o bloco while.
A estrutura do laço while é:
while(condição){
commandos;
}
A condição poderá ser uma operação relacional ou um teste booleano. Exemplo:
while(x<50){ //enquanto x for menor do que 50
x++; //incrementa uma unidade de x
} //fim do comando while
Este trecho de programa fará com que a variável x incremente 50 vezes.
Os testes booleanos são de uso mais freqüentes na linguagem C para microcontroladores. Neste caso, o comando while testa se a condição é verdadeira ou não-zero. Exemplo:
bit a=1;
while(a){ //enquanto a for diferente de zero
x++; //incrementa uma unidade de x
} //fim do comando while
Neste trecho de programa o comando while testa se a variável ‘a’ é diferente de zero. Como o teste é sempre verdadeiro, o comando do bloco while é executado eternamente.
6.6.3.1. Estrutura de Repetição Infinita
Poderiamos reescrever o trecho do programa anterior da seguinte forma para criar uma estrutura de repetição while infinita:
while(1){ //enquanto 1 for verdadeiro(diferente de zero)
x++; //incrementa uma unidade de x
} //fim do comando while
Em seguida temos um exemplo de aplicação do laço while com loop infinito:
#include
#include
void main(){
while(1){
P2_0=1; //liga P2.0
delay_ms(1000); //aguarda 1 segundo
P2_0=0; //desliga P2.0
delay_ms(1000); //aguarda 1 segundo
}
}
CAPÍTULO
7
Portas Paralelas