Автор Тема: Управление гетеродином на основе ADF4350/ADF4351  (Прочитано 20066 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Коллеги, с наступающим Новым годом и Рождеством!

Предлагаю вашему вниманию очередную программу-загрузчик регистров синтезатора ADF4350/ADF4351. Она позволяет записать в синтезатор на выбор одну из четырех частот, записанных во флеш-памяти микроконтроллера.
Программа написана под МК ATtiny13А, но должна работать и под ATtiny25.

В приложении - прошивка и схема загрузчика.

Алгоритм работы программы следующий.

С помощью переключателей S2 и S3 выбирается нужная частота (замкнутые переключатели S2 и S3 соответствуют частоте 0). Далее нажимается кнопка S1 (сброс), через 50 мс соответствующая частота записывается в регистры синтезатора. Программа больше ничего не делает, просто находится в пустом цикле.

В хекс-файле представленной прошивки для примера записаны определенные частоты 144, 430, 432, 435 МГц под опорную частоту 25 МГц. Пользователь должен вычислить и подставить свои собственные данные для всех шести регистров синтезатора для каждой частоты.

Как прошивать свои собственные частоты описано в моём сообщении #252 темы "ADF4350". Начало адресации 0х100.

   .org   0x100
frq0:                     ;144 MHz
   .db   0x00,0x58,0x00,0x05      ;REG5
   .db   0x00,0x42,0x00,0x3C      ;REG4
   .db   0x00,0x00,0x04,0xB3      ;REG3
   .db   0x00,0x01,0x4E,0x42      ;REG2
   .db   0x08,0x00,0xFD,0x01      ;REG1
   .db   0x00,0x12,0x00,0x00      ;REG0
frq1:                     ;430 MHz
   .db   0x00,0x58,0x00,0x05      ;REG5
   .db   0x00,0x32,0x00,0x3C      ;REG4
   .db   0x00,0x00,0x04,0xB3      ;REG3
   .db   0x00,0x01,0x4E,0x42      ;REG2
   .db   0x08,0x00,0xFD,0x01      ;REG1
   .db   0x00,0x35,0xC0,0x00      ;REG0
frq2:                     ;432 MHz
   .db   0x00,0x58,0x00,0x05      ;REG5
   .db   0x00,0x32,0x00,0x3C      ;REG4
   .db   0x00,0x00,0x04,0xB3      ;REG3
   .db   0x00,0x01,0x4E,0x42      ;REG2
   .db   0x08,0x00,0xFD,0x01      ;REG1
   .db   0x00,0x36,0x00,0x00      ;REG0
frq3:                     ;435 MHz
   .db   0x00,0x58,0x00,0x05      ;REG5
   .db   0x00,0x32,0x00,0x3C      ;REG4
   .db   0x00,0x00,0x04,0xB3      ;REG3
   .db   0x00,0x01,0x4E,0x42      ;REG2
   .db   0x08,0x00,0xFD,0x01      ;REG1
   .db   0x00,0x36,0x60,0x00      ;REG0
   .exit
Делать надо сразу хорошо, а плохо - само получится.

Оффлайн UR5EIN Вячеслав

  • Ветеран
  • *****
  • Сообщений: 710
  • Репутация: +134/-14
  • QRA: KN78MM
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #1 : 29 Декабрь 2021, 01:40:39 »
Предлагаю вашему вниманию очередную программу-загрузчик регистров синтезатора ADF4350/ADF4351.
Джордж, TNX! Это действительно отличный новогодний подарок!
На фото генератор ADF4350 + ATtiny13А. Это плод коллективной работы, основная работа (made by UR8IP - Андрей), генератор мне отправил Валентин UT2EM для доработки, это видно на фото. Я удалил МК в SOIC корпусе и добавил плату с панелькой DIP-8. Сейчас там записаны 2 частоты: 3456,000 МГц и 432,250 МГц по варианту программы, который я выкладывал в соседней ветке.
B генераторе установлен ОГ 13,000 МГц. Я Валентину посоветовал пока не менять его, т.к. в перспективе возможен вариант в дальнейшем заменить на 10 МГц и можно переделать в ГСС, выложенный в соседней ветке. Я повторил этот ГСС (только без КВ: SI-5351 и АТТ) - прекрасно работает. Теперь, конечно же, проверю и этот 4-х частотный вариант.
Далее нажимается кнопка S1 (сброс), через 50 мс соответствующая частота записывается в регистры синтезатора. Программа больше ничего не делает, просто находится в пустом цикле.
Это очень хороший вариант в плане надежной и устойчивой работы: МК после отправки кода "молчит" + у ADF4350 имеются внутренние "защелки" по входам управления.
Еще раз огромное спасибо, с наступающим и 73!   
« Последнее редактирование: 29 Декабрь 2021, 02:32:14 от UR5EIN Вячеслав »

Оффлайн UR5EIN Вячеслав

  • Ветеран
  • *****
  • Сообщений: 710
  • Репутация: +134/-14
  • QRA: KN78MM
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #2 : 31 Декабрь 2021, 00:39:49 »
Проверил работу девайса по прошивке Джорджа (фото и ссылки в предыдущих сообщениях) - все работает ОК!
Я не паял переключатели и кнопки, просто от pin2,3 вывел проводники, еще один от нулевого провода и один проводник от шины + с резистором 10к. Записал 4 частоты в диапазоне 145 и 430 МГц, слушал на портативку со сменой комбинации уровней входов чипа. Все соответствует описанию алгоритма. При работе генератора смена комбинаций не приводит к изменению частоты, нужно обязательно подтвердить подачей "0" на pin1 (замыкал пинцетом).
Коллеги, с наступающим Новым годом и Рождеством!
Остается только присоединиться + респект автору. Всем 73!

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #3 : 01 Январь 2022, 19:51:21 »
Ну, я рад. Спасибо за оперативное бета-тестирование.

На самом деле в 13-ю тиньку можно записать порядка 30 частот. Вот ломаю голову, как их перебирать наподобие перебора из 4-х частот. Кое-что придумалось, но держу в голове ещё вариант с ATtiny85, в которую можно записать порядка 320 частот.

Ну и оперативная смена программы в тиньке не помешает. Тоже ломаю голову, кое-какие намётки есть. Если получится, обнародую в этой ветке. Вообще хотел бы собрать все решения по тинькам здесь, а то в больших "портянках" на 30 страниц трудно что-то найти. Не знаю только, принято так делать здесь на форуме.
Делать надо сразу хорошо, а плохо - само получится.

Оффлайн R8MM Евгений

  • Ветеран
  • *****
  • Сообщений: 1027
  • Репутация: +125/-70
  • УКВ комитет Омского РО СРР.
  • QRA: mo75gb
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #4 : 01 Январь 2022, 21:42:17 »
принято так делать здесь на форуме
73! Евгений  team RT9M

Онлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3886
  • Репутация: +909/-47
  • QRA: KO84dm
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #5 : 01 Январь 2022, 22:00:19 »
Я пришел к тому, что не нужно набора частот. Обычно нужна одна, конкретная, и она может поменяться. Т.е. нужен генератор на одну частоту с возможностью оперативного изменения оной без всяких сложных движений. Может и не прав, поправьте тогда.
« Последнее редактирование: 01 Январь 2022, 22:38:00 от RW3XL Игорь »
aka RK3X & RC3XC

Оффлайн UR5EIN Вячеслав

  • Ветеран
  • *****
  • Сообщений: 710
  • Репутация: +134/-14
  • QRA: KN78MM
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #6 : 02 Январь 2022, 00:30:40 »
Я пришел к тому, что не нужно набора частот. Обычно нужна одна, конкретная...
Да, Игорь, к этому тоже пришел практическим путем.
Изначально нужен был маячок для 5,7 и 10 ГГц. Ближайшая, верхняя  частота это 1152МГц, для контроля частоты ПЧ синтезировал ее с частоты субгармоники ПЧ (это КГ на 12/16/18/24 МГц). Получается, что это минимально затратная конфигурация контрольного маячка для 144/432/5760/10368 МГц.
Затем с появлением чипа ADF4350 появилась возможность для этих же целей вместо 1152 МГц синтезировать 2880 и 3456 МГц, а это уже две частоты. Теперь же еще есть необходимость в частоте 4008 МГц.
Т.е. с одной стороны - две частоты уже мало, а сильно много - тоже как бы не нужно.
Поэтому 4-х частотный вариант можно рассматривать как наиболее оптимальный. У Джорджа (в соседней ветке) есть и вариант на 8 частот.
...не нужно набора частот...
Когда мне понадобился этот вариант, я просто (все там же, в соседней ветке) взял и к плате ADF4350 добавил ArduinoUNO с индикатором WH1602 и собрал ГСС 140-4400 МГц.

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #7 : 02 Январь 2022, 16:22:52 »
Я пришел к тому, что не нужно набора частот. Обычно нужна одна, конкретная, и она может поменяться. Т.е. нужен генератор на одну частоту с возможностью оперативного изменения оной без всяких сложных движений. Может и не прав, поправьте тогда

Так-то всё правильно, но кроме частоты в синтезаторе много чего ещё нужно устанавливать или менять. Навскидку, мощность на обоих выходах, их включить-выключить, ток СР, из входной частоты выбрать частоту внутренней опоры, уровень шума, какой прескалер и куча всего остального. Тут решения должен принимать человек, иначе программа получится архисложной, да и то сомневаюсь, что такая будет написана...

Ну вот, а заранее вычисленные и выверенные наборы частот намного облегчают жизнь...
Делать надо сразу хорошо, а плохо - само получится.

Онлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3886
  • Репутация: +909/-47
  • QRA: KO84dm
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #8 : 03 Январь 2022, 11:10:56 »
кроме частоты в синтезаторе много чего ещё нужно устанавливать или менять
Да, если это ГСС  :) Если синтезатор это гетеродин в готовой конструкции, то обычно кроме частоты ничего не меняется. Уровня все-равно не хватит, придется усиливать, а фильтрацию никто не отменял. Вот тут загрузчик с внешним интерфейсом, с помощью которого все можно быстро и не сложно поменять будет очень кстати. Не понравилось - перешил быстренько и забыл.
aka RK3X & RC3XC

