INFORMACIÓN
El Max98357 Amplificador de Audio Mono I2S Clase D 3W, está diseñado para convertir directamente señales de audio digital en sonido sin necesidad de un DAC externo. Funciona recibiendo el audio en formato I2S (líneas BCLK, LRC y DIN) desde un microcontrolador o sistema embebido Puede alimentar directamente un altavoz de 4 Ω u 8 Ω, ofrece control por hardware para habilitación y ganancia. Incluye una bornera (2 líneas) y tira header de 7 puntos.
El MAX98357 se utiliza principalmente en proyectos donde se requiere salida de audio digital simple, eficiente y de bajo consumo, por lo que es ideal para sistemas embebidos, dispositivos IoT, reproductores de audio, asistentes de voz, alarmas sonoras, juguetes electrónicos, intercomunicadores y sistemas de notificación. Es compatible con tarjetas de desarrollo que dispongan de interfaz I2S, como Arduino (ESP32, Arduino Nano RP2040, Arduino Due), ESP8266/ESP32, Raspberry Pi, STM32, Teensy, BeagleBone y otras plataformas con soporte I2S.
ESPECIFICACIONES Y CARACTERÍSTICAS
- Amplificador Clase D Mono.
- Voltaje de Alimentación: 2.5 – 5.5 VDC.
- Potencia de Salida:
- 3.2 W a 4 Ω, 10 % THD.
- 1.8 W a 8 Ω, 10 % THD.
- Interfaz de audio: I2S (DIN, BCLK, LRC).
- Frecuencias de Muestreo I2S: de 8 kHz a 96 kHz.
- PSRR: 77 dB típico a 1 KHz.
- Reducción de clics y pop.
- No requiere reloj maestro (MCLK).
- Compatible con altavoces de 4 Ω y 8 Ω.
- Cinco ganancias seleccionables por pin: 3dB, 6dB, 9dB, 12dB, 15dB (predeterminada 9 dB).
- Protección de Apagado Térmico.
- Dimensiones: 17 mm x 17 mm x 20 mm.
- Peso: 2.42 g.
DOCUMENTACIÓN Y RECURSOS
INFORMACIÓN ADICIONAL
Puntos Importantes de Funcionamiento.
Este amplificador está diseñado para alimentar únicamente altavoces de bobina móvil. La impedancia del altavoz debe ser de 4 Ω o superior. La señal de salida es una onda cuadrada PWM de 330 kHz con un ciclo de trabajo proporcional a la señal de audio. La inductancia de la bobina del altavoz actúa como un filtro paso bajo para compensar las frecuencias altas. No lo utilices como preamplificador.
Las salidas de cada canal están conectadas en puente sin conexión a tierra. Esto significa que, para cada canal, los polos positivo y negativo alternan la polaridad para crear un amplificador de un solo canal con el doble de potencia disponible. Conecta los altavoces mediante los bloques de terminales de tornillo de 3.5 mm:
- 5 V a 4 Ω a 10 % THD – 3 W máx.
- 5 V a 4 Ω a 1 % THD – 2.5 W máx.
- 3.3 V a 4 Ω a 10 % THD – 1.3 W máx.
- 3.3 V a 4 Ω a 1 % THD – 1.0 W máx.
- 5 V a 8 Ω a 10 % THD – 1.8 W máx.
- 5 V a 8 Ω a 1 % THD – 1.4 W máx.
- 3.3 V a 8 Ω a 10 % THD – 0.8 W máx.
- 3.3 V a 8 Ω a 1 % THD – 0.6 W máx.
Esta es la alimentación para el amplificador y su lógica. Puedes suministrar desde 2.5 V hasta 5.5 V. Ten en cuenta que a 5 V puede llegar a suministrar hasta 2.8 W a tu altavoz, así que asegúrese de que tu fuente de alimentación pueda manejar fácilmente hasta 650 mA. Recomendamos una fuente de alimentación con especificaciones de al menos 800 mA para tener margen de maniobra. Si tienes un dispositivo lógico de 3.3 V, aún puedes alimentar el amplificador desde 5 V, ¡y eso es lo que se recomienda para obtener la máxima potencia de salida!
Descripción de Pines.
- GND: Tierra.
- LRC (reloj izquierdo/derecho): Este es el pin que le indica al amplificador cuándo los datos son para el canal izquierdo y cuándo son para el canal derecho.
- BCLK (Bit Clock): Este es el pin que le indica al amplificador cuándo leer datos en el pin de datos.
- DIN (Entrada de datos): Este es el pin por donde entran los datos reales, tanto los datos izquierdos como los derechos se envían en este pin, el pin LRC indica cuándo se transmiten los datos izquierdo o derecho.
- GAIN (Ganancia): Es, en realidad, el ajuste de ganancia. Puede tener una ganancia de 3 dB, 6 dB, 9 dB, 12 dB o 15 dB.
- 15dB, si se conecta una resistencia de 100K entre GAIN y GND.
- 12dB, si GAIN está conectado directamente a GND.
- 9dB, si GAIN no está conectado a nada (este es el valor predeterminado).
- 6dB, si GAIN está conectado directamente a VIN.
- 3dB, si se conecta una resistencia de 100K entre GAIN y VIN.
De esta forma, la ganancia predeterminada es de 9 dB, pero puedes cambiarla fácilmente modificando la conexión al pin GAIN. Ten en cuenta que podría ser necesario reiniciar el equipo para ajustar la ganancia.
Modo SD.
Este pin se usa para el modo de apagado, pero también para configurar el canal de salida. Es un poco confuso, pero básicamente:
- Si SD está conectado a tierra directamente (el voltaje es inferior a 0.16 V), el amplificador se apaga.
- Si el voltaje en SD está entre 0.16 V y 0.77 V, entonces la salida es (Izquierda + Derecha)/2, que es el promedio estéreo.
- Si el voltaje en SD está entre 0.77 V y 1.4 V, entonces la salida es solo el canal derecho.
- Si el voltaje en SD es mayor a 1.4 V, entonces la salida es el canal izquierdo.
Esto se ve agravado por una resistencia pulldown interna de 100K en SD, por lo que debes usar una resistencia pullup en SD para equilibrar la resistencia pulldown interna de 100K. Para el módulo hay una resistencia de 1M entre SD y VIN. Esta, al alimentarse con 5 V, proporciona la salida estéreo promedio. Si solo deseas el canal izquierdo o derecho, o si la alimentación no es de 5 V, puede que tengas que experimentar con diferentes resistencias para obtener el voltaje deseado en SD.
¿Cómo probar el Max98357 Amplificador de Audio Mono I2S Clase D 3W?
Aquí tienes una guía paso a paso para probar el MAX98357 con una ESP32 DevKitC V4.
Materiales Necesarios.
- Módulo MAX98357 I2S Clase D.
- ESP32 DevKitC V4 (ESP32 WROOM 32D o similar).
- Altavoz 4 Ω u 8 Ω (3–5 W recomendado).
- Cables Dupont.
- Protoboard (opcional).
- PC con Arduino IDE.
Diagrama de Conexión.
| MAX98357 | ESP32 DevKitC |
|---|---|
| VIN | 5V |
| GND | GND |
| DIN | GPIO 22 |
| BCLK | GPIO 26 |
| LRC / LRCLK | GPIO 25 |
| GAIN | Sin conectar (ganancia por defecto) |
| SD / EN | VIN (o dejar sin conectar) |
Conecta el altavoz directamente a los terminales + y − del módulo (no a GND).

