Este es el primer video de una nueva sección en la que
voy a subir proyectos usando los conocimientos que vamos adquiriendo en la
serie “ESP32 desde Cero”. En este primer proyecto explico como reproducir el
audio de un archivo WAV utilizando uno de los DAC. Todos esto lo logramos con
sólo 6 líneas de código.
Código Fuente:
Código Fuente:
void setup() { } void loop() { for (int i = 0; i < 22000; ++i){ dacWrite(25, rawData[i]); delayMicroseconds(38); // ((1/22050)*1000000) - 7 } }
Gracias, me ha gustado mucho tu video. Sencillo y funcional y muy bien explicado
ResponderEliminarEste comentario ha sido eliminado por el autor.
ResponderEliminarEste comentario ha sido eliminado por el autor.
ResponderEliminarHay un problema: los datos se cargan en RAM y el ESP32 está limitado en RAM. Aconsejo cargar los datos en Flash, que es enorme. Bajar el retardo en uSec porque es una memoria más lenta:
ResponderEliminarvoid playSound(float volumen) {
for (int i = 0; i < sizeof (SineWave); i++) {
dac_output_voltage(DAC_CHANNEL_2, (uint8_t)((volumen/100)*(float)pgm_read_word(&(SineWave[i]))));
delayMicroseconds(10);
}
y los datos así:
unsigned char SineWave[] PROGMEM = {
0x52, 0x49, 0x46, 0x46, 0xEE, 0xD6, 0x00, 0x00, 0x57, 0x41, 0x56, 0x45,
0x66, 0x6D, 0x74, 0x20, 0x12, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00,....
Muy buen dato. Gracias Germán.
EliminarBravo, very good!
EliminarHola buen día, estoy muy interesado en hacer un reproductor de audio de 30 seg de duración con esp32, porfavor alguien me podria ayudar a hacerlo de antemano gracias este es mi numero de whatsapp en México 2721671023
Eliminarhola, excelente practica, se puede aplicar con NODEMCU ESP8266
ResponderEliminarHola Roberto. ESP8266 no tiene DAC. Podés hacer algo parecido usando PWM y un filtro. Saludos.
EliminarBravo, Thank you
ResponderEliminarSe puede aplicar para esp32 battery oled
ResponderEliminar