For this exercise I wanted to finally get the DDS Daughterboard from NJQRP working. My dad (W6SJV) built the board as an introduction to building surface mount kits, and it didn't go so well. With the aid of a stereo microscope I was able to isolate and fix the solder bridges which should have fixed the board. However, we got distracted and never got around to interfacing the board to a computer for testing.
Now I'm using an Arduino UNO to drive the DDS Daughterboard serial interface. A simple sketch was written based on the ElecFreaks library for the AD9850. The sketch toggles the RF output between two frequencies (7.101 MHz and 7.1009 MHz) every second.
Fritzing software. This is a pretty neat package that tries to provide simple to use tools to cover your design from prototype to product. It includes schematic tools, PCB layout, and a nifty editor for documenting your breadboard connections. Here is the what the breadboard for this exercise looks like:
The associated schematic is:
The LEDs are simple diagnostic aids. I wrote some quick, throw away sketches to turn the signal lines on one at a time in order to verify my connections. They are also a good place to connect an oscilloscope probe. Don't expect to see them flash when control codes are written to the AD9850; the pulses are just too short to see with the naked eye.
Yes, there is a discrepancy between the breadboard and the schematic. The breadboard shows a 9v battery, but it is labelled +12v on the schematic. I actually used a 13.5v bench supply. The DDS daughter board is configured to properly bias the final amplifier based on a +12v supply, so that is what I documented on the schematic. The breadboard symbols do not include a general purpose power supply, so I used the 9v battery as a stand-in (and the circuit does actually work at 9v, though the output waveform is to a pure sine wave).
LED is the Arduino UNO on-board LED. Pin
The loop toggles the Arduino UNO on-board LED and the frequency every second.
ElecFreaks provides a GPLv2 licensed Arduino library that supports the AD-9850. The library is specifically designed to work with their DDS Module, but it did not require any changes, other than pin numbers, to work with the DDS Daughterboard.
The library code did need to be updated for Arduino v1.0. The modified version is included in the attached zip file.
The attached zip file includes the Arduino sketch, the modified ElecFreaks library, and the Fritzing file (
If you have been developing Arduino code, then the
The included library demo sketch (LXARDOSCOPE) from ElecFreaks, wasn't tested, looks interesting. A more complete presentation is available.
An oscilloscope should show a sine wave on the RF out pin. Then using a Softrock Ensemble II (with a piece of wire for an antenna) and Quisk, you should be able to get a display like the one show above. The image above is cropped from the full window and I did use the Z-slider to zoom in a bit:
group on Google+, join up and let me know what you think about this exercise.