I'm working with an Arduino Due's two DAC pins.
I want to output to a single 4W 5.7Ohm speaker to test my code, with the intent of eventually outputting to a set of speakers (woofer, mid-range, and tweeter) for better quality for frequencies between 87.31Hz to 3520Hz+.
I'm using the DAC pins in 12 bit mode, with output between .55 - 2.75V @ 3mA according to the linked sources (I know forums aren't definitive sources, but I've cross checked and many forum posts and sites are around this range. 3mA comes from total for all I/O pins of 130mA divided by 42 I/O pins total, not counting the 12 PWMs)
I understand that I need a circuit like the following:
- DAC output to "reconstruction filter" to smooth the quantized output.
- anti-aliasing filter, possibly the same as above, to remove noise (Nyquist Frequency stuff)
- Use an audio-tapered potentiometer for volume control by reducing amplitude of signal.
- Removal of both the DC offset and centering the signal on 0v using a capacitor/filter.
- Use an OpAmp to as a voltage follower to buffer the Arduino Due from the load of the speakers.
- Use an OpAmp (possibly the same one as above) to increase the power of the signal (via an external power source probably, because the Due cant drive much) to a range suitable for the speaker.
- A high pass filter to remove unwanted noise from the output.
I will be playing a sample at 16kHz, which I assume means I will have a variable duty cycle and therefore cannot use anything sensitive to this to function properly.
My questions are the following:
- Is this overkill for this kind of circuit, or way under the bar for a proper setup?
- How do I know where my high pass filter cutoff frequency should be, as my sample is of an acoustic instrument with natural overtones, meaning knowing just the frequency of the root note is not enough.
- Without a power source providing positive and negative voltage, is it enough to offset with a capacitor to get a balance on 0v, and is this lost over the OpAmp if it does not have a negative voltage going in? Can I just balance it at the end with a capacitor then?
- Is the OpAmp buffer/voltage follower enough to stop my Arduino from dying?
Thanks for the help. I'm new to audio circuits, my experience is in DC and programming the Arduino.