Generador de Onda Sinusoidal, Cuadrada y Triangular AD9833
$480Quedan 2 unidades
Descripción eléctrica detallada: El módulo AD9833 es un generador de señal de frecuencia programable mediante interfaz serial (SPI), ideal para aplicaciones que requieren generaci…
MóduloPrototipoArduinoBajo stockCódigo
Pocas unidades disponibles: conviene confirmar stock y entrega por WhatsApp.
Stock confirmado por WhatsAppEnvíos Montevideo e interiorAyuda técnica antes de pagar
Descripción eléctrica detallada: El módulo AD9833 es un generador de señal de frecuencia programable mediante interfaz serial (SPI), ideal para aplicaciones que requieren generación de formas de onda como sinusoidal, cuadrada y triangular. Funciona con un rango de frecuencia desde 0 hasta 12.5 MHz, controlado por un microcontrolador o Arduino.
Especificaciones:
Voltaje de operación: 2.3V a 5.5V
Consumo de corriente: 20 mA (típico)
Interfaz: Serial SPI
Tipos de onda generados: Sinusoidal, cuadrada y triangular
Rango de frecuencia: 0 a 12.5 MHz, ajustable mediante programación
Resolución de frecuencia: 28 bits, permitiendo pasos de frecuencia muy finos
Salida: Señal analógica de baja distorsión
Comprar Generador de Onda Sinusoidal, Cuadrada y Triangular AD9833 en Uruguay
En MicroUniversos podés consultar stock de Generador de Onda Sinusoidal, Cuadrada y Triangular AD9833, coordinar entrega en Montevideo o envío al interior y revisar compatibilidad antes de cerrar el pedido por WhatsApp.
Si estás armando un proyecto con Arduino, ESP32, sensores, displays o módulos de potencia, enviá placa, tensión y objetivo para confirmar que este producto sea adecuado.
Ejemplo de código
#include <SPI.h>
// Pines de conexión
const int FSYNC = 10; // Pin FSYNC conectado a SS (Chip Select)
const int SPI_SPEED = 1000000; // Velocidad de comunicación SPI
void setup() {
pinMode(FSYNC, OUTPUT);
SPI.begin();
SPI.beginTransaction(SPISettings(SPI_SPEED, MSBFIRST, SPI_MODE2));
digitalWrite(FSYNC, HIGH);
resetAD9833(); // Resetea el módulo
setFrequencyAD9833(1000); // Configura la frecuencia a 1 kHz
setWaveformAD9833("sinusoidal"); // Configura la onda sinusoidal
}
void loop() {
// El loop se deja vacío ya que la configuración inicial sigue generando la onda continuamente
}
// Función para enviar comandos al AD9833
void sendCommand(uint16_t command) {
digitalWrite(FSYNC, LOW);
SPI.transfer(highByte(command));
SPI.transfer(lowByte(command));
digitalWrite(FSYNC, HIGH);
}
// Resetea el AD9833
void resetAD9833() {
sendCommand(0x0100); // Comando de reset
}
// Configura la frecuencia del AD9833
void setFrequencyAD9833(uint32_t frequency) {
uint32_t freq_reg = (frequency * pow(2, 28)) / 25000000; // 25 MHz de reloj
uint16_t freq_low = freq_reg & 0x3FFF;
uint16_t freq_high = (freq_reg >> 14) & 0x3FFF;
sendCommand(0x2100); // Configura FREQ0 y PHASE0
sendCommand(0x4000 | freq_low); // Envía los bits bajos de frecuencia
sendCommand(0x4000 | freq_high); // Envía los bits altos de frecuencia
sendCommand(0x2000); // Sale del reset
}
// Configura el tipo de onda a generar
void setWaveformAD9833(String waveform) {
if (waveform == "sinusoidal") {
sendCommand(0x2000); // Onda sinusoidal
} else if (waveform == "cuadrada") {
sendCommand(0x2028); // Onda cuadrada
} else if (waveform == "triangular") {
sendCommand(0x2002); // Onda triangular
}
}