The AD9833 is a lowpower, programmable Direct Digital Synthesis (DDS) waveform generator capable of producing sine, triangular, and square wave outputs with exceptional frequency resolution [citation:7][citation:6]. This compact module features a 3wire SPI interface for seamless integration with Arduino, STM32, and other microcontrollers, making it ideal for test equipment, signal processing, and embedded applications.
| Parameter | Value |
|---|---|
| Supply Voltage | 2.3V - 5.5V DC [citation:1][citation:6] |
| Output Frequency Range | 0MHz - 12.5MHz [citation:6][citation:7] |
| Frequency Resolution | 0.1Hz (25MHz clock) / 0.004Hz (1MHz clock) [citation:5] |
| Waveform Types | Sine, Triangle, Square [citation:6][citation:8] |
| Interface | 3-wire SPI (up to 40MHz) [citation:2][citation:5] |
| Power Consumption | ~12.65mW at 3V [citation:6][citation:10] |
| DAC Resolution | 10-bit [citation:7] |
| Frequency Registers | Two 28-bit [citation:8] |
| Phase Registers | Two 12-bit [citation:8] |
| Operating Temperature | -40°C to +105°C [citation:1][citation:6] |
| Module Size | ~18 x 13 x 8mm [citation:1][citation:10] |
| Weight | ~1g [citation:1][citation:10] |
= Key Features =
Programmable Waveforms - Generates sine, triangle, and square wave outputs [citation:6][citation:8]
High Frequency Resolution 28bit tuning word enables 0.1Hz steps [citation:5][citation:7]
SPI Interface 3wire serial interface compatible with DSPs and microcontrollers [citation:2][citation:5]
Low Power Consumption Only ~12.65mW at 3V with powerdown sleep mode [citation:6][citation:10]
Wide Power Supply Range - Operates from 2.3V to 5.5V [citation:1][citation:6]
Compact Module - Small form factor fits into any project [citation:1][citation:9]
No External Components - Fully integrated DDS solution [citation:5][citation:6]
Software Programmable - Frequency and phase adjustable via code [citation:7][citation:8]
| Module Pin | Arduino Pin | Description |
|---|---|---|
| VCC | 3.3V or 5V | Power supply (2.3-5.5V) |
| GND | GND | Ground |
| SDATA | MOSI (D11) | Serial data input |
| SCLK | SCK (D13) | Serial clock input |
| FSYNC | D10 (User Defined) | Frame sync / chip select (active LOW) |
| OUT | — | Signal output (0.6Vp-p) [citation:7] |
> Connect VCC to 3.3V or 5V depending on your microcontroller
#include
#include
AD9833 gen(10); // FSYNC on pin 10
void setup() {
gen.begin();
gen.setFrequency(1000); // 1kHz
gen.setWaveform(AD9833_SINE);
}
void loop() {}
| Library | Platform | Features |
|---|---|---|
| RobTillaart/AD9833 | Arduino | HW/SW SPI, sine/triangle/square, frequency & phase control [citation:8] |
| Billwilliams1952/AD9833LibraryArduino | Arduino | Multiple registers, frequency increment, waveform control [citation:13] |
| BardiaAfshar/AD9833AD9834STM32HAL | STM32 | HAL library, HW/SW SPI, sine/triangle/square [citation:3] |
## How It Works
The AD9833 uses Direct Digital Synthesis (DDS) to generate precise waveforms [citation:7]:
√ Compatible with Arduino, ESP32, STM32, and Raspberry Pi
√ Supported by multiple open-source libraries
√ Wide 2.3-5.5V power supply range
√ Two frequency and phase registers for FSK operation [citation:8]
√ Builtin powerdown mode for battery saving [citation:5]
√ Proven Analog Devices quality
The AD9833 DDS Signal Generator Module delivers precise, programmable waveform generation in a compact, easytouse package. Perfect for function generators, test equipment, and embedded signal processing applications.
AD9833 DDS SIGNALGENERATOR FUNCTIONGENERATOR WAVEFORM SPI ARDUINO STM32 SINE SQUARE TRIANGLE DIY #PROGRAMMABLE New Best Seller AD9833