مازول AD9833 یک هدر برد چیپ AD9833 می باشد . این چیپ یک سیگنال ژنراتور قابل تنظیم است که توانایی تولید سیگنال های 1Hz تا 12MHz را دارد . همچنین می توانید سیگنال های سینوسی ، مربعی و مثلثی را با آن بسازید . از این ماژول میتوانید بجای کریستال های با فرکانس خاص یا در مدارات RF از آن استفاده کنید . AD9833 از طریق یک رابط SPI سه سیمه کنترل می شود که می توانید آنرا توسط MCU هایی مانند آردوینو راه اندازی کنید . AD9833 بسیار کم مصرف است که جهت استفاده در مدارت پرتابل بهینه شده است .

 

در تصویر زیر پین های این ماژول نشان داده شده است :

1- پین REF جهت اتصال به ولتاژ رفرنس DAC داخلی ماژول است .

2- پین های VCC و GND تغذیه ماژل می باشند .

3- DAT و CLK همان پین های MISO و SCK ارتباط SPI هستند همچنین پین FNC همان CS می باشد .

4- OUT خروجی ماژول است .

 

راه اندازی ماژول AD9833 با آردوینو :

در برنامه زیر خروجی ماژول به پین 13 آردوینو متصل است که می توانید وضعیت خروجی را در Serial plotter آردوینو IDE مشاهده کیند . همچنین از این لینک می توانید برای دانلود کتابخانه AD9833 استفاده کیند .

کد های آردوینو :

#include <AD9833.h>     // Include the library

#define FNC_PIN 10       // Can be any digital IO pin
#define Frequency 1      // Frequency = 1Hz

//--------------- Create an AD9833 object ----------------
// Note, SCK and MOSI must be connected to CLK and DAT pins on the AD9833 for SPI
AD9833 gen(FNC_PIN);       // Defaults to 25MHz internal reference frequency

void setup() {
  Serial.begin(9600);
  // This MUST be the first command after declaring the AD9833 object
  gen.Begin();

  // Apply a 1000 Hz sine wave using REG0 (register set 0). There are two register sets: REG0 and REG1.
  // Each one can be programmed for:
  //   Signal type - SINE_WAVE, TRIANGLE_WAVE, SQUARE_WAVE, and HALF_SQUARE_WAVE
  //   Frequency - 0 to 12.5 MHz
  //   Phase - 0 to 360 degress (this is only useful if it is 'relative' to some other signal
  //           such as the phase difference between REG0 and REG1).
  // In ApplySignal, if Phase is not given, it defaults to 0.
  gen.ApplySignal(SQUARE_WAVE, REG0, Frequency);

  gen.EnableOutput(true);   // Turn ON the output - it defaults to OFF
  // There should be a 1 Hz square wave on the output of the AD9833
}

void loop() {
  Serial.println(analogRead(A0));

  delay(10);
}

 

 

Tags:
About Author: USER_4