Monday, July 6, 2020

Digital Headphone Amplifier (Arduino + TDA7439)

This time I designed a headphone amplifier that utilizes an Arduino Microcontroller and DSP (digital sound processor). The design is simple, where the Arduino microcontroller controls the DSP chip (in this case, I use TDA7439).

TDA7439 chip features include:
  • Volume
  • Gain
  • Tone Bass (Low)
  • Tone Middle (Mid)
  • Treble (High) Tone
  • Mute
  • 4 Channel Input

Besides Arduino controlling the TDA7439 DSP Chip, it also displays a control menu on OLED 0.96 ". The Arduino microcontroller is also connected to the rotary encoder as the central controller of the TDA7439 chip. By using a rotary encoder that is accompanied by a switch button, it can control the entire program. When the rotary encoder is rotated to the right, the menu cursor will scroll down, and when turned to the left, the menu cursor will scroll up. If we activate one of the menus, the rotary encoder must be pressed. And every time the list is down one layer, I will save the entire DSP configuration (gain, volume, bass, middle, and treble) into the Arduino EEPROM memory, so that when the power supply turns off, the configuration value will be maintained.

Another feature that I planted in this digital headphone amplifier design is the presence of a digital clock, so I connected the Arduino microcontroller to the DS3231 board module as a real-time clock.

Then I also include the input with the Bluetooth audio receiver, so we can choose which input is active.

The following is the block diagram

3D Design Board:





Product overview:


Wait…. to be continued