Parpadeo de un led con ESP32 y MicroPython
Siguiente: Dispositivos I2C con ESP32 y MicroPython |
El montaje de hoy, aunque sencillo, nos va a permitir controlar nuestro primer dispositivo externo, en este caso, un diodo led, pero potencialmente esto nos abre la posibilidad de controlar un buen montón de otros dispositivos. El esquema, simplificado al máximo posible, es el siguiente:
Esto, llevado a la práctica, nos da un montaje como el siguiente:
No hay que alarmarse: Mi ESP32 se encuentra pinchada en una base que yo mismo he montado con el fin de poder conectar pines con facilidad y alimentarlo desde una fuente de 12V, así que pasemos directamente al software y a su instalación.
- boot.py
from machine import Pin from time import sleep led = Pin(12, Pin.OUT) while True: led.value(1) sleep(1) led.value(0) sleep(1)
Lo primero que hace este programa es importar la clase Pin de la librería machine, con la que podremos manejar los pines de la ESP32, tanto para salidas como para entradas, aunque en este caso sólo utilizaremos la primera de estas funcionalidades. También importaremos desde la librería time la función sleep, que permite a la máquina esperar durante un tiempo determinado antes de continuar la ejecución del programa.
A continuación declaramos el objeto led como perteneciente a la clase Pin, dándole unos valores al constructor (número de pin y de tipo salida). Con esto, la variable-objeto «led» podrá manejar el pin 12 como un pin de salida.
Lo siguiente es crear un bucle sin fin (while True), dentro del cual el objeto led adoptará el valor 1 (encendido), se detendrá la ejecución durante un segundo, para adoptar a continuación el valor 0 (apagado) y volver a detenerse durante un segundo.
Como se puede ver, es un programa bastante simple, que ahora vamos a proceder a cargar dentro de nuestra ESP32 con Thonny. Para ello supondremos que hemos seguido todos los pasos indicados en la página anterior del tutorial de MicroPython relativo a la instalación, y podremos escribir nuestro programa dentro del IDE de Thonny, de la siguiente forma:
Si pulsamos el botón «Ejecutar el script actual» (botón verde de la barra de herramientas superior), nos preguntará dónde queremos ejecutar el script, si en nuestro ordenador o en el dispositivo con MicroPython:
Elegiremos «Dispositivo MicroPython», y entonces nos preguntará el nombre con el que queremos escribir el script, en este caso «boot.py», que es el script que se ejecutará automáticamente al iniciar el dispositivo.
En el caso de que ya exista otro script dentro del dispositivo con el mismo nombre, nos preguntará si queremos sobreescribirlo, a lo que contestaremos que sí.
Y después de esto, el programa empezará a funcionar en nuestro ESP32.
Facil, ¿verdad?
Siguiente: Dispositivos I2C con ESP32 y MicroPython |