An Experimenter's DDS Signal Generator 

Last Updated: August 23rd 2003

All the KITS are sold out

This page is for information purposes only. the kits are sold out and there are no plans for another run of pcb's. please don't e-mail either myself, AP Circuits or bay area circuits for pcb's, they are not available. thank you.

Introduction:

This project started out of the need for an agile, accurate, stable frequency source for home brew projects. It started as a fairly small project and (as most of you know who home brew) kept getting bigger and bigger with more useful features in software and lot's of hardware changes. I almost gave up on it at one time as I was losing interest, but Dave WD4PLI/6 convinced me to keep working on it as he needed such a device for one of his Lowfer projects, so I kept trudging along in my spare time. I got a lot of encouragement from several local (and not so local) Hams including Joe W1GFH/6, Dave WD4PLI/6, Mike KO6NM, Bill N6PY, Skip K6LGL, Brice KA8MAV, and Steven KD1JV gave me a lot of really good advice (thanks Steve!). The finished product works well and gets used almost on a daily basis in the shack driving anything from one of Dave Benson's SW-40+'s to my old Johnson Viking II. It's been a rock solid performer and a really indispensable accessory to have around.

 

Basic Specs and Features:

Tuning Range: 1 Hz to 40 MHz Continuous

Tuning Resolution: Adjustable from 1 Hz to 1 MHz

Output: Buffered 1 Vpp into 50 Ohms for 50KHz to 40 MHz - Non Buffered Output also provided

Frequency Memories: 51 Frequency Memories (0 - 50) / Memory 0 is the Startup Frequency

Split Frequency Operation: Both RX and TX Frequencies Displayed and adjustable on the fly

Programmable RX Offset Frequencies (for use with Superhets such as the SW-40+)

Programable CW Offset (CW Tone) Adjustable +/- on the fly (or no Offset for Zero Beat)

Controls: 1 Encoder, 2 Momentary Push Buttons (TS and RX TX Adjust), 1 SPST Toggle Switch (Single/Split Frequency Mode)

Keying (TX) Line: Active Low

Built in Software Frequency Calibration (Zero Beat WWV on 10 MHz or use a Frequency Counter)

Generous prototyping area on the DDS PCB

All unused pins of the DDS plus 1 CPU port pin and VCC and V+ are brought out to a header for mods

Encoder Interface supports mechanical or optical encoder

ISP Port included for use with Parallel Port ISP Software and the AT89S8252 Firmware Uploader Interface to burn new Firmware into the Microcontroller

 

Operating Examples:

 

Hey it's our favorite frequency!

 

In this example, the Signal Generator is tuned to 14.060 MHz + the CW offset frequency (500 Hz default) on RX. If the little "+" were a "-" it'd be - 500 Hz or whatever the user had programmed as a CW offset.

 

