Универсальный синтезатор Si570/Si5351

умножители, ФАПЧ
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Доступна новая версия!

Конструкция является дальнейшим развитием синтезатора на Si5351 из китайских модулей. Архитектура синтезатора осталась практически без изменений:
  • Процессор - Arduino Nano 328
    Дисплей - 2.8" SPI TFT ILI9341
    Синтез - Si570 и/или Si5351
    Часы и EEPROM - TinyRTC
    Периферия - PCF8574
На печатной плате предусмотрены установочные места как для Si5351, так и для Si570. Причем устанавливать их можно в любых комбинациях. В случае если установлены оба чипа то первый гетеродин формируется на выходе Si570, а второй и третий (по необходимости) на выходах Si5351. В случае если установлен один только Si570 то формируется единственный сигнал первого гетеродина.

Управление синтезатором переработано - количество кнопок сокращено с 12 до 7. Основные функции управления назначены на 6 кнопок: BandUp/Down, Attenuator/Preamp, VFO A/B, RIT, Lock. 7-я кнопка Fn является модификатором - при ее нажатии выполняются вторичные функции связанные с кнопками управления.

Внешний вид конструкции:
DSC06146.jpg
DSC06146.jpg (197.18 KiB) Viewed 77021 times
DSC06150.jpg
DSC06150.jpg (163.4 KiB) Viewed 77021 times
Синтезатор собран на двух печатных платах с односторонним монтажем (вторая сторона "залита" землей) выполненых ЛУТом в домашних условиях. Платы собраны "этажеркой" и соединены между собой 9ти контактным шлейфом. На передней панели установлены кнопки управления и переменный резистор расстройки RIT.
Общие размеры конструкции - 140мм*50мм*45мм

Из изменений в программном обеспечении отмечу
  • Добавлено автоматическое сохранение состояния в энергонезависимую память
    Упрощена процедура калибровки Si5351
    Поддерживается CAT по протоколу Kenwood
Поддерживаются различные архитектуры трансиверов:
  • 1. Супергетородины с одной или двумя ПЧ
    2. Преобразование "вверх" с непрерывным перекрытием 2-30MHz
    3. Прямое преобразование с гетеродином работающим на удвоенной или учетверенной частоте
    4. Прямое преобразование с квадратурным гетеродином
Для любителей что-то доработать есть еще примерно 1к свободного места для кода.

Проект полностью открытый и опенсоурсный. Лицензия GPL.

Исходные коды и вся документация (схемы, печатки, описание) доступно на гитхабе:
https://github.com/andrey-belokon/Syntez_Si5351_Si570
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Схемы процессорной и интерфейсной плат
Si5351-Syntez-CPU.png
Si5351-Syntez-Interface.png
Страницы проектов на сайте EasyEDA:

Si570/Si5351 CPU board
Si570/Si5351 interface board

В атаче архив с готовым рисунком печаток для ЛУТа в формате pdf. Несмотря на то, что печатки двухсторонняя, их можно выполнить и в одностороннем виде использовав некоторое кол-во перемычек в основном для соединения "земли" и две перемычки для сигнальных цепей на плате процессора.

Используемые детали и компоненты

Обратите внимание что часть деталей используется в SMD корпусах. Так все емкости по 0,1u имеют типоразмер 1206.

Процессорный модуль - Arduino Nano 328 V3.0. На самом модуле установлены 4 светодиода которые неотключаемы и мигают при работе с компортом или просто светятся. Смысла в них нет никакого - только лишнее потребление тока и наводки по цепям питания. Рекомендую демонтировать их с помощью фена.

Применены I2C расширители PCF8574AT в SMD исполнении. При использовании микросхем без буквы A в маркировке необходимо будет в программе изменить адреса, т.к. они у них отличаются.

Для преобразования уровней I2C шины и SPI к 3.3 вольтам используются готовые модули преобразования уровней.

При использовании литиевой батареи CR2032 в модуле TinyRTC его необходимо доработать.

Модуль TinyRTC можно не устанавливать. При этом не будут работать часы и не будет сохранятся состояние синтезатора в EEPROM

Si5351 монтируется на переходной панельке, т.к. сделать ЛУТом под нее дорожки достаточно проблематично.

Кварц - любой на 25-27MHz, но обязательно в корпусе "лодочка". С кварцами в других корпусах могут быть проблемы с запуском генератора.

Si570/Si5351 могут быть распаяны как обе, так и любая из них в отдельности.

Ток потребления при установленных Si570 и Si5351 составляет порядка 230 mA. При этом стабилизатор 7805 на плате процессора достаточно сильно греется - при входном напряжении 12v на нем рассеивается мощность 1.6Вт. Имеет смысл не только прикрутить его к плате (фланец у него соединен с землей), но и снабдить небольшим радиатором.

