Lección Teach
STM32 con Arduino API (1/4): primer parpadeo
El alumnado usa STM32 CodeIDE con la API Arduino para escribir setup() y loop(), hacer parpadear una salida real y documentar compilación/subida.
¿Primera vez que activas Teach? Puedes realizar una sesión de clase sin costo. El alumnado entra con un código de clase.
¿Primera vez en LabsLand? Crea tu cuenta de docente
Resultados de aprendizaje
Escribir un sketch Arduino mínimo para una placa STM32.
Distinguir el código que prepara la placa del código que se repite.
Registrar evidencia observable de una salida digital real.
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.
Antes de abrir el laboratorio
8 min
Un microcontrolador no "entiende" frases: ejecuta instrucciones concretas. Hoy
solo necesitamos una salida digital, un LED, y dos esperas.
En un sketch Arduino:
- setup() se ejecuta una sola vez y prepara la placa.
- loop() se repite mientras la placa está encendida.
- pinMode(pin, OUTPUT) declara que un pin será una salida.
- digitalWrite(pin, HIGH) pone una salida en alto; LOW la apaga.
El ciclo principal tendrá esta forma:
digitalWrite(LED_AZUL, HIGH);
delay(1000);
digitalWrite(LED_AZUL, LOW);
delay(1000);Si el LED está encendido durante 1000 ms y apagado durante 1000 ms dentro de
loop(), ¿qué patrón debería repetirse?
Crear y probar el parpadeo
24 min
Esta foto sirve para reconocer la placa STM32 Nucleo WB55RG. En la foto aparece
la placa sola; en el laboratorio remoto real está integrada en un montaje con
LEDs y otros componentes ya conectados. No necesitas cablear nada: vas a usar un
LED disponible en ese montaje remoto.
Foto de referencia de la placa STM32 Nucleo WB55RG. En el laboratorio remoto la
placa forma parte de un montaje ya cableado; en esta primera sesión la usarás
como una placa de Arduino textual: escribir, compilar, subir y observar.
Inicia el laboratorio desde este bloque. En CodeIDE, selecciona la pestaña
del editor
main.ino.Sustituye su contenido por el programa inicial de abajo.
Sustituye los TODO 1-4. Cada comentario indica qué tipo de código corresponde
sin dar el token. Busca
TODOenmain.ino: **no puede quedar ninguno antesde compilar**.
Guarda
main.ino, pulsa Compilar y espera el mensaje de compilacióncorrecta. Compilar comprueba y traduce el código; no cambia la placa real.
Solo cuando compile, pulsa Subir y espera el mensaje de subida correcta.
Subir instala esa versión compilada en la placa.
Observa el LED azul durante al menos tres ciclos completos. Registra este
comportamiento inicial, sin cambios, en la fila 1.
Cambia solo
PARPADEO_MSa otro intervalo visible entre250 msy2000 ms.Guarda, compila, sube, observa tres ciclos y registra la fila 2.
#include <Arduino.h>
const int LED_AZUL = PB5;
const int PARPADEO_MS = TODO_INTERVALO_PARPADEO; // TODO 1: intervalo de un segundo, en ms
void setup() {
pinMode(LED_AZUL, TODO_DIRECCION_LED); // TODO 2: modo que permite controlar el LED
}
void loop() {
digitalWrite(LED_AZUL, TODO_NIVEL_ENCENDIDO); // TODO 3: nivel para encender
delay(PARPADEO_MS);
digitalWrite(LED_AZUL, TODO_NIVEL_APAGADO); // TODO 4: nivel opuesto para apagar
delay(PARPADEO_MS);
}
Rellena la tabla después de probar el programa en la placa. Usa solo dos filas y
deja vacías las demás si Teach muestra más:
- Fila 1: programa inicial completado con intervalo de 1000 ms.
- Fila 2: tu versión modificada.
- En Patrón observado, escribe lo que viste en la placa real.
- En Ajuste o problema, escribe ninguno si funcionó, o qué revisarías si
no coincidió.
| Versión probada | Valor de delay (ms) | Patrón observado | ¿Coincide con la predicción? | Ajuste o problema |
|---|---|---|---|---|
Describe una evidencia concreta de que tu programa se ejecutó en la placa real.
Nombra la salida, indica ambos valores de espera en ms y compara al menos tres
ciclos iniciales con al menos tres ciclos modificados.
Entregar tu código
8 min
Antes de entregar, deja el código final guardado en main.ino. El profesor debe
poder ver el pin usado, el pinMode, los dos digitalWrite y el valor de
delay que probaste. Busca TODO una vez más: el archivo entregado no debe
contener ninguno.
Entrega tu main.ino final
Guarda main.ino antes de adjuntarlo. El snapshot debe mostrar el programa final que compilaste, subiste a la placa y quieres que revise tu profesor.
Ticket de salida
10 min
Explica la diferencia entre setup() y loop() usando tu programa de parpadeo como ejemplo. Añade por qué conviene cambiar una sola cosa cada vez al depurar.
Convierte esta vista previa en una sesión de clase real
Activa LabsLand Teach para usar esta lección con tus estudiantes. La primera vez que actives Teach, podrás realizar una sesión de clase sin costo.
¿Primera vez en LabsLand? Crea tu cuenta de docente