Código de Programación.
#include "driver/i2s.h"
#include <math.h>
#define I2S_DOUT 22
#define I2S_BCLK 26
#define I2S_LRC 25
#define SAMPLE_RATE 44100
#define AMPLITUDE 16000 // Volumen (cambia este valor)
i2s_config_t i2s_config;
i2s_pin_config_t pin_config;
void playNote(float freq, int duration_ms) {
int samplesCount = (SAMPLE_RATE * duration_ms) / 1000;
int16_t sample;
size_t bytes_written;
for (int i = 0; i < samplesCount; i++) {
sample = AMPLITUDE * sin(2 * PI * freq * i / SAMPLE_RATE);
i2s_write(I2S_NUM_0, &sample, sizeof(sample), &bytes_written, portMAX_DELAY);
}
}
void setup() {
i2s_config = {
.mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_TX),
.sample_rate = SAMPLE_RATE,
.bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT,
.channel_format = I2S_CHANNEL_FMT_ONLY_LEFT,
.communication_format = I2S_COMM_FORMAT_I2S,
.intr_alloc_flags = ESP_INTR_FLAG_LEVEL1,
.dma_buf_count = 8,
.dma_buf_len = 64,
.use_apll = false
};
pin_config = {
.bck_io_num = I2S_BCLK,
.ws_io_num = I2S_LRC,
.data_out_num = I2S_DOUT,
.data_in_num = I2S_PIN_NO_CHANGE
};
i2s_driver_install(I2S_NUM_0, &i2s_config, 0, NULL);
i2s_set_pin(I2S_NUM_0, &pin_config);
}
void loop() {
// Melodía simple
playNote(262, 300); // Do
playNote(294, 300); // Re
playNote(330, 300); // Mi
playNote(349, 300); // Fa
playNote(392, 300); // Sol
playNote(440, 300); // La
playNote(494, 300); // Si
playNote(523, 600); // Do
delay(1000);
}
- Sube el código a la ESP32.
- Al alimentar, deberás escuchar un tono en el altavoz.
- Ajusta el volumen cambiando el valor amplitud:
- Volumen bajo:
3000. - Volumen medio:
8000. - Volumen alto:
12000. - Máximo (no recomendado):
16000 – 20000.
- Volumen bajo:

Sensor de Obstaculos KY-033
Pinzas de Microcorte 5''
VL53L0X Medidor de distancia Laser I2C 940nm ToF




























Valoraciones
No hay valoraciones aún.