I have an amplifier circuit for a microphone.The output of the circuit(the microphone signal amplified) is connected to the arduino A0 .Now the circuit works(I think ,the output voltage is 4.30 V) and the arduino serial monitor output 875 874... fluctuates with one or 1,2 or more points.The problem is that this value just goes down from 875....800.... .

Is it a correct value?(circuit taken from here http://wiring.org.co/learning/basics/microphone.html)

EDIT: If I put my finger on it the values go up a bit like 792 ,794,800

  • Please post your code (edit the question to do this). – Nick Gammon Sep 2 '15 at 0:59
  • When does the value "just go down" ? Have you checked for a dodgy ground connection? Why have you tied pin2 to ground? (Your code looks good) – Code Gorilla Oct 2 '15 at 12:08
  • While you may well have circuit problems, before investing in it realize that ADC samples from an Uno reported textually over serial won't be a very meaningful representation of audio. – Chris Stratton Nov 1 '15 at 17:08

The amplifier circuit you refer to puts out 2.5 volts even without input from microphone. The LM386 has internal circuitry to make the output 1/2 of the +5 volts. Then, audio signal goes above and below the 2.5 volts.

The amplifier circuit will only be putting out the PEAK of your audio signal (because D1 and C2 is a peak detector)

So, when all is quiet, take that ADC value as meaning zero microphone input.

| improve this answer | |

This schematic contains also the OpAmp stage for a microphone. You could take it as reference against the design you are using. The LM386 is basically a more integrated version, iirc.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.