Go Down

Topic: Tone() and DAC (Read 982 times) previous topic - next topic


Hi, I haven't got my Due yet, but I saw that the DAC pins allowed to make any kind of sound signal, so I wondered if this worked:

Code: [Select]
tone(DAC0,some frequency);

And if yes, would it make a square wave or a sine one?
And if no how can i get a sine wave from it?


   I also do not have a Due yet, but when I do I will be converting some of my synthesizer projects to run on it.

   The Due will generate a square wave, you have to write code to generate a sinewave, the most common technique is known as direct digital synthesis. This approach uses a table of values to generate the output waveform, once you have a basic framework up and running you can generate any waveform you want including some very out there waveforms.

   I have a four oscillator wavetable library up and running on my UNO which I will convert to Due once I get one.

Here is a good intro to direct digital synthesis technique -


   Its worth mentioning that sinewaves are not very interesting, they are very plain sounding, squarewaves, rampwaves and all kinds of broken up waveforms are more interesting.

   I recently found an online resource where a guy had collect 100's of waveforms and made them available for download, one of my first due projects will be to put these onto and SD card and build a quick synth engine to play around with them.

Here is a quick UNO Based project that shows off some DDS with a bit more background -

And here is my current DDS Synth engine in action -

And finally this hypnotic little video of someone messing around with a synth engine and an oscilliscope - not a sinewave in sight but lots of wavetables and wavetable mixing -


Duane B
Read this
then watch this


Go Up