PMPedro Masi Burgos
← Proyectos

Sintetizador de audio digital (sustractivo)

Sintetizador sustractivo embebido en STM32F746 Discovery con entrada MIDI USB, osciladores tipo wavetable, envolvente ADSR y filtrado en tiempo real mediante el códec WM8994.

Proyecto académico desarrollado con un compañero de curso (ENIB).

  • STM32F746
  • C
  • USB MIDI
  • CMSIS-DSP
  • WM8994
  • ADSR
  • IIR/SVF
  • Python

Arquitectura

Cadena de audio en tiempo real en STM32F746 Discovery: host MIDI USB para notas/CC del teclado, generación por oscilador, filtrado de variables de estado con modulación LFO, conformación de amplitud ADSR y salida estéreo por el códec WM8994 a 44,1 kHz.

Cadena desde MIDI hasta la salida de audio
MIDI USB → oscilador → SVF + LFO → ADSR → WM8994.

Procesamiento de señales

Osciladores seno, diente de sierra y cuadrada, con exploraciones FIR/IIR y un filtro resonante de variables de estado. Trabajo asociado: transformada bilineal, rutinas CMSIS-DSP y construcción de formas de onda para síntesis sustractiva.

Verificación

Python y Jupyter para generar wavetables e inspeccionar formas de onda offline, y luego validación en la placa Discovery con teclado MIDI y salida de audio.