Генератор частоты до 225 МГц на Arduino и китайском модуле Si5351

[Изображение создано чт, 18/11/2021 - 21:46
[Изображение создано чт, 18/11/2021 - 21:46
[Изображение создано чт, 18/11/2021 - 21:46
[Изображение создано чт, 18/11/2021 - 21:46
[Изображение создано чт, 18/11/2021 - 21:46
[Изображение создано чт, 18/11/2021 - 21:46

В статье мы разглядим создание генератора перестраиваемой частоты на основе платы Arduino и модуля Si5351, работающего в диапазоне 10 кГц - 225 МГц. Данный генератор может сгодиться для тестирования работы разных радиоприемников, может применяться в качестве генератора тактовых сигналов, в качестве гетеродина в супергетеродинных приемниках, в синтезаторах частоты и многих других схожих приложениях.

Нужные компоненты

  •     Плата <![CDATA[]]>Arduino Nano<![CDATA[]]>.
  •     Инкрементальный энкодер с кнопкой.
  •     <![CDATA[]]>OLED дисплей<![CDATA[]]> 128х64.
  •     <![CDATA[]]>Adafruit SI5351 CLOCK GEN<![CDATA[]]> (генератор тактовых частот).
  •     Toggle Switch, SPDT (переключатель).
  •     Panasonic RCA JACK (выходной радиочастотный разъем).
  •     Конденсаторы 10 нФ и 100 нФ.
  •     Конденсатор 10 мкФ.
  •     Резистор 1 кОм.
  •     Катушка индуктивности 100 мкГн (Inductor 100 uH).

В данном плане рассматривается генератор перестраиваемой частоты (variable-frequency oscillator, VFO), пригодный для применения в "домашних" (Do It Yourself , DIY) условиях. Данный генератор может сгодиться в синтезаторах частоты, супергетеродинных радиоприемниках, SDR-приемопередатчиках и т.д. Генератор имеет шкальный индикатор (Bargraph indicator) для отображения мощности сигнала (S-Meter) и 20 заблаговременно установленных диапазонов частот.

Основные особенности плана:

  •     рабочий диапазон от 10 кГц до 225 МГц;
  •     шаг настройки: 1 Гц, 10 Гц, 1 кГц, 5 кГц, 10 кГц и 1 МГц;
  •     регулируемое смещение (+ либо -) промежуточной частоты (ПЧ);
  •     20 заблаговременно установленных диапазонов частот (с стремительным доступом) в полосах частот АМ-вещания (BCB) и радиолюбительских диапазонах (HAM frequencies);
  •     режим генерации сигналов (функциональный генератор);
  •     для применения в качестве здешнего генератора на самодельных супергетеродинных радиоприемниках либо радиоприемниках с прямым реформированием;
  •     для применения в качестве генератора переменной частоты для радиолюбителей;
  •     для применения в качестве простого тактового генератора для калибровки либо генерации тактовых толчков;
  •     шкальный индикатор для отображения мощности сигнала через вход АЦП (аналого-цифрового преобразователя);
  •     вероятность работы с платами Arduino Uno, Nano и Pro Mini;
  •     использует типовой дисплей 128x64 I2C OLED SSD1306 и модуль Si5351;
  •     передача данных по интерфейсу I2C, нужно каждого 2 провода для подключения дисплея и модуля Si5351 к плате Arduino;
  •     высокая устойчивость и точность генерации частоты;
  •     отменная результативность, невысокая стоимость, дозволено собрать в домашних условиях.

Микросхема Si5351 это конфигурируемый через I2C генератор тактовых частот, безукоризненно подходящий для замены кварцев, кварцевых генераторов, генераторов VCXO (voltage-controlled crystal oscillator - кварцевый генератор, управляемый напряжением), синтезаторов с ФАПЧ (PLL), буферов развязки в приложениях, критичных к всеобщей стоимости. Основываясь на архитектуре PLL/VCXO + high resolution MultiSynth fractional divider, Si5351 может генерировать всякую частоту до 200 МГц на всем из выходов с нулевым отклонением от заданного значения (0 ppm error). Для удовлетворения разным требованиям приложений Si5351 выпускается в 3 версиях. Si5351A генерирует до 8 не зависящих друг от друга тактовых сигналов, применяя внутренний генератор, что дозволяет заменить несколько кварцев либо кварцевых генераторов. В Si5351B добавлен внутренний VCXO, что дает вероятность заменить как вольно (само­стоятельно друг от друга), так и синхронно генерируемые тактовые частоты. Это устраняет надобность использования дорогих особых кварцев, предоставляя при этом высокую безопасность работы в широком диапазоне настраиваемых частот. Si5351C предоставляет такую же эластичность, но синхронизируется при этом с внешним опорным генератором (CLKIN).

Узнать больше подробную информацию о микросхеме Si5351 и ее подключение к плате Arduino вы можете на сайте ее разработчика. Также тезисы ее работы недурно описаны на сайте microsin.net.

Схема генератора перестраиваемой частоты на Arduino и модуле Si5351 представлена на дальнейшем рисунке.

схема генератора 250Мгц

Для работы с планом исполните следующую последовательность шагов:

  •     подготовьте аппаратную часть плана согласно представленной схемы;
  •     подайте питание на плату Arduino;
  •     откройте код программы в Arduino IDE, установите все нужные библиотеки;
  •     установите настройки плана (preferences) (описаны дальше в статье), скомпилируйте скетч и загрузите его в плату Arduino Nano, Uno либо Pro Mini;
  •     вращайте ручку инкрементального энкодера для увеличения либо уменьшения генерируемой частоты;
  •     нажимайте кнопку 1 для метаморфозы шага настройки. Допустимые шаги настройки: 1 Гц, 10 Гц, 1 кГц, 5 кГц, 10 кГц и 1 МГц;
  •     нажимайте кнопку 2 для выбора одного из предварительно установленных частотных диапазонов либо выберите режим генератора (generator mode);
  •     включайте/выключайте переключатель SW 2 для переключения между режимами RX и TX. В режиме RX переключатель SW 2 открыт, а в режиме TX он замкнут на землю (GND). В режиме TX значение IF (промежуточной частоты) не добавляется/вычитается из выхода RF (радиочастоты) - данный режим отменно подходит для применения в домашних приемопередатчиках;
  •     подключите выходной сигнал с измерителя мощности (S-Meter) от вашего радиоприемника (радиостанции) к разъему X2 (вход S-Meter'а). Данный вход имеет настраиваемую восприимчивость, его показатель усиления дозволено настроить в приведенном скетче. На данный вход дозволено подавать сигналы от 500mV до 5V (max);
  •     значимое дополнение: if it freezes in the initialization text, comment (put a //) at the line 77 statup_text ();

Вы можете изменить следующие строки в скетче:

#define IF 455 //введите вашу IF (промежуточную) частоту, ex: 455 = 455kHz, 10700 = 10.7MHz, 0 = прямое реформирование частоты приемника либо радиочастоты генератора, "+" будет добавляться, а "-" будет вычитаться сдвиг промежуточной частоты.
#define BAND_INIT 7 // введите ваш первоначальный диапазон (Band) (1-21) в начале работы плана, ex: 1 = Freq Generator, 2 = 800kHz (MW - средние волны), 7 = 7.2MHz (40m), 11 = 14.1MHz (20m).
#define XT_CAL_F 33000 // показатель калибровки модуля Si5351, дозволено настроить дабы получить верно 10MHz. Увеличение этого значения будет сокращать частоту и напротив.
#define S_GAIN 303 //настройка восприимчивости входа измерителя мощности (Signal Meter A/D input): 101 = 500mv; 202 = 1v; 303 = 1.5v; 404 = 2v; 505 = 2.5v; 1010 = 5v (max).
#define tunestep A0 //контакт, к которому подключена кнопка для настройки шага настройки.
#define band A1 //контакт, к которому подключена кнопка для выбора частотного диапазона.
#define rx_tx A2 // контакт, к которому подключена кнопка для выбора режима RX / TX, RX = switch open (переключатель открыт), TX = switch closed to GND (переключатель замкнут на землю). В режиме TX частота IF (промежуточная) не учитывается.
#define adc A3 //контакт, применяемый как вход измерителя мощности (Signal Meter A/D input).

 

Видео, демонстрирующее работу генератора

Прикрпленные файлы: 

Категория: 

Оценить: 

4
Средняя: 3.5 (2 оценки)

Комментарии

а у меня не получается

а у меня не получается запустить, при прошивке выдает ошибку ..Rotary.h ... нет такой директории..., хотя я ввел в эти библиотеки, раньше сделал синтезатор UT3MK прошив HEX файлом через др. программу, что то делал и с Ардуино прогой, теперь не могу, переустановил и саму Ардуиноо и W7, (может потому, что мне 71)

вот такая ошибка вылазиет

вот такая ошибка вылазиет ищет библиотеку Arduino: 1.8.5 (Windows 7), Плата:"Arduino Nano, ATmega328P" In file included from C:\Users\1\Desktop\gen\SI5351_VFO_RF_GEN_OLED_V2_JCR\SI5351_VFO_RF_GEN_OLED_V2_JCR.ino:11:0: C:\Users\1\Desktop\gen\libraries\Adafruit-GFX-Library-master/Adafruit_GFX.h:12:32: fatal error: Adafruit_I2CDevice.h: No such file or directory #include ^ compilation terminated. exit status 1

Товарищи, помогите работает

Товарищи, помогите работает только в диапазоне 150 - 186 МГц. Индикация и управление в порядке. Модуль сине-зелёного цвета Si5351. C модулем пурпурного цвета всё замечательно работает. Наверно есть разница в модулях, хотя по деталям модули один в один.

Добавить комментарий

  ___   ____    _____   _____   _   _   _   _ 
|_ _| / ___| | ____| |_ _| | \ | | | | | |
| | \___ \ | _| | | | \| | | | | |
| | ___) | | |___ | | | |\ | | |_| |
|___| |____/ |_____| |_| |_| \_| \___/
Enter the code depicted in ASCII art style.

Похожие публикации по теме