Using Your PC As A Simple Signal Generator

dc_offset_circuit

[Debraj] needed a simple signal generator for a project he was working on, but didn’t have one handy. He found that the easiest and cheapest way to get clean, reliable signaling was by using something that was already sitting on his desk – his PC.

He found that the tone generator built into Audacity was quite useful, at least for generating waveforms at less than 20 KHz or so. Upon plugging his scope into his sound card’s audio jack, he observed that the PC had good frequency fidelity, though it required an additional DC offset as most cards are built to remove that offset from the waveform.

Using a LM358 as a non-inverting summing amplifier, he was able to apply a steady DC offset and generate usable signals for his micro controller projects. A schematic for his offset circuit is available on his site, should you wish to build one of your own.

[Debraj] also notes that though Audacity is a cheap free way to generate simple signals, any number of complex signals can be generated using MATLAB if you happen to own a copy.

AVR DDS Signal Generator Improvements

[Vassilis Papanikolaou] took a good thing and made it better with some design upgrades to this AVR based signal generator. We looked at version 1.0 of this tool back in 2006 and since then it saw an upgrade to 2.0. But [Vassilis] wanted to take things one step further, with a compact single-sided PCB. What you see above is the beautiful result of his work; a professionally made board that is compact, uses through-hole components, and has zero wire jumpers.

If you want to build one for yourself there’s a great parts list as well as board artwork and schematic. The system uses an ATmega16 so you’ll need a way to program one. There’s also just a bit of firmware tweaking to remap the control buttons to match the updated hardware layout.