Ir al contenido principal

Sketch de juego de luces de 8 led con arduino


Este video explicada el funcionamiento de las luces secuenciales usando la placa Arduino. Ademas tiene otras secuencias como: luz que corre, luz en forma de ping pong, prende en pares y hace prender un foquito led aleatoriamente. Todo con 8 foquitos led.


int ledPins[] = {2,3,4,5,6,7,8,9};
void setup()
{
int index;
for(index = 0; index <= 7; index++)
{
pinMode(ledPins[index],OUTPUT);
}
}
void loop()
{
prendeTodosFoquitos();
delay(3000);
otroPrendeTodosFoquitos();
delay(3000);
movimientoLuz();
delay(3000);
pingPong();
delay(3000);
prendePares();
delay(3000);
aleatorioLED();
delay(3000);
}
void prendeTodosFoquitos()
{
int delayTime = 100;
// Prende los foquitos:
digitalWrite(ledPins[0], HIGH);
delay(delayTime);
digitalWrite(ledPins[1], HIGH);
delay(delayTime);
digitalWrite(ledPins[2], HIGH);
delay(delayTime);
digitalWrite(ledPins[3], HIGH);
delay(delayTime);
digitalWrite(ledPins[4], HIGH);
delay(delayTime);
digitalWrite(ledPins[5], HIGH);
delay(delayTime);
digitalWrite(ledPins[6], HIGH);
delay(delayTime);
digitalWrite(ledPins[7], HIGH);
delay(delayTime);
// apaga los foquitos:
digitalWrite(ledPins[7], LOW);
delay(delayTime);
digitalWrite(ledPins[6], LOW);
delay(delayTime);
digitalWrite(ledPins[5], LOW);
delay(delayTime);
digitalWrite(ledPins[4], LOW);
delay(delayTime);
digitalWrite(ledPins[3], LOW);
delay(delayTime);
digitalWrite(ledPins[2], LOW);
delay(delayTime);
digitalWrite(ledPins[1], LOW);
delay(delayTime);
digitalWrite(ledPins[0], LOW);
delay(delayTime);
}
void otroPrendeTodosFoquitos()
{
int index;
int delayTime = 100;
// Prende los foquitos
for(index = 0; index <= 7; index++)
{
digitalWrite(ledPins[index], HIGH);
delay(delayTime);
}
// Apaga los foquitos
for(index = 7; index >= 0; index–)
{
digitalWrite(ledPins[index], LOW);
delay(delayTime);
}
}
void movimientoLuz()
{
int index;
int delayTime = 100;
for(index = 0; index <= 7; index++)
{
digitalWrite(ledPins[index], HIGH);
delay(delayTime);
digitalWrite(ledPins[index], LOW);
}
}
void pingPong()
{
int index;
int delayTime = 100;
// corre luz de 0 to 7
for(index = 0; index <= 7; index++)
{
digitalWrite(ledPins[index], HIGH);
delay(delayTime);
digitalWrite(ledPins[index], LOW);
}
// corre luz de 7 to 0
for(index = 7; index >= 0; index–)
{
digitalWrite(ledPins[index], HIGH);
delay(delayTime);
digitalWrite(ledPins[index], LOW);
}
}
void prendePares()
{
int index;
int delayTime = 200;
for(index = 0; index <= 3; index++)
{
digitalWrite(ledPins[index], HIGH);
digitalWrite(ledPins[index+4], HIGH);
delay(delayTime);
digitalWrite(ledPins[index], LOW);
digitalWrite(ledPins[index+4], LOW);
}
}
void aleatorioLED()
{
int index;
int delayTime;
index = random(8);
delayTime = 100;
digitalWrite(ledPins[index], HIGH);
delay(delayTime);
digitalWrite(ledPins[index], LOW);
}

Comentarios

Sean45 ha dicho que…

Arduino:1.8.9 (Windows 10), Tarjeta:"Arduino/Genuino Uno"

Secuencia_de_8_canales_con_Arduino:74:1: error: stray '\342' in program

for(index = 7; index >= 0; index–)

^

Secuencia_de_8_canales_con_Arduino:74:1: error: stray '\200' in program

Secuencia_de_8_canales_con_Arduino:74:1: error: stray '\223' in program

Secuencia_de_8_canales_con_Arduino:103:1: error: stray '\342' in program

for(index = 7; index >= 0; index–)

^

Secuencia_de_8_canales_con_Arduino:103:1: error: stray '\200' in program

Secuencia_de_8_canales_con_Arduino:103:1: error: stray '\223' in program

exit status 1
stray '\342' in program

Este informe podría contener más información con
"Mostrar salida detallada durante la compilación"
opción habilitada en Archivo -> Preferencias.

esto me ha dado al pasar al arduino

Entradas populares de este blog

Potenciómetro Lineal y Logaritmico

EL POTENCIÓMETRO LINEAL El potenciómetro lineal es aquel que varia su valor en ohmios en forma vertical o proporcional al movimiento de su eje. Es usado por ejemplo en las fuentes de voltaje para aumentar el voltaje en la salida según el movimiento de la perilla.  Se reconoce porque tiene impreso la letra B en su superficie, por ejemplo B100K. POTENCIÓMETRO LOGARÍTMICO El potenciómetro logarítmico no aumenta su valor en ohmios en forma proporcional sino logarítmico, es decir puede empezar con valores muy bajos y al acercarse al final recién inicia un aumento rápido. Generalmente se emplea como los controles de música en los equipos de sonido para iniciar con un volumen bajo que aumenta poco a poco y al final tiene un aumento rápido.  Se reconoce porque tiene impreso la letra A en su superficie, por ejemplo A100K.

Sketch de parpadeo de luz en diodo Led controlado por un potenciómetro en Arduino

El objetivo del siguiente ejemplo es controlar el parpadeo del foquito led mediante un potenciómetro. Para esto necesitamos los siguientes materiales: 01 Placa arduino uno 01 potenciómetro 01 diodo led 01 resistor de 330 ohms alambres para conectar. int sensor = 0; int ledPin = 8; void setup() { pinMode(ledPin, OUTPUT); } void loop() { int pot; pot = analogRead(sensor); digitalWrite(ledPin, HIGH); delay(pot); digitalWrite(ledPin, LOW); delay(pot); }