Синтезатор изначально проектировался для использования с оптическим энкодером, выдающим 400 имп/оборот. При использовании энкодеров с другим кол-вом импульсов необходимо изменить константу ENCODER_PULSE_PER_TURN в модуле config.h
Attachments
Si570_Si5351_doc.zip
(225.73 KiB) Downloaded 3331 times
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Управление синтезатором

Клавиатура
Все кнопки на клавиатуре имеют две функции. Основная – вызывается просто нажатием кнопки. Вторичная – вызывается при нажатии кнопки с одновременным нажатием кнопки Fn.
keyboard.png
keyboard.png (9.02 KiB) Viewed 76881 times
BandUp, BandDown - переключение по диапазонам в режиме любительских диапазонов. Увеличить/уменьшить частоту настройки на 1МГц в режиме непрерывного перекрытия.
Lock - блокировка валкодера и команд клавиатуры, которые могут привести к изменению частоты настройки. При этом вспомогательные функции остаются доступными (например включение аттеюатора)
VFO A/B - на каждом диапазоне доступны два гетеродина с независимой частотой настройки. Кнопка позволяет переключаться между ними
Att/Pre - По кругу включает аттенюатор, УВЧ, или отключает оба
VFO A=B - устанавливает частоту второго гетеродина равной частоте текущего. При этом переключение гетеродинов не происходит
RIT - включает режим расстройки при приеме. Расстройка задается переменным резистором в пределах -1..+1kHz.
Zero - выставляет частоту "по нулям". Частота округляется до ближайшего целого числа kHz
USB/LSB - переключение принимаемой боковой полосы
Split - включает split-режим, в котором при переходе в режим передачи происходит переключение на другой гетеродин.
QRP - включает режим работы пониженной мощностью и формирует сигнал на выходе синтезатора “QRP”
Ham/GC - кнопка переключает режим непрерывного перекрытия 1-30MHz и работу на преднастроенных (любительских) диапазонах
Fn - Для вызова меню необходимо дважды нажать кнопку Fn в течении 1 сек.

Валкодер
Синтезатор изначально проектировался для использования с оптическим энкодером, выдающим 360-400 имп/оборот. При использовании энкодеров с другим кол-вом импульсов необходимы config.h прописать правильное значение в константе ENCODER_PULSE_PER_TURN.
В обычном режиме перестройка составляет 3kHz на оборот. В ускоренном режиме в 4 раза выше - 12kHz на оборот. Переключение между обычным и ускоренным режимом перестройки осуществляется автоматически в зависимости от скорости вращения валкодера.
При вращении валкодера с нажатой кнопкой Fn частота настройки будет изменяться с 10ти кратным ускорением - 30 kHz на оборот.
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Разъемы на плате синтезатора

P12 – Управление
In TX – включение режима передачи. Активный уровень – низкий.
Вход защищен от дребезга контактов кнопки. В режиме TX блокируются любые действия с клавиатурой и валкодером. На выходе TX формируется активный управляющий сигнал.
Out TX – выход сигнала переключения тракта в режим передачи. Активный уровень – высокий
In Tune – вход включение режима настройки. Активный уровень – низкий.
Вход защищен от дребезга контактов кнопки. В режиме TUNE формируются управляющие сигналы TX, QRP и Tone. В результате формируется SSB сигнал передатчика частотой 1kHz (в заданной боковой полосе) пониженной мощности. Режим предназначен для безопасной настройки согласования с антенной.
Out QRP – выход сигнала включения режима пониженной мощности. Активный уровень – высокий

P17 – Tune tone
на этом выводе генерируется сигнал частотой 1kHz в режиме Tune. Необходимо подключить этот вывод через аттенюатор к микрофонному усилителю трансивера

P18 – S-Meter
Вход сигнала S- метра. Входное сопротивление высокое, что позволяет подключать вход непосредственно к конденсатору детектора АРУ. Калибровка S-метра производится в соответствующем пункте меню. В зависимости от калибровки автоматически выбирается режим прямой либо инверсной шкалы.

P11 – Encoder
Разъем подключения энкодера. Цвета соответствуют оптическому энкодеру на 360-400 импульсов на оборот.

P2 – COM
Сигналы COM-порта RxD и TxD. Позволяют подключить Bluetooth модуль для беспроводного управления по CAT-протоколу.

P3, P14, P15 – I2C
Наличие на плате процессора слотов расширения I2C позволяет устанавливать конечные устройства управления трактом трансивера непосредственно в его блоках и минимизировать количество межблочных соединений.
Так, например, на плате процессора установлен расширитель U8 PCF8574 для формирования сигналов управления ДПФ и аттенюатором/УВЧ. В зависимости от конструкции эту микросхему можно не устанавливать на плате процессора, а установить непосредственно во входном блоке ДПФ. Управление для нее берется с одного из разъемов расширения I2C. При этом в два раза сокращается количество проводов управления.