Оффлайн r6dlc Владимир

  • Постоялец
  • ***
  • Сообщений: 90
  • Репутация: +14/-1
  • Подпись находится в стадии разработки
  • QRA: LN05na
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #9 : 19 Январь 2022, 03:29:02 »
Хочу поблагодарить автора прошивки! Чехи вон торгуют во всю прошитыми чипами Atiny13 для управления adf4350, а у нас появилась возможность бесплатного пользования вашей прошивкой!   Скажите пожалуйста , для чего выключатель S4 ?
« Последнее редактирование: 19 Январь 2022, 03:48:09 от r6dlc Владимир »

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #10 : 19 Январь 2022, 19:52:10 »
Хочу поблагодарить автора прошивки!
Скажите пожалуйста, для чего выключатель S4 ?

На здоровье.

После записи требуемой частоты микроконтроллер больше ничего не делает, поэтому выключателем S4 с микроконтроллера можно снять питание, а синтезатор ADF4351 будет продолжать формировать сигнал заданной частоты. Ещё надо добавить резистор 10 кОм между LE и питанием. Достоинство в том, что потребления нет совсем, а недостаток - нужен лишний выключатель и резистор.
« Последнее редактирование: 19 Январь 2022, 20:19:44 от GM »
Делать надо сразу хорошо, а плохо - само получится.

