Direct Digital Synthesis - How DDS Works and an Arduino Example

6 Просмотры
Direct digital synthesis (DDS) generators can make it easy to generate signals from square/ramp/sine to any arbitrary waveform with Arduino. The frequency can be set in the sketch and the system takes care of making it happen.

Here's an overview of how the DDS concept works and a demo for an Uno. The circuit is shown with the waveforms on a scope and is also simulated online with Tinkercad's free Uno simulator.

0:00 Intro
1:03 Basic DDS: Counter with R-2R Resistor ladder DAC simulated on an Uno in Tinkercad
2:58 Change from Ramp to Square wave
3:18 DDS Sine wave generator using look up table
4:21 DDS block diagram and functional description
7:05 Phase accumulator - lots of bits
9:57 DDS system equation for calculating the tuning word
10:36 DDS generator Uno sketch and hardware demo on a scope
13:18 Summary

DDS System block diagram, info, and equation from
Tinkercad Circuits
Resistor Ladder DAC
Nyquist conditions
Numerically controlled oscillator

Equipment I regularly use (support the channel by shopping through these affiliate links - I may earn a small commission and it doesn't cost you extra):
Mustool MT315 Digital Microscope
946C Solder Hot Plate 200mm x 200mm
ANENG AN8008 True RMS Multimeter
Minleaf NPS3010W Power Supply
FY6900 Dual Channel 60MHZ Signal Generator
Siglent SDS1104X-E 100Mhz Digital Oscilloscope 4 Channels Standard decoder

Support me on Patreon:
Комментариев нет.