Универсальный синтезатор на микросхеме Si5351
Николай Большаков, RA3TOX, Нижний Новгород
Я уже описывал мой вариант синтезатора частоты на микросхеме AD9850. Но есть еще более дешевый и более функциональный вариант, где используется доступный кварцевый резонатор, а также возможен более расширенный дипазон генерации частот.Этот синтезатор основан на популярной и дешевой микросхеме Si5351. Информация выводится на светодиодный дисплей - OLED SSD1306 128x64. Отличие от опубликованных в Интернете конструкций заключается в том, что я применил отдельную микросхему синтезатора и не использовал преобразователь уровня (5V -> 3.3V). Так же мне пришлось немного доработать программу, адаптировав её под новую библиотеку. С эти пришлось повозиться, так как ни один скетч, взятый из Интернета не хотел компилироваться и я долго не мог понять в чем дело. Только прочитав аннотацию к новой версии библиотеки - внес необходимые поправки в программу и все заработало!
Управление осуществляется с помощью микроконтроллера Arduino. Как бы не ругали профессионалы эту платформу, я считаю Ардуинку отличной платформой для быстрой разработки конструкций. Для радиолюбителя, не сильно вникающего в тонкости программирования (такого, как Я) - это идеальный инструмент осуществления своих многих идей и задумок. Познав прелести платформы Arduino и, вспомнив азы программирования, я смог за относительно короткий период создать макеты многих своих давних задумок, на кототрые я тратил годы.
И так, генератор имеет три функциональных выхода:
Настройка частоты осуществляется валкодером. Встроенная в него кнопка перключает шаг перестройки (10 Гц, 100 Гц, 1 КГц, 10 КГц, 100 КГц, 1 МГц). Две кнопки предназначены для калибровки и выбора (настройки) промежуточной частоты (ПЧ). Тумблером осуществляется выбор частоты расстройки RIT. С помощью этой функции вы можете настроить частоту приема (Rx) отдельно от частоты передачи (Tx), если вы используете сиинтезатор в трансивере.
- CLK0: TX - выходная частота от 1 до 100 МГц (такая же частота выводится на дисплей).
- CLK1: Rx LO расситывается как CLK0 +/- CLK2, т.е. частота с учетом промежуточной (разностной или суммарной).
- CLK2: Rx IF - промежуточная частота. Например, 9 МГц (по умолчанию), но можно установить любые другие значения.
Схема проекта представлена на рисунке:
Синтезатор Si5351 можно приобрести в виде готового модуля или просто купить отдельную микросхему и кварц (это дешевле) и распаять её на макетке SOP10.
Программное обеспечение основано базе оригинального софта MultiFeaturedVFO от Jason Mildrum /NT7S/ и Przemek Sadowski /SQ9NJE/. В программе используется библиотека Si5351 Si5351 Arduino-master library.
Скетч для Arduino позаимствован с сайта PA0RWE. Я его немного подправил, так как новая библиотека (от декабря 2016 г.) Si5351Arduino-master несколько отличается от более старыйх версий и требует корректировки исходного скетча. Обратите на это внимание, если будете использовать скетчи из других источников, иначе при компиляции Arduino IDE выдает ошибки!
Исправленный скетч: Si5351_RxTx_VFO.ino (16 Кб).
Архив с библиотеками для данного проекта (152 кб)
Компиляция выполнялась в Arduino IDE версии 1.6.6. В архиве имеется скриншот завершенного процесса компиляции. Также приложен HEX-файл для прямой заливки в микроконтроллер.
N E W ! (ноябрь 2019). Обновленная версия программного обеспечения, с использованием новой библиотеки Si5351Arduino-RWE. Скетч для новой библиотеки переработан PA0RWE. В файле RWE_si5351.h можно изменить частоту кварцевого резонатора (по умолчанию - 25 МГц) и I2C-адрес синтезатора (по умолчанию - 0x60). Для OLED дисплея используются библиотеки Adafruit_SSD1306 и Adafruit-GFX. Не забудьте в скетче выставить I2C-адрес дисплея (по умолчанию - 0x3С). Если используете дисплей с SPI-управлением - внесите необходимые изменения в скетч и схему подключения.
Полный пакет библиотек и новый скетч в файле vfo-si5351-new.zip (102 кб).
Функции программы:
Калибровка генератора проводится следующим образом:
- Диапазон частот от 10 КГц до 100 МГц (при включении - диапазон 14 МГц).
- Шаг перестройки: 10 Гц, 100 Гц, 1 КГц, 10 КГц, 100 КГц, 1 МГц.
- На выходе 3 различных частоты на CLK0-CLK2 (Tx, Rx, BFO/LO).
- Выбор и настройка BFO/LO и промежуточной частоты (по умолчанию 9 МГц).
- Частота приема RX на основе ТХ +/- BFO/LO
- Функция калибровки (см. ниже).
- Функция расстройки RIT(частота RX настраивается только с шагом 100 Гц).
- Нажмите кнопку калибровки - информация появится на дисплее.
- Частота будет отображать частоту кварца Si5351 (по умолчанию 25 МГц).
- Измерьте частоту на выходе CLK0 внешним частотомером.
- Подстройте генератор на измеренную частоту.
- Снова нажмите кнопку калибровки - на дисплее отобразится частота TX.
- Калибровка завершена !
- - - Вид индикации в различных режимах: - - -
Конструкция RA3TOX.
В моем варианте применена плата Arduino Pro Mini на Atmega328 с питанием 3,3 В и кварцем на 8 МГц. Обращаю внимание, что питание микросхемы Si5351 - 3,3 В. Разводку платы с преобразователем уровня можно позаимствовать с сайта Amogh Desai /VU3DES/. Чтобы не заморачиваться с изготовлением платы - лучше купить макетку SOP10 и на ней распаять микросхему и кварц. Что я и сделал.
Так как питание Arduino Pro Mini осуществляется от источника 3,3 В, то преобразователь уровня для микросхемы синтезатора не нужен. Если используете другую модификацию Ардуинки, то потребуется преобразователь уровня для управления Si5351.
Как и раньше, моя конструкция собрана на кросс-плате, где выполнена вся межблочная разводка. С одной стороны кросс-платы установлены Arduino Pro Mini и плата с микросхемой Si5351. На другой стороне установлен дисплей, валкодер и кнопки управления. Если будете питать устройство от 5В - поставьте понижающий стабилизатор. Все платы и OLED-индикатор установлены на разъемах. Это удобно, так как можно легко менять компоненты и, при необходимости, использовать их в других конструкциях.
Если вам необходимо изменить занечение генерирумой минимальной и максимальной частоты - внесите изменения в скетч здесь (обведено красным):
Если вам необходимо изменить занечение промежуточной частоты - внесите изменения в скетч в двух местах (обведено красным):
Комплектующие на AliExpress:
- Микросхема синтезатора Si5351
- 128X64 OLED LCD LED Display
- Arduino ProMini ATmega328P 3.3V, 8 MHz
- Кварцевый резонатор 25 (27) МГц
- Энкодер
- Макетка SOP10
Ссылки:
- http://nt7s.com - Break My New Library
- http://pa0rwe.nl - UNIVERSAL VFO BASED ON THE SI5351
- http://ak2b.blogspot.ru - Teensy 3.1 VFO with encoder and si5351 board
- http://sq9nje.pl - Modul generatora Si5351
- https://amoghdesai.com - Cracking the SI5351 Multiple Clock Generator
Удачи и творческих успехов!
Март, ноябрь 2017 г.
Публикация в других источниках разрешена со ссылкой на автора и сайт "Радиофанат" - http://rfanat.ru