UNIVERSIDAD AUTÓNOMA GABRIEL RENÉ MORENO
FACULTAD DE INGENRIERÍA EN CIENCIAS DE LA
COMPUTACIÓN Y TELECOMUNICACIONES
LABORATORIO DE ESP32
CARRERA: INGENIERÍA EN REDES Y TELECOMUNICACIONES
INTEGRANTES: Carballo Garcia Bismar Ariel
Peñaranda Cruz Charly
Torrico Maquera Gilmer Luis
Núñez Orellana Juan Laime
MATERIA: APLICACIONES CON MICROPROCESADORES
SEMESTRE: I - 2025
DOCENTE: ING. MARCIO CARVAJAL CORDERO
LABORATORIO N°16
ESP32 ENTRADA Y SALIDA DIGITAL
Objetivos:
• Realizar la rotación de ocho leds externos a la derecha si los
swichs de SW1 esta en alto y SW2 esta en bajo. Si SW1 esta en
bajo y SW2 está en alto rotar a la izquierda. En caso de ambos
SW1 y SW2 estén en alto que rote de adentro hacia afuera y si
SW1 y SW2 en bajo no hace nada
Marco Teórico:
ESP32: El ESP32 es un microcontrolador de bajo costo y alto
rendimiento desarrollado por Espressif Systems. Se trata de un SoC
(System on Chip) con conectividad Wi-Fi y Bluetooth integrada, lo
que lo convierte en una excelente opción para proyectos de Internet
de las Cosas (IoT), domótica, automatización y sistemas embebidos.
Características Generales del ESP32 de 38 pines
El modelo ESP32 de 38 pines es una de las versiones más utilizadas
debido a su equilibrio entre tamaño, número de entradas/salidas
(GPIO) y facilidad de uso. Algunas de sus características más
importantes incluyen:
• Microprocesador dual-core Tensilica Xtensa LX6, con frecuencias
de hasta 240 MHz.
• Memoria RAM: 520 KB SRAM interna.
• Almacenamiento: Flash externo de 4 MB (puede variar según el
módulo).
• Conectividad:
o Wi-Fi 802.11 b/g/n
o Bluetooth v4.2 BR/EDR y BLE
• Entradas/Salidas (I/O):
o 34 pines GPIO (no todos disponibles en todos los modelos)
o Soporte para ADC (conversores analógico-digitales), DAC
(digital-analógico), PWM, SPI, I2C, UART, CAN, entre
otros.
• Voltaje de operación: 3.3 V (aunque algunos pines toleran 5V
en ciertas placas de desarrollo).
• Conversores ADC: Hasta 18 canales de 12 bits.
Materiales
• 1 ESP32
• 8 LEDS
• Protoboard
• Jumpers
• 2 Swicht
DISEÑO DEL CIRCUITO:
CODIGO:
int pinled1=8;
int pinled2=9;
int pinled3=10;
int pinled4=11;
int var;
int pin1=4;
int pin2=5;
int pin3=6;
int pin4=7;
int var1;
int var2;
int var3;
int var4;
char s[3];
void setup() {
Serial.begin(9600);
pinMode(pinled1,OUTPUT);
pinMode(pinled2,OUTPUT);
pinMode(pinled3,OUTPUT);
pinMode(pinled4,OUTPUT);
pinMode(pin1,INPUT);
pinMode(pin2,INPUT);
pinMode(pin3,INPUT);
pinMode(pin4,INPUT); }
void loop() {
if(Serial.available()) {
var=Serial.read();
if(var=='a')
{digitalWrite(pinled1,HIGH);}
if(var=='w')
{digitalWrite(pinled1,LOW);}
if(var=='b')
{digitalWrite(pinled2,HIGH);}
if(var=='x')
{digitalWrite(pinled2,LOW);}
if(var=='c')
{digitalWrite(pinled3,HIGH);}
if(var=='y')
{digitalWrite(pinled3,LOW);}
if(var=='d')
{digitalWrite(pinled4,HIGH);}
if(var=='z')
{digitalWrite(pinled4,LOW);}
var1=digitalRead(pin1);
var2=digitalRead(pin2);
var3=digitalRead(pin3);
var4=digitalRead(pin4);
if(var1==HIGH)
{s[0]='e';}
else{s[0]='o';}
if(var2==HIGH)
{s[1]='f';}
else{s[1]='o';}
if(var3==HIGH)
{s[2]='g';}
else{s[2]='o';}
if(var4==HIGH)
{s[3]='h';}
else{s[3]='o';}
Serial.println(s); } }
DISEÑO FÍSICO
CONCLUSIONES: La implementación del control de rotación de ocho
LEDs externos utilizando el ESP32 y dos interruptores (SW1 y SW2)
permitió comprobar el funcionamiento lógico condicional y el uso
eficiente de los pines GPIO del microcontrolador. Se logró
establecer una rotación a la derecha cuando SW1 estaba en alto y
SW2 en bajo, y una rotación a la izquierda cuando SW1 estaba en
bajo y SW2 en alto. Además, se ejecutó correctamente el efecto de
rotación de adentro hacia afuera cuando ambos interruptores
estaban en alto, demostrando el control preciso del patrón de
encendido. Finalmente, al mantener ambos interruptores en bajo, se
verificó que el sistema se mantenía inactivo, como se esperaba.