Dds для синтезатора игорь2
46331 просмотров, 16 ответов
ra0ahc — 21 апреля 2020 г. в 07:06#1
Темы пройденные . По сишке тут страниц 100 есть. Про ардуино .. на кой черт вам этот калькулятор. Стм 32 уже давно доступны.
Игорь 2 — 21 апреля 2020 г. в 07:35#2
Стм 32 уже давно доступны.
По крайней мере, у меня STM с программой Сергея работает без проблем...
Игорь 2 — 22 апреля 2020 г. в 01:30#3
Но это синтезатор прямого синтеза на Si5351A.
Так это и нужно. Диапазон 10...20 МГц. Если с шагом полгерца, то на верхних диапазонах будет шаг 1 Гц.
Частота приёма на нижних диапазонах вычисляется по формуле fпр=fsi-fпч, на верхних - fпр=2fsi-fпч, соответствующее отображение на индикаторе по-моему, и ребёнок сделает...
Relayer — 22 апреля 2020 г. в 01:44#4
NanoVFO умеет выводить на разные простые индикаторы частоту. Но учтите что семисегментник на MAX очень сильные наводки дает из-за динамической индикации
Игорь 2 — 22 апреля 2020 г. в 01:57#5
семисегментник на MAX очень сильные наводки дает из-за динамической индикации
Я с этим столкнулся в одной из своих стационарных УКВ станций в начале 90-х. Причём, о динамической индикации я узнал уже тогда, когда синтез сделали.

Полдня с экранами, дросселями и конденсаторами возился.
До сих пор работает - см. скрин, только часы уже в ауте (они на 25 лет вперёд были запрограммированы), да сегменты некоторые сгорели в АЛС324...
Владимир_К — 22 апреля 2020 г. в 04:03#6
Но учтите что семисегментник на MAX очень сильные наводки дает из-за динамической индикацииУ меня индикация статическая. Каждый отдельный индикатор запитан от сдвигового регистра 4015. Конечно многим не нравится паять семь корпусов, но оно того стоит...
Владимир_К — 22 апреля 2020 г. в 05:23#7
а ваш проект под сишку написан в ардуино иде?Нет. Написан на Си, в AVR Studio 4.19.
Достаточно поставить программу AVR Studio 4.19. Она бесплатная. В ней открыть проект, поправить, что нужно. Но, конечно, надо иметь хотя бы минимальные знания по этому делу.
Я прицепил схему своего синтезатора. Также исходник в архиве. Синтезатор установлен в трансивере, который сейчас в очередной модернизации.
Посмотрите, если захотите собрать, программу доработаю, только скажете что доработать. Индикатор от Тарасова. Там выбросьте все, кроме сдвиговых регистров и индикаторов. Это плата лицевой панели трансивера "Дунай". На ней кнопки, валкодер и пр. нам не нужны.
Я со временем также буду собирать синтезатор Игоря, но пока все в самом начале, только на этапе разработки плат. Да и сейчас другие дела. Поэтому, если у Вас будет "железо", программу скорректирую. А просто так заниматься этим делом, не зная, понадобится оно или нет, особого желания нет.
Кроме того, в синтезаторе Игоря есть переключение делителей и пр. (сейчас уже не помню). Поэтому надо ввести в программу также управление этими функциями. Надо анализировать, но пока недосуг и не ясно, понадобится оно или нет. Возможно будет синтез на Si5340A.
Игорь 2 — 22 апреля 2020 г. в 06:03#8
Кроме того, в синтезаторе Игоря есть переключение делителей и пр. (сейчас уже не помню).
Да, на нижних диапазонах в смесителе включён делитель на 4 (диапазон перестройки ГУНов 40...80 МГц - смотрите сами для своей ПЧ), для 1-герцового хода перестройки, DDS опора и должна с шагом 1 Гц работать, на верхних диапазонах в смесителе включается деление на 2, опора синтеза должна идти теперь с шагом 0.5 Гц, чтобы обеспечивать шаг перестройки те же 1 Гц, и ту скорость перестройки, что и на низах...
Владимир_К — 22 апреля 2020 г. в 06:31#9
Да, на нижних диапазонах в смесителе включён делитель на 4Его надо переключать, значит в программе надо предусмотреть эту функцию. Не отдельным же тумблером это делать.
Со скоростью перестройки пока есть некоторые проблемы. Валкодер в синтезаторе работает по такому алгоритму - если вы в течение некоторого времени, а именно 5 мсек, накрутите валкодер на 1 шаг, то перестроите частоту на 1 герц. Ежели успеете на 10 шагов, то перестроите на 100 гц. То есть F1 = Fo+n^2. Где n - количество делений "накрученных" за 5 мсек. Но вылезла другая проблема - при быстрой перестройке, эффект как будто вы быстро пробегаете по клавиатуре рояля. Так как частота за один шаг может меняться не на одну сотню гц. Придется выводить на экран частоту 1 раз за 5 сек, а в Si5351A перестраивать каждый шаг. Что влечет за собой дополнительное время на пересчет и запись регистров. Придется оптимизировать это дело. Хотя, конечно, пока это меня особенно не доставало. В ДДС типа AD9851 так и было - перестройка на каждый шаг. Но там управление проще, всего один регистр.
Игорь 2 — 22 апреля 2020 г. в 07:10#10
9850 пойдет его синтез схавает весь мусор
Да, там самое главное, в зоне +-10 кГц от осн��вной частоты чтобы палок не было где-нибудь, по -60 дБ, а дальше там то ли 30, то ли 40 дБ допустимо. Где-то писал про это точно, на память уже не помню...

