این ماژول بر پایه چیپ SI5351 می باشد که یک مولد پالس ساعت انعطاف پذیر است . این برد دارای سه خروجی به صورت سوکت های SMA می باشد . SI5351 توانایی تولید سیگنال هایی با فرکانس 8KHz تا 160MHz را دارد . این ماژول دارای رابط ارتباطی I2C است که به راحتی می توان آن را توسط آردوینو و یا هر MCU دیگری راه اندازی نمود . از این ماژول می توانید به عنوان اسیلاتور میکروکنترلر یا در مدارات RF از آن استفاده کنید . همپنین در ارتباط هایی مانند USB ، یا HDMI که نیاز به فرکانس های خاص دارند می توانید از این ماژول استفاده کنید . SI5351 با نرخ خظای پایین می تواند تقریبا هر فرکانسی را در بازه 0.0008MHz تا 160MHz تولید کند . مدل های زیادی از SI5331 وجود دارد که دارای پسوند های A ، B و… هستند . تفاوت این مدل ها در تعداد کانال خروجی و همپنین نوع کاربرد آن ها که می تواند پزشکی ، تصویر و.. باشد است . ماژول SI5351 دارای چیپ SI5351 معمولی با سه کانال خروجی است .
پین های ماژول SI5351 :
پین های 0 تا 2 خروجی های ماژول هستند که در کاربرد های معمولی می توانید از آن استفاده کنید اما در کاربرد های RF می توانید از کانکتور های SMA استفاده کنید .
پین های SCL و SDA پین های ارتباط I2C ماژول می باشند .
پین های VCC و GND به ترتیب تغذیه و زمین ماژول هستند .
مشخصات :
– عملکرد به صورت سیگنال ژنراتور
– فرکانس خروجی 8KHz تا 120MHz
– دارای PLL داخلی جهت تولید فرکانس های مختلف
– ولتاژ تغذیه 3.3 تا 5 ولت
– دارای 3 خروجی به صورت کانکتور SMA
– رابط ارتباطی I2C
– سطح ولتاژ خروجی 3 ولت
– امکان نصب بر روی برد بورد
– سازگار با آردوینو
راه اندازی SI5351 توسط آردوینو :
#include "si5351.h"
#include "Wire.h"
Si5351 si5351;
void setup()
{
bool i2c_found;
// Start serial and initialize the Si5351
Serial.begin(57600);
i2c_found = si5351.init(SI5351_CRYSTAL_LOAD_8PF, 0, 0);
if(!i2c_found)
{
Serial.println("Device not found on I2C bus!");
}
// Set CLK0 to output 14 MHz
si5351.set_freq(1400000000ULL, SI5351_CLK0);
// Set CLK1 to output 175 MHz
si5351.set_ms_source(SI5351_CLK1, SI5351_PLLB);
si5351.set_freq_manual(17500000000ULL, 70000000000ULL, SI5351_CLK1);
// Query a status update and wait a bit to let the Si5351 populate the
// status flags correctly.
si5351.update_status();
delay(500);
}
void loop()
{
// Read the Status Register and print it every 10 seconds
si5351.update_status();
Serial.print("SYS_INIT: ");
Serial.print(si5351.dev_status.SYS_INIT);
Serial.print(" LOL_A: ");
Serial.print(si5351.dev_status.LOL_A);
Serial.print(" LOL_B: ");
Serial.print(si5351.dev_status.LOL_B);
Serial.print(" LOS: ");
Serial.print(si5351.dev_status.LOS);
Serial.print(" REVID: ");
Serial.println(si5351.dev_status.REVID);
delay(10000);
}
© 2021 GitHub, Inc.
پس از بستن مدار و پروگرام کردن آردوینو خروجی های ماژول را به یک اسیلوسکوپ متصل کنید .


