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

Вариант синтезатора частоты на Si5351 (UR5FFR)


Relayer

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

!ВАЖНО! Прошивка для описываемого в данной теме синтезатора из готовых модулей поглощена проектом Универсальный синтезатор Si570/Si5351

 

Доброго времени суток

 

Начал публиковать инфу по своему синтезу на Si5351

 

При создании синтеза преследовались следующие цели

 

1) Синтезатор собираем из готовых китайских модулей, которые можно купить на aliexpress/ebay. Процессор - Arduino Pro Mini/Nano. Дисплеи - 1602, TFT SPI, OLED. Модули расширителя I2C шины на PCF8574. Модули преобразования уровней 3,3v/5v. Оптический энкодер.
2) Полный сервис. Синтезатор должен обеспечивать режимы VFO A/VFO B, Split, RIT. Отображать S-метр, мощность, SWR. Обеспечивать защиту PA при превышении SWR.
3) Высокоуровневый код абстрагированный от "железа" - средства C++ полностью позволяют это сделать и мыслить в категориях высокоуровневых объектов. Это позволит достаточно легко менять дисплеи, логику работы и подключать дополнительную периферию
4) Поддержка различных раскладок преобразования частоты - single IF, up conversion, direct conversion. Минимальные изменения в коде для смены раскладки
5) Интенсивное использования I2C позволит реализовать весь функционал с запасом по использованию выводов контроллера.
6) Весь код открытый, проект open source. Особое внимание на разнесение кода по модулям и его "читабельность"

 

Синтезатор собирается из готовых покупных китайских модулей за один вечер. Самое трудоемкое пожалуй это распайка Si5351 если она у вас нераспаянная.

 

По софтовой части все сделано для того, чтобы адаптировать синтез под свои цели было максимально легко. Конечно базовые знания C/C++ понадобятся, но функциональные блоки кода будут работать без изменений.

 

Так как софт еще допиливается, то принимаются всякие "хотелки". В пределах разумного конечно.

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

В планах подключение различных дисплеев TFT/OLED (уже едут из поднебесной). Для гурманов и олдскульников - подключение Si570 и возможно DDS :)

schematic.GIF

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

Отлично, интересно будет услышать пожелания форумчан, и конечно же потестить конструкцию.

 

Не пойму по кнопкам (Tune, Ham. zero. QRP) ?

 

 

P.S. Хотелось бы подробности и тут а не просто по ссылке.

 

Название темы изменил, дабы не возникало путаницы.

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

Довольно странный проект, во первых сначала рекомендую сделать, а потом рассказывать как все круто.

Могу по пунктам:

1. Зачем из конструктора делать конструктор? 

2. Чем продиктован выбор контроллера?

3. Покажите габариты габариты конструкции

 

Положа руку на сердце, если сделать все то что вы рассказали - то на этом контролере не взлетит. А если и взлетит, то будет пыхтеть кряхтеть и кое-как работать без половины того что вы тут рассказали. Косяки архитектуры просматриваются уже на самом старте, даже смотря на то, как сделаны кнопки. Посмотрите на ближайший аналог по железу http://www.cqham.ru/forum/showthread.php?21485-%D1%E8%ED%F2%E5%E7%E0%F2%EE%F0%FB-quot-%CA%EE%EB%E8%E1%F0%E8-quot-%E8-quot-%C2%EE%F0%EE%E1%E5%E9-quot-AD9951-AD9834-Si570

 

, но прошивка весит уже раза в 2 больше чем доступно в вашем контроллере. 

 

>Высокоуровневый код абстрагированный от "железа" - средства C++ полностью позволяют это сделать и мыслить в категориях высокоуровневых объектов.

 

Тогда готовьтесь к тому что у вас все просто не влезет в контроллер. На этом контроллере ООП, это непозволительная роскошь. 

 

P.S. меняйте контроллер иначе до конца просто не допишите. 

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

Не пойму по кнопкам (Tune, Ham. zero. QRP) ?

По ссылке в первом посте темы выложил полное описание логики работы всех кнопок и сигналов.

 

 

Довольно странный проект, во первых сначала рекомендую сделать, а потом рассказывать как все круто.

Могу по пунктам:

1. Зачем из конструктора делать конструктор? 

2. Чем продиктован выбор контроллера?

3. Покажите габариты габариты конструкции

 

Положа руку на сердце, если сделать все то что вы рассказали - то на этом контролере не взлетит. А если и взлетит, то будет пыхтеть кряхтеть и кое-как работать без половины того что вы тут рассказали. Косяки архитектуры просматриваются уже на самом старте, даже смотря на то, как сделаны кнопки. Посмотрите на ближайший аналог по железу http://www.cqham.ru/forum/showthread.php?21485-%D1%E8%ED%F2%E5%E7%E0%F2%EE%F0%FB-quot-%CA%EE%EB%E8%E1%F0%E8-quot-%E8-quot-%C2%EE%F0%EE%E1%E5%E9-quot-AD9951-AD9834-Si570

 

, но прошивка весит уже раза в 2 больше чем доступно в вашем контроллере. 

 

>Высокоуровневый код абстрагированный от "железа" - средства C++ полностью позволяют это сделать и мыслить в категориях высокоуровневых объектов.

 

Тогда готовьтесь к тому что у вас все просто не влезет в контроллер. На этом контроллере ООП, это непозволительная роскошь. 

 

P.S. меняйте контроллер иначе до конца просто не допишите. 

 

О! Конкурирующая организация :) (с) Спокойнее уважаемый, не надо столько нервов. Вашу конструкцию я видел и ту на которую вы ссылаетесь тоже. Отвечу по пунктам

 

