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.
¿Primera vez en LabsLand? Crea tu cuenta de docente
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.
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()?
Programa la secuencia
18 min
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);
}
}Abre el laboratorio.
Sube el programa base y observa el orden de los LEDs.
Añade el camino de vuelta para crear un efecto ida y vuelta.
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.
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.