Sequencial de 16 LEDS, to estudando se posso otimizar mais.

/*
Blink16
Este programa faz uma sequencia de 16 LEDs piscarem fazendo efeito de vai-e-vem, repetidamente. Para alterar a velocidade e o intervalo entre um led e outro,

mude os valores de int x e int y, logo depois de void loop().

Foi uma experiência usando "for", se alguem tiver uma sugestão pra otimizar mais,

é só postar.

Acho que da pra evitar de repetir varias vezes esse trecho:

{
digitalWrite(i, HIGH);
delay(x);
digitalWrite(i, LOW);
delay(y);
}

Só não descobri ainda como.

This example code is in the public domain.

*/

void setup()

{
int i;
//declara i como um inteiro
for (i=30;i<=45;i++)
//para i=30 ate i<=45, some 1
{
pinMode(i, OUTPUT);
//declara pino i como saida
}

}

void loop()
{
int x = 50;
// tempo que o LED fica acesso
int y = 1;
// tempo que o LED fica apagado

{
int i=30;
for (i;i<=44;i=i+2)
{
digitalWrite(i, HIGH);
delay(x);
digitalWrite(i, LOW);
delay(y);
}
}

{
int i=31;
for (i;i<=45;i=i+2)
{
digitalWrite(i, HIGH);
delay(x);
digitalWrite(i, LOW);
delay(y);
}
}

{
int i=43;
for (i;i>=31;i=i-2)
{
digitalWrite(i, HIGH);
delay(x);
digitalWrite(i, LOW);
delay(y);
}
}

{
int i=44;
for (i;i>=32;i=i-2)
{
digitalWrite(i, HIGH);
delay(x);
digitalWrite(i, LOW);
delay(y);
}
}
}

Exibições: 83

Responder esta

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço