Перейти к содержанию
bbh_blocked_dnftl

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


Рекомендуемые сообщения

Конструкция является дальнейшим развитием синтезатора на Si5351 из китайских модулей. Архитектура синтезатора осталась практически без изменений:
 

Процессор - Arduino Nano 328
Дисплей - 3.2" 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

 

DSC06150.jpg

 

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

Из изменений в программном обеспечении отмечу
 

Добавлено автоматическое сохранение состояния в энергонезависимую память
Упрощена процедура калибровки Si5351
Поддерживается CAT по протоколу Kenwood


Для любителей что-то доработать есть еще примерно 1к свободного места для кода.

Проект полностью открытый и опенсоурсный - по мере оформления буду выкладывать полную информацию по синтезатору - схема, печатки и исходный код.

Хоумпейдж проекта

 

Ссылка на комментарий
Поделиться на другие сайты

Нет, такой не подойдет. Можно использовать 2,8" или 3,2" SPI TFT на чипе ILI9341 (разрешение 320*240).

 

PS В первом посте очепятка. Дисплей 2.8", а не 3.2". Можно установить и 3,2" но надо будет переделывать отверстия под крепление дисплея, т.к. они впритык к краям платы. Возможно придется просто несколько увеличить размер платы по высоте

Ссылка на комментарий
Поделиться на другие сайты

Схемы процессорной и интерфейсной плат

Si5351-Syntez-CPU.png

 

Si5351-Syntez-Interface.png

Страницы проектов на сайте EasyEDA (там схемы и печатки если надо адаптировать под другие компоненты):

Si570/Si5351 CPU board
Si570/Si5351 interface board
 

На хоумпейдже выложил так же архив с готовыми печатками в формате pdf

Ссылка на комментарий
Поделиться на другие сайты

Возможно ли использование Модуль расширителя I2C на PCF8574 ?

Ссылка на комментарий
Поделиться на другие сайты

На данной плате уже нет - она рассчитана на использование PCF8574AT в планарном корпусе. Но если переделать плату или раскидать все на макетке то принципиальных ограничений нет. В коде только придется поправить I2C адреса

Ссылка на комментарий
Поделиться на другие сайты

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

Клавиатура
Все кнопки на клавиатуре имеют две функции. Основная – вызывается просто нажатием кнопки. Вторичная – вызывается при нажатии кнопки с одновременным нажатием кнопки Fn.
 

keyboard.png

 

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

Валкодер
Синтезатор изначально проектировался для использования с оптическим энкодером, выдающим 360-400 имп/оборот. При использовании энкодеров с другим кол-вом импульсов необходимы config.h прописать правильное значение в константе ENCODER_PULSE_PER_TURN.
В обычном режиме перестройка составляет 3kHz на оборот. В ускоренном режиме в 4 раза выше - 12kHz на оборот. Переключение между обычным и ускоренным режимом перестройки осуществляется автоматически в зависимости от скорости вращения валкодера.
При вращении валкодера с нажатой кнопкой Fn частота настройки будет изменяться с 10ти кратным ускорением - 30 kHz на оборот.

 



Исходники программы и документация доступна на гитхабе

Ссылка на комментарий
Поделиться на другие сайты

Просьба. По возможности выложить пп в лей формате.Я не нашел файла ino. 

Ссылка на комментарий
Поделиться на другие сайты

Печатки разводились в EasyEDA - это бесплатная CAD-система для полного проектирования печаток. Гораздо удобнее чем sprint-layout потому что нормальный CAD отслеживает соответствие печатки схеме, и если вы попробуете что-то соединить неправильно - он вас об этом предупредит и двадцать раз переспросит. Поэтому печаток в "лае" нет и не будет - 21й век за окном все таки.

Я не нашел файла ino.

В папке Syntez лежит файл Syntez.ino

Ссылка на комментарий
Поделиться на другие сайты

Здравствуйте. Если использовать две микросхемы Si570 и 5351 какой расклад вторых гетеродинов. На выходе с си5351 можно будет получить например для 1го гетеродина 9,36 МГц и для второго 8,863. Програмных ограничений нет? Как частоты гетеродинов прописываются? Через меню или надо править код?  

Ссылка на комментарий
Поделиться на другие сайты

Раскладка частот прописывается в config.h раскоментариванием требуемого define. К каждой раскладке написаны подробные комментарии для случая работы одной Si5351. Кроме самой раскладки частот в config.h надо прописать правильные частоты ПЧ и тип фильтра USB/LSB. Все остальное синтезатор сделает за вас сам.

 

В случае если работают совместно Si570 и Si5351 то первый гетеродин всегда генерирует Si570 - тоесть ее выход выполняет роль CLK0. При этом Si5351 генерирует частоты второго и третьего (если нужен) гетеродинов. При этом 3й клок 5351 не используется.

Например при раскладке Si570+Si5351, преобразование вверх, первая ПЧ=45MHz, вторая ПЧ=500kHz Si570 будет генерировать частоту первого гетеродина 47..75MHz, Si5351 формирует на CLK0 44.5/45.5MHz в зависимости от выбранной боковой полосы, а на выходе CLK1 - 500kHz. В случае если прописать оба ската ЭМФ (то есть разрешить синтезатору использовать его как для верхней, так и для нижней боковых) то CLK0 будет всегда выше 1й ПЧ - 45.5MHz, а CLK1 в зависимости от выбранной боковой будет 500/503kHz.

 

Каких-то ограничений на генерируемые частоты нет. В случае необходимости достаточно легко реализовать свою логику генерации частот.

Ссылка на комментарий
Поделиться на другие сайты

  • 6 месяцев спустя...

@Relayer,

Подскажите пожалуйста, энкодер посажен на прерывания, но не могу в коде найти место инициализации прерываний. Подскажите где смотреть?

Ссылка на комментарий
Поделиться на другие сайты

void Encoder::setup() в Encoder.cpp

Ссылка на комментарий
Поделиться на другие сайты

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

- совместимость прошивки в проектом Синтезатор из готовых китайских модулей
- 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

 

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...