Teach Lecciones con laboratorios remotos

Lección Teach

Arduino básico 2/4: crea una secuencia de luces

El alumnado programa cuatro LEDs externos con arrays y bucles, prueba una secuencia 1-2-3-4 y la convierte en ida y vuelta.

  • Arduino Básico (código)
  • 35 min
  • Secundaria (12–16 años)
  • Español
  • Sistemas embebidos

Inicia sesión con una cuenta docente para preparar una sesión. El alumnado entra con un código de clase.

Arduino Básico (código)
Arduino Básico (código) · Ver información del laboratorio

Resultados de aprendizaje

  • Usar varios pines digitales como salidas.

  • Entender un bucle for sencillo.

  • Modificar un patrón de luces.

Vista previa de la actividad del estudiante

Contenido de la actividad

Solo vista previa. En una sesión de clase, los estudiantes pueden completar respuestas y entregar su trabajo al docente.

1

Una placa, varios LEDs

9 min

La placa tiene cuatro LEDs externos conectados a los pines 8, 7, 6 y 5. Podrías escribir cuatro bloques de código casi iguales, pero un array y un for evitan repetir tanto. Piensa en el array como una lista de pines, y en el for como una forma de recorrer esa lista.

Fíjate en este fragmento del programa base de la actividad:

const int totalLeds = 4;

void loop() {
  for (int i = 0; i < totalLeds; i++) {
    // Enciende y apaga un LED de la lista.
  }
}

Según ese fragmento, ¿cuántas veces se repite el bucle for dentro de loop()?

2

Programa la secuencia

18 min

Lee los índices antes de cambiar el bucle. Las posiciones del array son 0, 1, 2, 3; sus pines son 8, 7, 6, 5, correspondientes a los LED 1, 2, 3, 4. Para volver sin repetir los extremos, recorre los índices 2, 1: LED 3 y después LED 2. Usa un índice de tipo int con signo, empieza en totalLeds - 2, continúa mientras i > 0 y disminúyelo con i--. Recorre los índices en papel antes de subir el programa.

Prueba esta secuencia y después modifícala para que vuelva hacia atrás: LED 1, 2, 3, 4, 3, 2. Una forma sencilla es añadir un segundo for después del primero. Guarda el archivo antes de adjuntar el snapshot.

const int leds[] = {8, 7, 6, 5};
const int totalLeds = 4;

void setup() {
  for (int i = 0; i < totalLeds; i++) {
    pinMode(leds[i], OUTPUT);
  }
}

void loop() {
  for (int i = 0; i < totalLeds; i++) {
    digitalWrite(leds[i], HIGH);
    delay(300);
    digitalWrite(leds[i], LOW);
  }
}
  1. Abre el laboratorio.

  2. Sube el programa base y observa el orden de los LEDs.

  3. Añade el camino de vuelta para crear un efecto ida y vuelta.

  4. Guarda antes de capturar el código.

Entrega tu código

Captura el código de tu secuencia ida y vuelta. Antes de adjuntarlo, guarda main.ino en el entorno del laboratorio. El snapshot debe mostrar el programa que realmente quieres que revise tu profesor.

3

Lee el programa

8 min

¿Qué línea cambiarías para que cada LED estuviera encendido más tiempo? Di la línea y el nuevo valor que probarías.

Convierte esta vista previa en una sesión de clase real

Continúa a LabsLand Teach para usar esta lección con tu alumnado y revisar el acceso disponible para tu cuenta.