Sound Effects Processor Using Mega32

Introduction

As you can see from the title, our project, in a nutshell, is a Sound Effects Processor (for the lack of a better name), which is capable of taking an audio input, adding effects to it digitally and passing an analog output to an amplifier.

Sound Effects Processor Using Mega32
Sound Effects Processor Using Mega32

Fig 1. Joel(left) and Jeremy(right), the architects of The Sound Effects Processor taking a well deserved break.
For this endeavour, we first built an input stage that will amplify the input signal, as well as bias it to 2.5V (since the ADC can only sample positive signals). The ADC (MAX1111) is controlled by the microprocessor (Mega 32) using the SPI interface which was much easier than manually configuring a port to interface with the ADC(believe me, we tried that). We set the Mega 32 to sample the input at about 12 KHz which is fast enough to meet the Nyquist requirement for analog to digital sampling. The digital effects were done using by manipulating the input (which will be discussed in the Design page) and the output is passed to a R-2R DAC to a output amplifier stage and finally, to the speaker.
Fig 2. A photo of our input and output analog stages. The DAC is on the left while the ADC is to the right.

Design

After cracking our heads for days about what to do, we were inspired by a couple of projects done in the previous years that dealt with sound processing (such as The Shredder). The high level design is summarized in the block diagram shown below in figure 1.

Figure 1. Hardware block diagram.
The flow of the block diagram is rather straightforeward:
Sound Effects Processor Using Mega32
  1. the audio input goes through an amplification and bias stage and then flows through the ADC which is controlled via the SPI by the microcontroller.
  2. the input is sampled at about 12,000 samples per second. We decided that 6 kHz and above will cover most of the frequency content of the expected audio signal. 12 kHz made it sound better.
  3. the microcontroller stores the input in an array and sends the output through PORT D to the DAC while polling the buttons for user input
  4. if no effects are turned on, the sampled output is sent straight out
  5. if any of the effects are on, the microcontroller does the appropriate DSP to the input and outputs theprocessed signal
  6. the LCD will display which effects are on or off as well as the volume

 
For more detail: Sound Effects Processor


About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top