0% encontró este documento útil (0 votos)
5 vistas3 páginas

4 Esp32 - Bluetooth

El documento es un código para controlar LEDs y motores utilizando un ESP32 y un módulo L298N a través de Bluetooth. Se definen pines para tres LEDs y dos motores, y se implementa una comunicación Bluetooth que permite encender y apagar los LEDs y controlar la dirección de los motores. Además, se incluyen instrucciones sobre la conexión del puente H y la alimentación del módulo.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas3 páginas

4 Esp32 - Bluetooth

El documento es un código para controlar LEDs y motores utilizando un ESP32 y un módulo L298N a través de Bluetooth. Se definen pines para tres LEDs y dos motores, y se implementa una comunicación Bluetooth que permite encender y apagar los LEDs y controlar la dirección de los motores. Además, se incluyen instrucciones sobre la conexión del puente H y la alimentación del módulo.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

#include "BluetoothSerial.

h"
BluetoothSerial SerialBT;

// Pines de los LEDs


const int led1 = 2;
const int led2 = 4;
const int led3 = 5;

// Pines del L298N


const int IN1 = 12; // Motor A
const int IN2 = 13;
const int IN3 = 14; // Motor B
const int IN4 = 27;

void setup() {
Serial.begin(115200);
SerialBT.begin("ESP32_Motores_LEDs");

pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);

pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);

digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
apagarMotores();

Serial.println("Esperando conexión Bluetooth...");


}

void loop() {
if (SerialBT.available()) {
char comando = SerialBT.read();
Serial.print("Comando recibido: ");
Serial.println(comando);

switch (comando) {
case '1': digitalWrite(led1, HIGH); break;
case '2': digitalWrite(led1, LOW); break;
case '3': digitalWrite(led2, HIGH); break;
case '4': digitalWrite(led2, LOW); break;
case '5': digitalWrite(led3, HIGH); break;
case '6': digitalWrite(led3, LOW); break;

// Motor A
case 'A': motorA_adelante(); break;
case 'B': motorA_atras(); break;
case 'C': motorA_parar(); break;

// Motor B
case 'D': motorB_adelante(); break;
case 'E': motorB_atras(); break;
case 'F': motorB_parar(); break;
default: Serial.println("Comando no válido");
}
}
}

// Funciones para motores


void motorA_adelante() {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
}
void motorA_atras() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
}
void motorA_parar() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
}
void motorB_adelante() {
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
}
void motorB_atras() {
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
}
void motorB_parar() {
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
}
void apagarMotores() {
motorA_parar();
motorB_parar();
}

//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////

Conexión del Puente H (L298N)


Para motor A:
IN1 = GPIO 12

IN2 = GPIO 13

Para motor B:
IN3 = GPIO 14

IN4 = GPIO 27

Alimentación:
VCC del L298N → fuente externa (3-6V según tus motores)

GND del L298N → GND del ESP32

5V enable jumper puesto (si tu módulo lo necesita)

🔌 Conexión de LEDs
LED1: GPIO 2
LED2: GPIO 4

LED3: GPIO 5
(Cada uno con resistencia de 220Ω en serie al ánodo)

También podría gustarte