Here's an example of the split operating mode. When the key line goes low (TX), the signal generator will be putting out a signal on 7.0425 MHz. When the key line goes high (RX - pulled high by built in resistor), it'll be putting out a signal on 7.043 MHz (plus the RX Offset if it's programmed in). The little "r" and big "T" on the display indicate that the Transmit frequency is selected for adjustment by the encoder. A big "R" and little "t" would indicate that the Receive frequency is selected for adjustment. By pressing the RX - TX Adjust button, you can toggle between the RX and TX frequencies for adjustment on the fly. Should make the fox hunts a lot eaiser, Hi!

 

By holding down the TS button and turning the encoder, you can adjust the tuning resolution from 1 Hz to 1 MHz.

 

 

Menu Mode Examples:

To enter Menu Mode, you hold the RX TX Adjust button down for > 1/2 second. Once in Menu Mode RX TX Adjust = exit or no, TS = execute or yes, and the encoder is used to select which menu item that you want to execute or to select memories to either read from or write to. Here are some examples of the menu:

 

Menu Item 1 - Read a Frequency from a Memory. Read the Frequency stored in a memory location, to be the active Frequency. If in Split Frequency Mode, the stored Frequency is read into the selected (RX or TX) Frequency register.

 

Menu Item 1 after TS was pressed to select it. The 02 is the Memory Number and the Frequency is what is currently stored in memory 02. (Store to memory looks the same, I did this so that you wouldn't accidentally over write a frequency).

 

After selecting the Memory that you want to read, pressing TS again brings up this display. At any time in the Menu Mode, RX TX Adjust can be pressed to exit without executing.  Any Menu Items that read or write from Memory have this final way to back out, it's kind of a last chance to ditch option.

 

Menu Item 2 - Store to Memory. Same as above except that you are writing to the memory.

 

Menu Item 3 - Store RX Offset. Store a frequency to be used as a positive offset (added to the display frequency on RX only) for use with Superhets. This will limit the upper frequency range on the display of the Signal Generator. Default is no RX Offset.

 

Menu Item 4 - Show RX Offset. Display the stored RX Offset Frequency

 

Menu Item 4 after pressing TS to execute it.

 

Menu Item 5 - Clear RX Offset. Set the RX Offset to 0 Hz, ie no RX Offset.

 

Menu Item 6 - Store CW Offset. Store a Frequency Offset that will set the amount of +/- frequency offset from zero beat you are while receiving. Useful for setting your RX CW tone. When in RX it's selectable on the fly by momentarily (< 1/2 second) pressing TS (toggles through +,-, or no CW Offset). Default setting is 500 Hz.

 

Menu Item 7 - Show CW Offset. Just like it says - Displays the Frequency stored for use as the CW Offset.

 

Menu Item 8 - Display Version. Displays the firmware version that you are using.

 

Power Up Functions:

Standard Menu Mode button functions apply after the Power Up Function has been entered.

Set Memory To Default - By holding down the RX TX Adjust button during power up (has to be done on first power up) the Frequency Memories are all set to 10 MHz, the RX Offset is cleared, and the CW Offset is set to 500 Hz

Oscillator Calibrate - By holding down TS at power up, the Signal Generator uses the default values for the oscillator and sends out what should be a 10 MHz signal. After a few minutes of warm up you can now adjust the encoder to either zero beat WWV on 10 MHz, use another calibrated receiver, or use a frequency counter to get the output to exactly 10 MHz. Once the Signal Generator is REALLY putting out 10 MHz pressing TS will store the Calibrated Oscillator values in EEPROM and you now have a calibrated Signal Generator. The Signal Generator is as stable as the oscillator that you use with the DDS. My Signal Generator in usually within 1 or 2 Hz across the entire range (worst case) after it has been correctly calibrated. After building the unit, this also has to be done before it will function correctly.

 

 

Hardware:

CPU: Atmel AT89S8252 running at 16 MHz (ISP Capable)

Serial EEPROM: Atmel AT24C02

Display: Seiko L1682B1J 16 Character x 2 Lines

DDS: Analog Devices AD9850 w/ 120 MHz Clock

Output Buffer: Mini Circuits ERA-1SM (50 Ohms in and out - 1 Vpp)

 

Side View

Back View

Front View

DDS PCB - Component Side

CPU PCB - Component Side

Blank DDS PCB - Front and Back*

Blank CPU PCB - Front and Back*

* - The PC Boards were expertly manufactured by AP Circuits

CAD Software was the free version of EAGLE and is available from CadSoft

 

Project Files for Download

      Latest Firmware (Version 1.1 - March 26th 2003)    

Version 1.1 includes an improved switch debounce routine for the TS and RX TX Adjust buttons along with some minor improvements in other parts of the firmware.

Schematics

    Board Layouts - Updated July 26th 2003   

Now includes better component placement layer images with part numbers and also 1:1 and 4:1 scaled images for both PCB's in PDF format.

Parts List and Functional Description

     DDS Signal Generator Manuals - By Jim N5IB    

Jim N5IB has done a fantastic job on these manuals. Everything from assembling your DDS Signal Genarator to how to set it up to use. Thanks Jim!!!

 

Parts Sources

Digi-Key

Mouser

W8DIZ's Kits and Parts Dot Com

Analog Devices

Mini Circuits

 

 

August 23rd - KITS are sold out

Jay Bromley W5JAY informed me tonight that all of the PCB/CPU kits that the Fort Smith QRP Group had for purchase are sold out. There are no plans for another run of PCB's. Sorry, but this project has run it's course. Look for more fun projects in the future...

For current builders of the "Experimenter's DDS Signal Generator" I'm always available for tech support at my e-mail address. Thanks for your support in this project, it's been a lot of fun and I hope to share further projects with all of you!

 

PICS OF THE KIT PC BOARDS

Here's what the PC Boards Look Like:

Blank Production CPU PCB - Front and Back**

 

Blank Production DDS PCB - Front and Back**

 

** - These High Quality Production PC Boards were manufactured By:

Bay Area Circuits - Thanks Harvey!!!

Have a PC Board Design you need fabricated? e-mail Harvey for a quote.

 

73's Trev

K6ESE Home