Several years ago, Jesper Hansen published a design for an AVR based mini-DDS generator. This project uses an AVR microcontroller and a simple resistor based DAC to generate various waveforms (sine, sawtooth, triangle, square) using a DDS software technique. Jesper also published a small Windows based program to control the generator, for example to change the frequency or waveform. Take a look at Jesper's project.

 

 

Since the Dutchtronix AVR Oscilloscope Clock hardware is well suited for this application, I ported it. It is now included as one of the standard applications in the V3.5a firmware.

 

The Dutchtronix AVR hardware uses a separate DAC IC, not a set of resistors. This results in very precise dots, good when creating a sharp image like the Clock, but not so good for this Function Generator. As a result, the waveforms are more "blocky". It also takes more steps to do one cycle in the DDS generation (13 cycles as opposed to 9 cycles in the original).

 

Finally, due to the tight DDS generation loop, it is not possible to poll the on-board tactile switches for user input. Only the serial input can be used since it can generate an interrupt. Therefore the AVR Clock needs to be connected to a Windows computer where you can use the ddscontrol program (download it here). Such a connection will require the installation of an RS-232 Level Conversion Circuit.

 

Please remember that this is a design from Jesper Hansen and he is the owner of all the rights to this project.

 

Instructions:

 

Start the downloaded ddscontrol.exe program. Right click the title bar to configure it.

 

 

 

bullet

Set the DDS Resolution to 24 bit, set the Synthesizer Frequency to 1538461 (20,000,000/13) and select the actual Comport being used.

bullet

Next connect a probe or BNC cable to CH1 on the AVR Oscilloscope Clock and your oscilloscope.

bullet

On the Dutchtronix AVR Clock, select the Menu (S1 short push), move to the "App" field (S2 short push), select the "Gen" application (S1 short push) and activate it (S2 short push).

 

You should see a waveform on your oscilloscope. You can change the shape and set the frequency using ddscontrol. Or you can incrementally increase or decrease using the arrows:

 

>

Up 1 Hz

>>

Up 100 Hz

>>>

Up 10,000 Hz

<

Down 1Hz

<<

Down 100 Hz

<<<

Down 10,000 Hz

 

 

Back to Dutchtronix AVR Oscilloscope Clock

 

horizontal rule

Back Next