P13 – Ext
Свободные пины A0-A3. В перспективе будут задействованы для контроля мощности и SWR в режиме передачи.

P8 – Att/Band
Выходы управления ДПФ, аттенюатором и УВЧ. На выводах 1-4 формируется двоичный код диапазона. 6й вывод – включение аттенюатора. 7й вывод – включение УВЧ. Логика формирования сигналов описана в функции UpdateBandCtrl в модуле Syntez.ino.

P9 – Power
Питание синтезатора 8-14 вольт

P5, P6, P7, P15 – CLK0-CLK3
Выходы гетеродина
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Новая версия прошивки 2.0 доступна на гитхабе.
Что нового:

- совместимость прошивки в проектом "Синтезатор из готовых модулей" viewtopic.php?f=22&t=162
- change frequency display to 7-segment led-style digits. Show 10x Hz. (ILI9341 only)
- add ST7735 1.8" TFT
- add LCD 1602
- add support for 12-buttons 3x4 keypad
- конфиг разделен на два модуля. все настройки "железа" вынесены в config_hw.h
- автосохранение будет работать при использовании 24C32 вместо TinyRTC
- обновлена документация. добавлены схемы подключения различных периферийных модулей
- в меню добавлена возможность коррекции частоты ПЧ в пределах +/-30kHz от заданной

Основная реализованная идея - универсальная прошивка которая может работать на различном "железе" без изменений. Требуется только раскоментарить нужные константы в модуле конфига.

Немного изменился внешний вид:
TFT_ILI9341.jpg
TFT_ILI9341.jpg (229.29 KiB) Viewed 72882 times
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Новая версия синтезатора. Что нового:
- поддержка TFT ST7735 1.8"
- работа с двумя Si5351 и одной Si570 в произвольных комбинациях
- поддержка модулей realtime clock PCF8563 и DS3231
- оптимизирован код для работы с механическим валкодером с учетверением количества импульсов
- RIT перенесен с переменного резистора на валкодер
- добавлена поддержка различных мод (SSB/CW/AM/FM/etc). список мод и их параметры настраиваются к файле конфига
- возможность работы с "кривыми" Si5351 у которых наблюдаются проблемы с генерацией
- возможность изменять частоты BFO для каждой моды
- существенно переписан и оптимизирован код
- весь софт совместим и будет работать со всем ранее опубликованным "железом"

Синтезатор на TFT ST7735 реализован на двух платах собранных по принципу бутерброда.
synt_1.8_11.jpg
synt_1.8_9.jpg
synt_1.8_10.jpg
Сверху - плата процессора, снизу - плата дисплейного модуля. Между собой платы соеденены гибким шлейфом (использован ленточный шлейф от старых HDD)
synt_1.8_5.jpg
synt_1.8_8.jpg
Схема дисплейного модуля не нуждается в пояснениях. Применена сокращенная 6-ти кнопочная клавиатура.
Schematic Digital VFO 1.8 display board 1.0.png
Схема платы процессора
Schematic Digital VFO 1.8 main board 1.3.png
Для работы с двумя SI5351 имеющими одинаковый адресс на шине I2C применено решение на основе коммутатора U6 типа 74LVC1G3157.

Плата рассчитана на установку двух SI5351, что позволяет разнести первый и второй гетеродина и устранить взаимопроникновение. Опционально может быть установлена SI570. В случае установки одной SI5351 или пары SI5351+SI570 микросхема U12 работающая на выход "Out B" совместно с обвязкой L4C25C14C20C22C23J1 не устанавливается. Так же не устанавливается коммутатор U6 и R3R4. При этом устанавливается перемычка R7.

При использовании двух SI5351 они тактируются от одного TCXO. На плате предусмотрены посадочные места под различные типоразмеры TCXO (X1,X2,X3). Устанавливается только один.
Для преобразования уровней 5в/3.3в использован U8 TXS0108. На плате есть три разъема для подключения периферии по I2C шине - два пятивольтовых (P3,P14) и один трехвольтовый P15.

Плата рассчитана на установку модуля часов реального времени DS3231. Так же могут быть подлючены модули на PCF8563 и DS1307(TinyRTC), но их придется установить вне платы и подключить шлейфом. Модуль часов опционален и выбирается в конфиге прошивки.

В случае использования модулей часов DS3231 или DS1307 в них уже установлен чип EEPROM. В этом случае микросхему памяти U13 AT24C32 не устанавливают. Синтезатор может работать и без установленной микросхемы EEPROM но в таком случае не будет сохраняться его состояние при выключении питания.