Владимир_К — 22 апреля 2020 г. в 07:11#11
Игорь2 говорит что 9850 пойдетЕсть где-то исходник и для AD9850. Первоначально этот же синтезатор и был на ней. Затем модуль с AD9850 я использовал в антенном анализаторе..
Владимир_К — 22 апреля 2020 г. в 07:14#12
Да, там самое главное, в зоне +-10 кГц от основной частоты чтобы палок не было где-нибудь, по -60 дБДа вроде не замечал. Может под -70 дб, даже меньше, в ближней зоне. В общем, все как в даташите на м/с.
Игорь 2 — 22 апреля 2020 г. в 07:33#13
Может под -70 дб, даже меньше, в ближней зоне.
Пойдёт. По большому счёту, там в петле захвата вообще частота среза единицы...десятки герц...

Игорь 2 — 22 апреля 2020 г. в 07:55#14
как гиацинтом тактировать ддс.
Да 50 МГц с него возьмите - см. мою схему, и на три умножьте. Или 150 МГц много?

Кроме того, я ж не запрещаю и SI использовать...
Владимир_К — 22 апреля 2020 г. в 12:15#15
STM32 сильно жирно чтобы по I2C засылать код в сишкуSTM есть раза в два дешевле Ардуино, с параметрами раза в два повыше. Но со своими причудами. Особенно мне нравится, когда практически одинаковые контроллеры, видимо разрабатываются разными командами, поэтому даже одинаковые регистры имеют разные названия. Для этого придумали библиотеку HAL, которая пожирает все ресурсы контроллера, в результате бюджетные варианты STM оказываются на уровне того же Ардуино.
На мой взгляд, многие параметры STM - плод не совсем добросовестного маркетинга. Честно говоря, многое в них раздражает.. Так что Ардуино еще рано покидать сцену.
Синтезатор на Ардуино у меня есть, со светодиодным индикатором, и наверное, удовлетворяет Вашим требованиям. Но это синтезатор прямого синтеза на Si5351A. Может в будущем сподоблюсь подкорректировать программу, но "железа" пока нет. Если Вы малость дружите с программированием, исходник могу сбросить.
ra0ahc — 24 апреля 2020 г. в 03:38#16
Пурга, если вы действительно хотите сделать что-то , то лучше начать с обычной сишки. Генераторов для тактирование в районе 100 мгц на рынке куча в том же кварце. С достаточно хорошими параметрами там есть генераторы с термо компенсацией. Я таких взял три разных, но как показала практика 100 мгц генератор делённый на 2 обычным триггером даёт 50 с отличными показателями, так получилось что мне лень было ждать генератор на 50 и я запаял триггер прямо поверх генератора и теперь этот триггер является термокомпенсацией . Более скажу, сейчас приехали на днях таки детали из Китая и там я купил генератор на 38 мгц с 0.5 ррм!!! Что ещё нужно? Цена, как говорит Веселин