Перейти к содержимому

Добро пожаловать на Первый форум сообщества радиолюбителей Одессы и Одесской области!

Добро пожаловать на Первый форум сообщества радиолюбителей Одессы и Одесской области. Чтобы общаться на форуме, скачивать файлы и использовать другие возможности, Вам необходимо зарегистрироваться. Или войти под своим логином. Так же вы можете войти на форум через свою учетную запись в Facebook или Twitter.
Внимание!
Наш форум не поддерживает регистрацию с почтового сервера mail.ru, bk.ru, inbox.ru, list.ru, mail.ua! Если вы всё же решили использовать эту почту, и не получили письмо подтверждения, то возможно оно попало в спам. В этом случае не забудьте его отметить как не спам!
Проблемы с регистрацией? Читаем эту тему.
Чтобы сменить фон форума, внизу с лева нажмите "Изменить Стиль".
Форум полностью поддерживает Русский язык.

Фотография

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


Сообщений в теме: 105

#1
Relayer

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

 

Начал публиковать инфу по своему синтезу на 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   32,38К   Количество загрузок: 146

  • UR5FSV, seybr и Абабукар это нравится

#2
UR5FYG

UR5FYG

    Администратор

  • Администраторы
  • 1 548 сообщений
  • 423 тем
  • Позывной:UR5FYG
  • Категория:1
  • Гр. позывной:Меркурий
  • LOC:KN56JN
  • Город:Одесса

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

 

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

 

 

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

 

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



#3
UV7QAE

UV7QAE

    Любопытный

  • Пользователи
  • 60 сообщений
  • 0 тем
  • Позывной:UV7QAE
  • Категория:2
  • Город:Melitopol

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

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

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

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

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

 

Положа руку на сердце, если сделать все то что вы рассказали - то на этом контролере не взлетит. А если и взлетит, то будет пыхтеть кряхтеть и кое-как работать без половины того что вы тут рассказали. Косяки архитектуры просматриваются уже на самом старте, даже смотря на то, как сделаны кнопки. Посмотрите на ближайший аналог по железу http://www.cqham.ru/...51-AD9834-Si570

 

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

 

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

 

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

 

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



#4
Relayer

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

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

 

 

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

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

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

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

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

 

Положа руку на сердце, если сделать все то что вы рассказали - то на этом контролере не взлетит. А если и взлетит, то будет пыхтеть кряхтеть и кое-как работать без половины того что вы тут рассказали. Косяки архитектуры просматриваются уже на самом старте, даже смотря на то, как сделаны кнопки. Посмотрите на ближайший аналог по железу http://www.cqham.ru/...51-AD9834-Si570

 

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

 

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

 

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

 

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

 

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

 

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

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

 

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

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

 

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

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

 

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

 

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

 

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

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

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

  • Прикрепленный файл  DSC05007.jpg   292,02К   Количество загрузок: 55


#5
UV7QAE

UV7QAE

    Любопытный

  • Пользователи
  • 60 сообщений
  • 0 тем
  • Позывной:UV7QAE
  • Категория:2
  • Город:Melitopol

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

 

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



#6
Relayer

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

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



#7
UV7QAE

UV7QAE

    Любопытный

  • Пользователи
  • 60 сообщений
  • 0 тем
  • Позывной:UV7QAE
  • Категория:2
  • Город:Melitopol

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

p19cc0r31dgtuq7u1541s47117fh.gif

 

 

atmega328  max SPI speed  = Fosc/4 = 5MHz

 

STM32F100 max SPI speed  = Fosc/2 = 12MHz

 

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

 

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

 



#8
Relayer

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



#9
UT5QBC

UT5QBC

    Завсегдатый

  • Developer
  • 100 сообщений
  • 4 тем
  • Позывной:UT5QBC
  • Категория:2
  • Гр. позывной:Майский Жук
  • LOC:KO80da
  • Город:Харьков

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

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

 

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



#10
Relayer

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



#11
UT5QBC

UT5QBC

    Завсегдатый

  • Developer
  • 100 сообщений
  • 4 тем
  • Позывной:UT5QBC
  • Категория:2
  • Гр. позывной:Майский Жук
  • LOC:KO80da
  • Город:Харьков

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

Поговорили.

 

 

 

 

 

 



#12
Relayer

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

Поговорили.

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

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



#13
UT5QBC

UT5QBC

    Завсегдатый

  • Developer
  • 100 сообщений
  • 4 тем
  • Позывной:UT5QBC
  • Категория:2
  • Гр. позывной:Майский Жук
  • LOC:KO80da
  • Город:Харьков

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



#14
Андрей

Андрей

    Любопытный

  • Пользователи
  • 27 сообщений
  • 1 тем
  • Позывной:ur3ach
  • Город:Середина-Буда

Мои сообщения Синтезаторы частоты

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



#15
Relayer

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



#16
UR5FYG

UR5FYG

    Администратор

  • Администраторы
  • 1 548 сообщений
  • 423 тем
  • Позывной:UR5FYG
  • Категория:1
  • Гр. позывной:Меркурий
  • LOC:KN56JN
  • Город:Одесса

In file included from disp_1602.cpp:1:0:
disp_1602.h:13:31: fatal error: LiquidCrystal_I2C.h: No such file or directory
 #include <LiquidCrystal_I2C.h>


#17
Relayer

Нужно установить библиотеки

https://github.com/m...quidCrystal_I2C
https://github.com/e...t/Si5351Arduino

Это можно сделать в самой среде Arduino
 

Проект будет работать даже без подключения всех модулей. Например вполне достаточно подключить энкодер и дисплей



#18
UR5FYG

UR5FYG

    Администратор

  • Администраторы
  • 1 548 сообщений
  • 423 тем
  • Позывной:UR5FYG
  • Категория:1
  • Гр. позывной:Меркурий
  • LOC:KN56JN
  • Город:Одесса

А там разве было что то про Si?

У меня библиотеки все установлены, ну вот с этой ошибкой разобраться не могу.

Почему пишет что файла нет когда он есть? :dash2: ))

 

Ладно, оставлю пока. Будет время поиграюсь ;)



#19
Relayer

Возможно что модули библиотеки не в том каталоге лежат. Ардуина все библиотеки ставит подкаталоги папки Documents\Arduino\libraries\ и оттуда их подключает. Можно LiquidCrystal_I2C.cpp и LiquidCrystal_I2C.h положить прямо в каталог с проектом Syntez.ino но тогда надо вместо

#include <LiquidCrystal_I2C.h>

писать

#include "LiquidCrystal_I2C.h"



#20
UR5FYG

UR5FYG

    Администратор

  • Администраторы
  • 1 548 сообщений
  • 423 тем
  • Позывной:UR5FYG
  • Категория:1
  • Гр. позывной:Меркурий
  • LOC:KN56JN
  • Город:Одесса

Проблема в версии arduino ide.

 

Дома собралось.

 

Прикрепленный файл  Screenshot_61.jpg   93,85К   Количество загрузок: 36

 

Ка-то мне кажется маловато остается :(






Количество пользователей, читающих эту тему: 6

0 пользователей, 3 гостей, 0 анонимных


    Bing (2), Baidu (1)