Está en la página 1de 6

Producto Académico N.

°3

El Entorno de desarrollo Arduino

Encendido de un LED

El siguiente ejemplo muestra como activar un LED mediante la placa Arduino. El LED, conectado a uno
de los pines de salida de la placa (pin 13), parpadea con un período determinado (200 ms) y se
muestra por el puerto SERIAL cuando el LED está a nivel BAJO o ALTO.
El esquema de montaje es el siguiente:

Componentes: placa ARDUINO UNO, resistencia 220 Ω y LED de color verde

CÓDIGO

// Pin 13 has an LED connected on most Arduino boards.


// give it a name:
int led = 13;

// the setup routine runs once when you press reset:


void setup() {
// initialize the digital pin as an output.
pinMode(led, OUTPUT);

1|Página
Serial.begin(9600);
}
// the loop routine runs over and over again forever:
void loop() {
digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)
Serial.println("NIVEL ALTO");
delay(200); // wait for 200 ms
digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
Serial.println("NIVEL BAJO");
delay(200); // wait for 200 ms
}

Se pide:

1. Simular el esquema propuesto con la herramienta online.

2. Modificar el circuito para que el LED se encienda al conectarlo al pin 12 y modificar el período
de parpadeo de 200ms a 1s.

int led=12;

void setup()
{
pinMode(led, OUTPUT);

void loop()
{
digitalWrite(led, HIGH); // led on

2|Página
delay(1000); // pausa 1 seg
digitalWrite(led, LOW); // led off
delay(1000); // pausa 1 seg

3. Realizar un programa que ejecute el encendido correlativo de cuatro LEDs conectados a los
pins 10, 11, 12 y 13 con un período de 500 ms.

// C++ code
//
int amarillo = 10;
int azul = 11;
int rojo = 12;
int verde = 13;

void setup()
{
pinMode(verde, OUTPUT);
pinMode(rojo, OUTPUT);
pinMode(azul, OUTPUT);
pinMode(amarillo, OUTPUT);
}

void loop()
{
digitalWrite(verde, HIGH);
Serial.println("NIVEL ALTO");

3|Página
digitalWrite(rojo, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(azul, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(amarillo, LOW);
Serial.println("NIVEL BAJO");
delay(500);
digitalWrite(verde, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(rojo, HIGH);
Serial.println("NIVEL ALTO");
digitalWrite(azul, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(amarillo, LOW);
Serial.println("NIVEL BAJO");
delay(500);
digitalWrite(verde, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(rojo, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(azul, HIGH);
Serial.println("NIVEL ALTO");
digitalWrite(amarillo, LOW);
Serial.println("NIVEL BAJO");
delay(500);
digitalWrite(verde, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(rojo, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(azul, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(amarillo, HIGH);
Serial.println("NIVEL ALTO");
delay(500);
}

4|Página
4. Realizar un programa que simule el comportamiento de un semáforo. Emplear para ello tres
LEDs de colores rojo, verde y naranja. La secuencia que deben seguir es la siguiente: Verde (8
segundos) – Naranja (3 segundos) – Rojo (10 segundos). (Opcional) Hacer parpadear el LED durante
el estado amarillo con un período de 500 ms.

// C++ code
//
int length = 6;
int naranja = 12;
int rojo = 11;
int verde = 13;

void setup()
{
pinMode(verde, OUTPUT);
pinMode(rojo, OUTPUT);
pinMode(naranja, OUTPUT);
Serial.begin(9600);
}

void loop()
{
digitalWrite(verde, HIGH);
Serial.println("NIVEL ALTO");
digitalWrite(rojo, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(naranja, LOW);
Serial.println("NIVEL BAJO");
delay(8000);

5|Página
for (int i = 0; i < length; i++) {
if (i%2 == 0) {
digitalWrite(verde, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(rojo, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(naranja, HIGH);
Serial.println("NIVEL ALTO");
delay(500);
} else {
digitalWrite(verde, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(rojo, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(naranja, LOW);
Serial.println("NIVEL BAJO");
delay(500);
}
}
digitalWrite(verde, LOW);
Serial.println("NIVEL BAJO");
digitalWrite(rojo, HIGH);
Serial.println("NIVEL ALTO");
digitalWrite(naranja, LOW);
Serial.println("NIVEL BAJO");
delay(10000);
}

6|Página

También podría gustarte