1. Зачем из конструктора делать конструктор? 

Конструктор (сиречь модули которые можно купить) без ПРОГРАММЫ - это груда металлолома. Именно софт является тем, что объединяет эти железяки и превращает их в синтезатор или что то другое. Без правильного софта все заканчивается "помигать светодиодами".

 

2. Чем продиктован выбор контроллера?

Его доступностью и достаточностью для решения поставленных задач

 

3. Покажите габариты габариты конструкции

Габариты габаритов я вам не покажу потому что не знаю что это такое :) Если вы про обычные размеры - то они меня пока не очень волнуют - все собрано на макетке и не факт что будет печатка - это не коммерческая разработка

 

Теперь по поводу "до конца просто не допишите". На данный момент реализован весь описанный функционал за исключением разных мелочей типа контроля SWR, калибровки S-метра. При этом использовано около 60% памяти программ и 55% RAM. Тоесть я не только уложился в 328ю атмегу, но и еще остался приличный запас, который можно использовать например на реализацию CAT. По выводам тоже запас есть - один пин сейчас свободен, SPI свободно (точнее зарезервировано под TFT). Используя I2C можно навешивать практически произвольное количество входов-выходов.

 

А насчет "косяков архитектуры и кнопок" - вы или пишите аргументированно в чем именно заключаются косяки, или не пишите вообще. Мы же не на "привозе"

 

сначала рекомендую сделать, а потом рассказывать как все круто.

Да сделано все уже, запрограммировано и работает :)

DSC05007.jpg

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

Ну так у вас графики еще нет, прикрутите цветной экран обещанный 240x320, пару-тройку шрифтов для красоты, вывод линий и прочее и посмотрите сколько у вас осталось памяти :) .  А потом еще посмотрите с какой скоростью это будет работать. Для работы на двухстрочнике много ресурсов не надо, да и самую затратную часть по ресурсам (графика) вы еще не начали писать. 

 

Ну а по поводу конкуренции это вы загнули конечно  :).  Я всего лишь предупредил о неверном выборе контроллера, а ваше дело принять это к сведению либо нет. 

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

Давайте мух от котлет отделять. Да, графики сейчас нет - пока только вывод на LCD 1602. Жду пока приедут TFT. Но весь функционал написан и работает.

По поводу графики. В максимальной конфигурации это будет цветной 3,2" TFT с тачскрином. В принципе можно и 5ти дюймовик прицепить, но стоят они уже непомерно дорого. И работать он у меня будет быстрее чем ваш на STM :) Не верите? Готов поспорить на бутылку хорошего коньяка :)

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

Конечно же верю. 

http://www.netlore.ru/upload/files/19/p19cc0r31dgtuq7u1541s47117fh.gif

 

 

atmega328  max SPI speed  = Fosc/4 = 5MHz

 

STM32F100 max SPI speed  = Fosc/2 = 12MHz

 

И думаю стоит еще напомнить о том что пока atmega будет передавать данные проц будет ждать. А в STM32 есть DMA итого разница будет не в 2 раза, а больше. 

 

Вот еще видео сравнения

 

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

Боитесь спорить - так и скажите. А мультики мне показывать не надо :)

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

Давайте оделим ваших мух от наших котлет.

Мы говорим конкретно за эти дисплеи ?  TFT дисплеев с SPI размерами 1.8" 128X160 и 2.8" 240x320 по 3.40 и 6.20 USD (инфо с вашего сайта)
на драйверах st7735 и ili9341 по шине SPI?

 

Или вы хотите козырнуть экранами Nextion ? Так причем тогда Ардуино?

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

Вы со своими мухами на мои котлеты не лезьте :) Всему свое время - приедут экраны, все увидите

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

Я так понял эта тема о мухах и котлетах. Зачем создавать тему когда лень выплюнуть слово через губу. Желаю вашему  проекту дальнейшего развития и всего хорошего.

Поговорили.

 

 

 

 

 

 

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

Я так понял эта тема о мухах и котлетах. Зачем создавать тему когда лень выплюнуть слово через губу. Желаю вашему  проекту дальнейшего развития и всего хорошего.

Поговорили.

Один зашел и сказал что конструкция совсем плохая, да и не конструкция а прожект на бумаге, неспаянный и незапрограммрорванный. Когда выяснилось что уже спаян и код написан - начались какието докапывания непонятно к чему. Вам что - заняться больше нечем? Или сердце болит что у соседа корова синтезатор не вашей конструкции а на атмеге?

Вобщем и вам всего доброго и хорошего настроения.

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

Уважаемый причем тут моя конструкция? Докапывания? Да вы зачем создали то тему? 
Мне как человеку  интересно как это человек обманул природу, я так понимаю тема создавалась для обсуждения? или для чего то другого?
Больше я Ваше Величество беспокоить не буду, так что угомонитесь.  <<>><<>> в теме сами.

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

Здравствуйте все участники. В функционал еще можно добавить три положения АТТ. Например -10,20,30 дБ. И отключение неработающих диапазонов. Например если надо только 80 и 40 метров. Ну и цветной дисплей по любому. Не меньше 2,2" . Надоело пялиться на двухстрочники. Хочется и каких-нибудь рюшек-плюшек. Хотя это все и необязательно. Можно вообще на семисегментных индикаторах . У меня есть синтезатор с таким индикатором. Не плохо смотриться, на я боюсь его куда-либо ставить. Там три атмегти 8. :(

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

Выложил исходники софта синтеза http://dspview.com/viewtopic.php?p=335#p335

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

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

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

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

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

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

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

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

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

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