Go Down

Topic: Pwm pitch + volume control? (Read 1 time) previous topic - next topic

gorbulus

Jun 03, 2011, 09:50 pm Last Edit: Jun 03, 2011, 09:57 pm by gorbulus Reason: 1
Hi everyone. I'm looking for a way to control volume of a pwm output while a melody is being played. I'd like to use a photoresistor hooked up to an analog input to control the volume. The example toneMelody is similar to what my code looks like except it's in void loop. I know a photoresistor between the speaker and ground would be one way of doing it, but I want full control from no volume to full volume. Another output to a transistor that controls the pwm might work too, but I'd like to do it without many components. Any help would be greatly appreciated.

CrossRoads

Photo resistors usually have a wide range of resistance, if it got up in resistance much at all you wouldn't get much volume being in series with a 4-8-16 ohm speaker.
What would better is to have the photoresistor in series with an output feeding a self-amplified computer moniter speaker - got one of those around? The lower its resistance the higher the volume.
Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.

gorbulus

#2
Jun 03, 2011, 10:58 pm Last Edit: Jun 04, 2011, 09:57 pm by gorbulus Reason: 1
CrossRoads, thanks, but thats not really what im looking for. Space is limited so I would like to do it mostly in code. I'm leaning towards the using a transistor in series with the pwm output to the speaker, and then mapping a separate photoresistor input that outputs to the base of the transistor... though im not really sure how to work that out since I'm new to electronics and cant bias a transistor yet. I also saw this http://arduino.cc/forum/index.php/topic,36857.0.html, but it confuses me a bit and i'm not sure how i would use it. What I really want is to use all code: no transistor, no amplifier. Using light sensitivity to control the volume is also vital and it probably needs to be calibrated so i can get full control. Is that possible?

DeFex

http://www.adrianfreed.com/content/arduino-sketch-high-frequency-precision-sine-wave-tone-sound-synthesis

he has volume on there, and accurate pitch. you can also put in a lot of different waveforms besides his sine, by making more tables besides the sintable
I based a long running project on it. just keep in mind when you reduce the volume in code you reduce the amount of bits resolution of the output.

also there is a change possible in the setup code for the pwm on pins 9 and 10 you change it to a 16 bit timer (but it only outputs 10 bit PWM) which is much better if you are changing the volume.

(i haven't adapted that to his code because i use a DAC, but i will look in to it soon)

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy