مازول 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); }
سلام با درود فراوان
آیا شما برای این ماژول برنامه ای دارین که ال سی دی و ولوم تغییر فرکانس داشته باشد ؟