1.8 KiB
+++ date = "2017-10-16" title = "Signal 1 - DIY Signal Generator (Part 1)" tags = ["audio", "design", "electronics", "signal-1"] description = "This is part 1 in a series of posts showing you how I build a digitally controlled signal generator based on the AD9833." slug = "signal-1-diy-signal-generator-part-1" +++
Signal 1 is the name for my first signal generator project. The goal for this project is to create a device that can output clean sine waves in the 10 Hz - 100 kHz range. The primary use is testing audio equipment, like amplifiers.
This is what I'm looking for:
- Sine wave
- 10 Hz - 100 kHz minimum, easily adjustable
- Line level output (100-600 Ohm output impedance; 2Vpp)
- Display of frequency and Vpp settings
Bonus features:
- Other waveforms, like triangle and square wave
- Larger frequency range
- PWM support
- Graphical display for all kinds of information
There are at this point two pieces of hardware I have selected:
AD9833 Programmable Waveform Generator is a nice chip that can more than handle my simple needs. If it can go up to a 16Mhz square wave, that'd be great, but not necessary. It's also inexpensive when bought from China as a breakout board. I'm not usually a fan of there boards, but to for prototyping they should be fine. The AD9833 communicates for SPI, so I'll need a microcontroller to handle that.
ATMega xxx is a logical choice for me. I'm not tied down to Arduino, so writing C directly in the Atmel Studio would be OK. Having a microcontroller present also opens up the possibility of having a decent screen (maybe even touchscreen) on this project.
For now, I've ordered a few AD9833 breakout boards from China and I'll start working on a block diagram of the entire system soon, which you can read about in Part 2 of this series.