Compacte I2S DAC en versterker voor wie digitale audio rechtstreeks naar een luidspreker wil sturen.
SKU: OT6745 Artikelnummer: XV193 EAN: 8720828223635 Locatie: F09.07
Alternatief
2x15W Digitale Audio Mini Versterker 8-24V Module | TPA3110 | HW-714
€ 4,85
Bekijk dit alternatief
Zo sluit je de I2S DAC met 3W versterker - MAX98357A aan op een Arduino UNO of ESP32, met een voorbeeldsketch die je direct kunt uploaden.
Dit project laat de MAX98357A I2S-versterker zien, aangesloten op een Arduino Uno en een 3W-luidspreker. Omdat de op AVR gebaseerde Arduino Uno geen native I2S-periferie heeft, demonstreert de sketch de bekabeling van de interface door de controle- en datapinnen te schakelen en statusberichten uit te sturen naar de Serial Monitor op 115200 baud.
/*
* ==================================================================
* Generated by Codey.online — https://www.codey.online
* ==================================================================
* Project : MAX98357A I2S Amplifier Demo
* Board : Arduino UNO (arduino:avr:uno)
* Parts : 3W amplifier MAX98357A I2S DAC
* Libraries : none (built-in)
*
* Codey Online is an AI-powered browser IDE for Arduino and ESP32.
* Describe your project and Codey writes the code, draws the wiring
* diagram and uploads it to your board, straight from the browser.
* This code is free to use, modify and share, without warranty.
* ==================================================================
*/
// MAX98357A I2S Amplifier wiring and basic test sketch
// Note: AVR Arduino Uno does not have hardware I2S.
// This sketch verifies pin connections and demonstrates signal pulsing.
const uint8_t PIN_BCLK = 9;
const uint8_t PIN_LRC = 8;
const uint8_t PIN_DIN = 10;
const unsigned int toneHz = 440;
const unsigned long toneOnMs = 1000;
const unsigned long toneOffMs = 500;
void outputPulse(unsigned long durationMs, unsigned int frequencyHz) {
unsigned long start = millis();
unsigned long halfPeriodUs = 500000UL / frequencyHz;
while (millis() - start < durationMs) {
digitalWrite(PIN_DIN, HIGH);
delayMicroseconds(halfPeriodUs);
digitalWrite(PIN_DIN, LOW);
delayMicroseconds(halfPeriodUs);
}
}
void setup() {
pinMode(PIN_BCLK, OUTPUT);
pinMode(PIN_LRC, OUTPUT);
pinMode(PIN_DIN, OUTPUT);
digitalWrite(PIN_BCLK, LOW);
digitalWrite(PIN_LRC, LOW);
digitalWrite(PIN_DIN, LOW);
Serial.begin(115200);
Serial.println(F("MAX98357A Amplifier Test"));
Serial.println(F("Pins initialized: BCLK=9, LRC=8, DIN=10"));
}
void loop() {
Serial.println(F("Signal ON (440 Hz pulse)"));
outputPulse(toneOnMs, toneHz);
Serial.println(F("Signal OFF"));
digitalWrite(PIN_DIN, LOW);
delay(toneOffMs);
}
Wiring diagram and example code generated by Codey.online — https://www.codey.online
Dit project speelt afwisselende audiotonen af via een 3W-luidspreker met de MAX98357A I2S digitale audioversterker. De ESP32 synthesiseert 16-bit PCM-audio in realtime en streamt deze via de I2S-bus rechtstreeks naar de DAC-versterker.
/*
* ==================================================================
* Generated by Codey.online — https://www.codey.online
* ==================================================================
* Project : ESP32 I2S Audio Tone Generator with MAX98357A
* Board : ESP32 DEVKIT V1 (esp32:esp32:esp32doit-devkit-v1)
* Parts : 3W amplifier MAX98357A I2S DAC
* Libraries : none (built-in)
*
* Codey Online is an AI-powered browser IDE for Arduino and ESP32.
* Describe your project and Codey writes the code, draws the wiring
* diagram and uploads it to your board, straight from the browser.
* This code is free to use, modify and share, without warranty.
* ==================================================================
*/
#include <Arduino.h>
#include "driver/i2s.h"
#include <math.h>
#define I2S_BCLK 26
#define I2S_LRC 25
#define I2S_DIN 22
#define SAMPLE_RATE 44100
void setup() {
Serial.begin(115200);
i2s_config_t 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_RIGHT_LEFT,
.communication_format = I2S_COMM_FORMAT_STAND_I2S,
.intr_alloc_flags = ESP_INTR_FLAG_LEVEL1,
.dma_buf_count = 8,
.dma_buf_len = 64,
.use_apll = false,
.tx_desc_auto_clear = true
};
i2s_pin_config_t pin_config = {
.bck_io_num = I2S_BCLK,
.ws_io_num = I2S_LRC,
.data_out_num = I2S_DIN,
.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);
Serial.println("MAX98357A I2S Tone Generator Ready!");
}
void playTone(float freq, int durationMs) {
int totalSamples = (SAMPLE_RATE * durationMs) / 1000;
size_t bytesWritten;
int16_t buffer[128];
float phaseStep = 2.0 * PI * freq / SAMPLE_RATE;
float phase = 0.0;
int samplesRemaining = totalSamples;
while (samplesRemaining > 0) {
int toWrite = min(64, samplesRemaining);
for (int i = 0; i < toWrite; i++) {
int16_t sample = (int16_t)(sin(phase) * 6000.0);
buffer[i * 2] = sample; // Left channel
buffer[i * 2 + 1] = sample; // Right channel
phase += phaseStep;
if (phase >= 2.0 * PI) phase -= 2.0 * PI;
}
i2s_write(I2S_NUM_0, buffer, toWrite * sizeof(int16_t) * 2, &bytesWritten, portMAX_DELAY);
samplesRemaining -= toWrite;
}
}
void loop() {
Serial.println("Playing 440 Hz (A4)...");
playTone(440.0, 400);
delay(100);
Serial.println("Playing 880 Hz (A5)...");
playTone(880.0, 400);
delay(1000);
}
Wiring diagram and example code generated by Codey.online — https://www.codey.online
Als je op zoek bent naar een gemakkelijke en betaalbare manier om je digitale geluidsbestanden te versterken, dan is de MAX98357 I2S Amp Breakout iets voor jou. Het neemt standaard I2S digitale audio-invoer en decodeert het niet alleen naar analoog, maar versterkt het ook rechtstreeks naar een luidspreker. Perfect om compact versterkt geluid toe te voegen, het combineert 2 break-outs (I2S DAC + Amp) in één.
I2S is een digitaal geluidsprotocol dat wordt gebruikt op schakelborden om audiogegevens door te geven. Veel geavanceerde chips en processors beheren alle audio in digitale I2S-indeling. Om gegevens in te voeren of uit te voeren, worden drie of vier pinnen gebruikt (data in, data out, bit clock en left-right channel select). Meestal is er voor audiotoestellen een DAC-chip die I2S aanspreekt en het omzet naar analoog dat een koptelefoon kan aansturen.
Deze kleine mono-versterker is verrassend krachtig - hij kan 3.2 watt vermogen leveren aan een luidspreker met een impedantie van 4 ohm (bij 5V voeding en 10% THD). In de miniatuur chip zit een klasse D-controller, die werkt op een voedingsspanning van 2.7V-5.5VDC. Omdat de versterker een klasse D is, is hij buitengewoon efficiënt, waardoor hij perfect is voor draagbare en batterijgevoede projecten. Hij heeft ingebouwde thermische en overstroombeveiliging, maar we merkten nauwelijks dat hij warm werd.
De audio-ingang is I2S-standaard, je kunt 3.3V of 5V logische gegevens gebruiken. De uitgangen zijn "Bridge Tied" - dat betekent dat ze rechtstreeks op de uitgangen worden aangesloten, zonder aansluiting op de grond. De uitvoer is een ~300KHz blokgolf-PWM die vervolgens wordt 'gemiddeld' door de luidsprekerspoel - de hoge frequenties worden niet gehoord. Al het bovenstaande betekent dat je de uitvoer niet kunt aansluiten op een andere versterker, hij moet rechtstreeks de luidsprekers aansturen.
Er is een Gain-pin die kan worden aangepast om de versterking te veranderen. Standaard geeft de versterker je 9 dB aan versterking. Door een pull-up of pull-down weerstand aan te sluiten, of rechtstreeks te bedraden, kan de Gain-pin worden ingesteld op 3 dB, 6 dB, 9 dB, 12 dB of 15 dB.
De ShutDown/Mode-pin kan worden gebruikt om de chip in de slaapstand te zetten of in te stellen welk I2S-audiokanaal naar de luidspreker wordt geleid. Standaard geeft de versterker een (L+R)/2 stereomix uit naar mono-uitgang. Door een weerstand toe te voegen, kun je het wijzigen naar alleen links of alleen rechts uit.
Specificaties:

| Voedingsspanning | 2.7V-5.5VDC |
|---|---|
| Uitgangsvermogen | 3.2W bij 4Ω, 10% THD, 1.8W bij 8Ω, 10% THD, bij 5V voeding |
| PSRR | 77 dB typ. bij 1 kHz |
| Vijf pin-selecteerbare versterkingen | 3 dB, 6 dB, 9 dB, 12 dB, 15 dB |
| I2S-samplefrequenties | 8 kHz tot 96 kHz |
Nog geen beoordelingen.
Niet tevreden? Je hebt 30 dagen bedenktijd na ontvangst om het product terug te sturen.
Alles over retourneren
I2S DAC met 3W versterker - MAX98357A