Tuesday, November 1, 2016

6. Laços (loops) com for e while

Assista o vídeo e entenda o funcionamento do comando for.   O código sketch é mostrado abaixo.

int pinLed[10] = {13,12,11,10,9,8,7,6,5,4};
int numLed;
int x;
  void setup(){
  for(x = 0; x<=9; x = x+1){
      pinMode(pinLed[x], OUTPUT);
  }
}
  
  void loop() {
  for(numLed = 0; numLed<=9; numLed = numLed+1){
      digitalWrite(pinLed[numLed], HIGH);
      delay(50);
  }
  for (numLed = 9; numLed>=0; numLed = numLed-1){
      digitalWrite(pinLed[numLed], LOW);
      delay(200);
  }
}

Este é código usando while: 

int pinLed[10] = {13,12,11,10,9,8,7,6,5,4};
int numLed;
int x;
  
  void setup(){

    
  for(x = 0; x<=9; x = x+1){
      pinMode(pinLed[x], OUTPUT);
  }
}
  
  void loop() {
  numLed = 0;
  while( numLed<=9){
      digitalWrite(pinLed[numLed], HIGH);
      delay(50);
      ; numLed = numLed+1;
  }
    numLed = 9;
    while (numLed>=0){
      digitalWrite(pinLed[numLed], LOW);
      delay(200);
      ; numLed = numLed-1;
  }
}

Aqui o correspondente diagrama do circuito desenhado em Tinkercad e a simulação:



Exercícios:

1. Construa a simulação proposta e implemente-a na prática.
2. Modifique o padrão sequencial acima de modo a gerar diferentes padrões de luzes.

No comments:

Post a Comment