Оффлайн LZ2WSG

  • Пользователь
  • **
  • Сообщений: 43
  • Репутация: +16/-0
  • QRA: KN34PC
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #11 : 19 Январь 2022, 20:23:56 »
Отправить MCU в режиме Power-down (0,2 μА?)? External Reset продолжит работать, чтобы "разбудить" чип. А ключ остается лишним.
Только как вариант :), всегда можно модифицировать до бесконечности.
Веселин, LZ2WSG

Оффлайн r6dlc Владимир

  • Постоялец
  • ***
  • Сообщений: 90
  • Репутация: +14/-1
  • Подпись находится в стадии разработки
  • QRA: LN05na
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #12 : 20 Январь 2022, 12:36:06 »
GM Помогите пожалуйста разобраться  чайнику, с редактированием регистров в вашей прошивке.
1- Открываю программу для ADF4350 она мне показывает нужные  регистры под мои частоты- с этим понятно.
2-Скачиваю вашу прошивку , что бы залить , нужно убрать разширение txt с этим то же понятно.
3- открываю прошивку в текстовом редакторе что бы отредактировать регистры  - и  ни чего не вижу похожего на приведенный вами пример  .org   0x100
frq0:                     ;144 MHz
   .db   0x00,0x58,0x00,0x05      ;REG5
   .db   0x00,0x42,0x00,0x3C      ;REG4
   .db   0x00,0x00,0x04,0xB3      ;REG3
   .db   0x00,0x01,0x4E,0x42      ;REG2
   .db   0x08,0x00,0xFD,0x01      ;REG1
   .db   0x00,0x12,0x00,0x00      ;REG0
Пробовал разные программы, Notepad++,AVRStudio,HxD, вот WinAVR не захотел работать на моем компе. Ваш пост 252 читал, но видимо туго доходит.
Вопрс: Прошивку перед редактированием регистров нужно переводить в какой то другой формат ? А потом компелировать? Какой это нужно делать программой? Пробовал открывать в HxD потом экспорт файла в формате как текст , но ничего снова не меняется.
« Последнее редактирование: 20 Январь 2022, 12:44:01 от r6dlc Владимир »

Оффлайн LZ2WSG

  • Пользователь
  • **
  • Сообщений: 43
  • Репутация: +16/-0
  • QRA: KN34PC
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #13 : 20 Январь 2022, 12:54:46 »
Notepad++, мысленно игнорируйте красный и синий цвет (условные адреса и программный код).
Четыре частоты записаны одна за другой. Начало: 0058.
Только числа:
.db   0x00,0x58,0x00,0x05      ;REG5 ... => 00580005 ...
« Последнее редактирование: 20 Январь 2022, 13:00:02 от LZ2WSG »
Веселин, LZ2WSG

Оффлайн r6dlc Владимир

  • Постоялец
  • ***
  • Сообщений: 90
  • Репутация: +14/-1
  • Подпись находится в стадии разработки
  • QRA: LN05na
Re: Управление гетеродином на основе ADF4350/ADF4351
« Ответ #14 : 20 Январь 2022, 14:19:43 »
Дак значит вон где эти циферки искть надо! А я все искал, как у автора в примере, значит прямо здесь мы редактируем и потом просто убираем расширение txt  и все ? Спасибо большое!