На плате процессора земля под SI5351/SI570 отдельная. Во избежании различных помех ее не стоит соединять с землей платы дисплея - необходимо использовать пластиковые изолирующие стойки.

Платы расшарены на сервисе EasyEDA: плата процессора и плата дисплея/клавиатуры
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

В последней версии синтезатора примена сокращенная 6-ти кнопочная клавиатура.
2020-02-22 at 20-48-39.png
2020-02-22 at 20-48-39.png (9.36 KiB) Viewed 52528 times
Все кнопки на клавиатуре имеют несколько функций. Основная – вызывается просто нажатием кнопки. Вторичная – вызывается при длительном нажатии (Long) и дополнительная - нажатии кнопки с одновременным нажатием кнопки Fn (вначале нажимаем кнопку Fn а потом требуемую кнопку не отпуская Fn).

BandUp, BandDown - переключение по диапазонам в режиме любительских диапазонов. Увеличить/уменьшить частоту настройки на 1МГц в режиме непрерывного перекрытия.
Att/Pre - По кругу включает аттенюатор, УВЧ, или отключает оба
VFO A<->B, A=B - на каждом диапазоне доступны два гетеродина с независимой частотой настройки. Кнопка позволяет переключаться между ними. При длительном нажатии устанавливает частоту второго гетеродина равной частоте текущего (запоминает текущую частоту во второй ячейке). При этом переключение гетеродинов не происходит
RIT - включает режим расстройки при приеме. Расстройка задается валкодером в пределах -1.2..+1.2kHz (задается константой RIT_MAX_VALUE в config_hw.h). Одиночное нажатие включает/выключает расстройку. При нажатии и одновременном вращении валкодера изменяется величина расстройки.
Lock - блокировка валкодера и команд клавиатуры, которые могут привести к изменению частоты настройки. При этом вспомогательные функции остаются доступными (например включение аттенюатора). При нажатии BandUp/Down блокировка снимается но переход на другой диапазон не происходит.
Zero - выставляет частоту "по нулям". Частота округляется до ближайшего целого числа kHz
Ham/GC - кнопка переключает режим непрерывного перекрытия 1-30MHz и работу на преднастроенных (любительских) диапазонах
Split - включает split-режим, в котором при переходе в режим передачи происходит переключение на другой гетеродин.
Mode - принудительное переключение режима работы (LSB/USB/CW/AM…)
QRP - включает режим работы пониженной мощностью и формирует сигнал на выходе синтезатора “QRP”
Tune – режим настройки с пониженной мощностью. Выключается при нажатии любой кнопки
Для вызова меню необходимо дважды нажать кнопку Fn в течении 1 сек.

При необходимости клавиши могут быть переназначены. Для этого надо изменить определение

Code: Select all

const uint8_t KeyMap[]
в модуле Keypad_6_I2C.cpp
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Прошивка под последнюю версию доступна на гитхабе https://github.com/andrey-belokon/Syntez_Si5351_Si570
Важно - несмотря на одинаковое наименование многих модулей код не совместим с предыдущей версией (доступна по тегу 1.0 https://github.com/andrey-belokon/Synte ... es/tag/1.0). Несовместимость связана с тем что существенно изменены определения и макросы в config_sw.h, config_hw.h и config.h - эти файлы нельзя брать от предыдущей версии а надо конфигурировать заново.
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Обновлена прошивка до 3.1 от 15.04.2020
Добавлена поддержка OLED 0.91" 128x32, OLED 0.96" 128x64, OLED 1.3" 128/132x64. Требуется установка библиотеки SSD1306Ascii. Часы показывает если установлены. Величину расстройки не показывает. S-метр полный. В меню на 128x32 не отображаются подсказки т.к. не хватает места

Выглядит вот так:
OLED_128x64.jpg
OLED_128x64.jpg (93.37 KiB) Viewed 50375 times
OLED_128x32.jpg
OLED_128x32.jpg (85.64 KiB) Viewed 50375 times
UR5FFR
Site Admin
Posts: 2185
Joined: 21 Apr 2012, 22:00
Позывной: UR5FFR
Location: Odessa

Re: Универсальный синтезатор Si570/Si5351

Post by UR5FFR »

Некоторые замечания по сборке последней двухплатной версии
1) На плате процессора земля под SI5351/SI570 отдельная. Во избежании различных помех ее не стоит соединять с землей платы дисплея - необходимо использовать пластиковые изолирующие стойки.
2) Стабилизатор 7805 достаточно сильно греется, особенно при установке нескольких микросхем синтеза. Имеет смысл установить небольшой радиатор
3) Вместо 7805 был испробован DC-DC понижающий преобразователь на MP2307 (Mini360) - я не онаружил каких-либо помех или наводок
Post Reply