Múltiples LEDS y arduino

Múltiples LEDS y arduino

TEMA: Encendido de múltiples Leds con arduino.

 

COMPONENTES:

  • Tarjeta ARDUINO UNO
  • Protoboard
  • IDE de Arduino
  • 8 Diodos LED
  • Resistencia de 330Ω
  • Cable UTP o jumpers

 

INSTRUCCIONES:

  • Con un jumper o cable sacamos los 5V y el GND de la placa de arduino y los ubicamos en las polaridades de la protoboard.
  • Colocar los Leds a la protoboard en paralelo cada uno.
  • la parte del lado redondo de los Leds se conectan a un cable que ira a un pin digital de la tarjeta Arduino, desde el pin 2 hasta el pin 9 en orden.
  • el lado plano de los Leds Conéctelos a un punto serie de la protoboard en ese mismo punto conecte una pata de la resistencia de 330Ω
  • la otra pata de la resistencia conéctela a el GND generado por la placa de arduino.

 

CONEXIÓN FÍSICA:

ESQUEMA ELÉCTRICO:

CÓDIGO:

Para el desarrollo de este código existen dos formas de realizarlo.

  • La primera es realizando la declaración de cada pin como salida, después declarar cuando tiempo quiero que encienda y después se apague para que encienda el otro LED.

void setup() {
// put your setup code here, to run once:
pinMode( 9, OUTPUT) ;
pinMode( 8, OUTPUT) ;
pinMode( 7, OUTPUT) ;
pinMode( 6, OUTPUT) ;
pinMode( 5, OUTPUT) ;
pinMode( 4, OUTPUT) ;
pinMode( 3, OUTPUT) ;
pinMode( 2, OUTPUT) ;
}

void loop() {
// put your main code here, to run repeatedly:
digitalWrite(2, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(100);                       // wait for a second
digitalWrite(2, LOW);    // turn the LED off by making the voltage LOW
delay(100);
digitalWrite(3, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(100);                       // wait for a second
digitalWrite(3, LOW);    // turn the LED off by making the voltage LOW
delay(100);
digitalWrite(4, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(100);                       // wait for a second
digitalWrite(4, LOW);    // turn the LED off by making the voltage LOW
delay(100);

 

digitalWrite(5, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(100);                       // wait for a second
digitalWrite(5, LOW);    // turn the LED off by making the voltage LOW
delay(100);
digitalWrite(6, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(100);                       // wait for a second
digitalWrite(6, LOW);    // turn the LED off by making the voltage LOW
delay(100);
digitalWrite(7, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(100);                       // wait for a second
digitalWrite(7, LOW);    // turn the LED off by making the voltage LOW
delay(100);
digitalWrite(8, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(100);                       // wait for a second
digitalWrite(8, LOW);    // turn the LED off by making the voltage LOW
delay(100);
digitalWrite(9, HIGH);   // turn the LED on (HIGH is the voltage level)
delay(100);                       // wait for a second
digitalWrite(9, LOW);    // turn the LED off by making the voltage LOW
delay(100);
}

Al emplear esta forma se nos hace muy engorrosa y tendríamos que escribir muchas líneas de código cada vez que quisiéramos agregar un LED o varios.

  • La segunda opción es utilizar la Función for

La estructura for se usa para repetir un bloque de sentencias encerradas entre llaves un número determinado de veces. Cada vez que se ejecutan las instrucciones del bucle se vuelve a testear la condición. La declaración for tiene tres partes separadas por (;)

 

Su sintaxis es:
for (inicialización; condición; expresión)
{
ejecutaInstrucciones;
}

 

Con este método nos evitaremos escribir engorrosas líneas de código para cada uno de los leds y se pueden declaran todos los pines empleados en una sola línea

void setup() {
// put your setup code here, to run once:
int i = 0 ; // Inicializamos la variable i Como un entero
for ( i = 2 ; i < 9 ; i++)
pinMode( i , OUTPUT) ;
}
void loop() {
// put your main code here, to run repeatedly:
int i = 0 ; // Inicializamos la variable i como un entero
for ( i = 2 ; i < 10 ; i++)
{
digitalWrite( i , HIGH) ;
delay (100) ;
digitalWrite( i , LOW);
delay (100) ;
}
}

Realizamos la comprobación de errores, Seleccionando Verificar.

Si al verificar el código no se presenta ningún error procedemos a realizar la compilación y cargarlo en la placa arduino.

 

DEJE UN COMENTARIO

Su dirección de correo electrónico no será publicada. Los campos requeridos están marcados*