Автор Тема: ADF4350  (Прочитано 160650 раз)

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

Оффлайн 4Z5CP

  • Ветеран
  • *****
  • Сообщений: 1439
  • Репутация: +341/-12
  • QRA: KM72mt
Re: ADF4350
« Ответ #240 : 20 Май 2019, 22:31:47 »
Накалякал програмку для Tiny85(какие были)
Значения регистров меняются через терминал, посылаются на ПЛЛ и записываются в EEPROM.
Сигнал Lock не отслеживается, так как не осталось свободных ног, 3 на PLL и 2 на сериал.
Если надо, пишите, прошивку вышлю мейлом.
144MHz - 2x10HV
432MHz - 4x16H
Тарелька 95см для QO-100 и 5 Ватт.

Димитрий.

Оффлайн US4ICI

  • Ветеран
  • *****
  • Сообщений: 2214
  • Репутация: +398/-102
Re: ADF4350
« Ответ #241 : 23 Май 2019, 16:51:15 »
Два PLL ADF4351 с общим внешним опорным генератором, без контроллера.
Павел  US4ICI

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

  • Постоялец
  • ***
  • Сообщений: 85
  • Репутация: +7/-0
  • QRA: LO80nh
Re: ADF4350
« Ответ #242 : 04 Июнь 2019, 12:16:40 »
Может кто помочь прошивкой для ADF4350 и Attiny13 под ОГ 100 МГц?
Частоты: F1-1151 MHz, F2=1152 MHz, F3=1296 MHz, F4=1297 MHz

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: ADF4350
« Ответ #243 : 05 Июнь 2019, 00:07:29 »
1) Выберем R=1000, тогда частота сравнения fPFD=100000 кГц/1000=100 кГц.

2) Вычисляем INT1+FRAC1/MOD1 = 1151000 кГц/fPFD = 11510. Отсюда INT1=11510, FRAC1=0.

3) Аналогично для INT2=11520, FRAC2=0.

4) Аналогично для INT3=12960, FRAC3=0.

5) Аналогично для INT4=12970, FRAC4=0.

Согласны с таким раскладом?

Если согласны, тогда описываете все остальные биты, которые необходимы, затолкнуть всё это по SPI в синтезатор я помогу.
« Последнее редактирование: 05 Июнь 2019, 00:13:05 от GM »
Делать надо сразу хорошо, а плохо - само получится.

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

  • Ветеран
  • *****
  • Сообщений: 710
  • Репутация: +134/-14
  • QRA: KN78MM
Re: ADF4350
« Ответ #244 : 05 Июнь 2019, 03:01:50 »
1) Выберем R=1000, тогда частота сравнения fPFD=100000 кГц/1000=100 кГц.
А почему R=1000,  а не 100 тыс???
Без калькулятора, глядя на цифры, для 1151 и 1297 МГц - fPFD= 1 МГц, для 1152 и 1296 МГц fPFD= 4 МГц.
Это для применения только INT Кдел. Если же задействовать FRAC/MOD, то fPFD можно применить и 12,5/20/25 МГц.
AD Software все сама считает. Попробую в течении дня дать НЕХ.

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

  • Постоялец
  • ***
  • Сообщений: 85
  • Репутация: +7/-0
  • QRA: LO80nh
Re: ADF4350
« Ответ #245 : 05 Июнь 2019, 05:13:24 »
Если же задействовать FRAC/MOD, то fPFD можно применить и 12,5/20/25 МГц.
Предпочтительно PFD = 25 МГц

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

  • Ветеран
  • *****
  • Сообщений: 710
  • Репутация: +134/-14
  • QRA: KN78MM
Re: ADF4350
« Ответ #246 : 05 Июнь 2019, 09:36:12 »
Пробуйте, должна работать. В каждой прошивке 2 частоты (очень мало времени на 4 НЕХ-а, была заготовка)
Выбор частот Attiny13A: pin2-open/pin2-земля.
Соединение  Attiny13A с ADF стандартное, но на всякий случай проверьте:
Attiny13A     pin7      ADF   pin1
                   pin6      ADF   pin2
                   pin5      ADF   pin3,     ADF pin4 +DC 3v3.   
Два файла НЕХ 1151/52  и 1296/97
73!

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: ADF4350
« Ответ #247 : 05 Июнь 2019, 10:34:58 »
А почему R=1000,  а не 100 тыс?
Так R - это 10-битный делитель опорной частоты, диапазон регистра делителя от 1 до 1023.
[datasheet, p.35. Division ratios from 1 to 1023 are allowed]
Делать надо сразу хорошо, а плохо - само получится.

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

  • Постоялец
  • ***
  • Сообщений: 85
  • Репутация: +7/-0
  • QRA: LO80nh
Re: ADF4350
« Ответ #248 : 05 Июнь 2019, 10:40:49 »
Вячеслав, спасибо!
Двух частот вполне достаточно.
Подключение совпадает.
Как получу недостающие детали для СЧ трансвертера, проверю и отпишусь.
73!

Оффлайн khach

  • Старожил
  • ****
  • Сообщений: 484
  • Репутация: +64/-8
Re: ADF4350
« Ответ #249 : 05 Июнь 2019, 13:22:06 »
Два PLL ADF4351 с общим внешним опорным генератором, без контроллера.
Подходит ли для двухчастотного метода измерения интермодуляций? Насколько близко по частоте можно сблизить два генератора пока не начнется взаимозатяжка частот и спектр не рассыпится? ADF-ки все грешат взаимовлиянием, была у АД большая аппнота по этому поводу для ADF4355 кажется- 4 раза плату переделывали.
Александр

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: ADF4350
« Ответ #250 : 06 Июнь 2019, 17:25:42 »
Пробуйте, должна работать. В каждой прошивке 2 частоты
Вячеслав, у меня почему-то не открывается ваш зараренный файл, не можете написать здесь, какие получились коэффициенты INT, FRAC и MOD для 4-х частот?
Делать надо сразу хорошо, а плохо - само получится.

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: ADF4350
« Ответ #251 : 07 Июнь 2019, 21:10:05 »
Всем ЗДР!

Наконец-то скачал с сайта аналог-дивайс программу, для расчёта содержимого регистров AD4350.

Ну что сказать, здорово работает, только почему-то нельзя выставить выходную частоту с точностью до герца. Может это невозможно в принципе? Попробовал посчитать "врукопашную" - получается ошибка 0-1-2 герца. Может я чего-то не так делаю?

Захотелось помочь сообществу чем могу, написал программу для тиньки13а, которая загоняет 6 регистров в AD4350 для установки заданной частоты. Сама программа занимает порядка 200 байт, оставшуюся часть флеши можно отдать под частоты. Для 6 регистров требуется 24 байта, так что в памяти тиньки можно разместить порядка 768/24=32 частоты.

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

Пока придумал так: перебор частот идет циклически, по нажатию одной кнопки. Коротким нажатием идёт перебор, длинным - установка выбранной частоты в синтезатор.

Отображение придумал только для восьми частот - 3 светодиода с двоичной индикацией, скажем, 101 - пятая частота. Ну и с небольшим извратом, можно отобразить 15 частот.

Хочу послушать, что скажут спецы-практики.

Джордж.

Да, вот ещё что. Я новичок на вашем форуме, не ругайте сильно. Мне страшно интересно, прочитал всю эту тему с 1-й по 17-ю страницу.

Делать надо сразу хорошо, а плохо - само получится.

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: ADF4350 - Загрузчик
« Ответ #252 : 12 Июнь 2019, 14:59:08 »
Коллеги, с Днём Независимости!

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

В приложении - прошивка и схема загрузчика. Приведены также осциллограммы сигналов clk, dat и le.

Как это все работает.

Краткое нажатие кнопки S1 (не более 1с) позволяет сделать выбор нужной частоты. Светодиодные индикаторы LED1, LED2 и LED3 показывают в двоичном коде выбранную частоту. Всего таким образом может быть отображено 8 частот. Когда ни один диод не горит, состояние 0-0-0, выбрана частота 0, когда горят все светодиоды, состояние 1-1-1, выбрана частота 7.

Длинное нажатие кнопки S1 (более 1с) обеспечивает запись 6 регистров выбранной частоты в синтезатор.

В хекс-файле представленной прошивки записаны определенные частоты 1151, 1152, 1296, 1297 МГц под опорную частоту 100 МГц/4.

Как прошивать свои собственные частоты.

Берёте текстовый файл, приведённый ниже, подставляете туда свои собственные данные, полученные с помощью аналого-дивайсовской программы ADF435x.exe, компилируете с помощью компилятора, WinAVR, например, получаете хекс-файл. Любым текстовым редактором удаляете из прошивки ad4350loader.hex все строки между первой :0200C00000003E и последней строкой :00000001FF, и вставляете туда текст, скомпилированный вами. Хекс файл готов, можно записывать в память МК.

:0200C00000003E
:1002000000580005009C803C000004B300010E4231
:10021000080080C9002E001000580005009C803C9A
:10022000000004B300010E42080080C9002E002027
:1002300000580005009C803C000004B300010E4201
:10024000080080C90033808800580005009C803C6D
:10025000000004B300010E42080080C900338098FA
:10026000000000000000000000000000000000008E
:10027000000000000000000000000000000000007E
:10028000000000000000000000000000000000006E
:10029000FF0000000000000000000000000000005F
:1002A0000000000000000000FF000000000000004F
:1002B000000000000000000000000000000000003E
:00000001FF

Добавлю ещё, если в первом байте частоты стоит байт 0xFF, как в примере для частот FRQ4-FRQ7, то программа не просматривает частоты далее, а возвращается к нулевой частоте.


<<Пример текстового файла для компиляции>>
   .cseg
   .org   0x100
frq0:                        ;1151 MHz
   .db   0x00,0x58,0x00,0x05         ;REG5
   .db   0x00,0x9C,0x80,0x3C         ;REG4
   .db   0x00,0x00,0x04,0xB3         ;REG3
   .db   0x00,0x01,0x0E,0x42         ;REG2
   .db   0x08,0x00,0x80,0xC9         ;REG1
   .db   0x00,0x2E,0x00,0x10         ;REG0
frq1:                        ;1152 MHz
   .db   0x00,0x58,0x00,0x05         ;REG5
   .db   0x00,0x9C,0x80,0x3C         ;REG4
   .db   0x00,0x00,0x04,0xB3         ;REG3
   .db   0x00,0x01,0x0E,0x42         ;REG2
   .db   0x08,0x00,0x80,0xC9         ;REG1
   .db   0x00,0x2E,0x00,0x20         ;REG0
frq2:                        ;1296 MHz
   .db   0x00,0x58,0x00,0x05         ;REG5
   .db   0x00,0x9C,0x80,0x3C         ;REG4
   .db   0x00,0x00,0x04,0xB3         ;REG3
   .db   0x00,0x01,0x0E,0x42         ;REG2
   .db   0x08,0x00,0x80,0xC9         ;REG1
   .db   0x00,0x33,0x80,0x88         ;REG0
frq3:                        ;1297 MHz
   .db   0x00,0x58,0x00,0x05         ;REG5
   .db   0x00,0x9C,0x80,0x3C         ;REG4
   .db   0x00,0x00,0x04,0xB3         ;REG3
   .db   0x00,0x01,0x0E,0x42         ;REG2
   .db   0x08,0x00,0x80,0xC9         ;REG1
   .db   0x00,0x33,0x80,0x98         ;REG0
frq4:
   .db   0xFF,0x00,0x00,0x00         ;REG5
   .db   0x00,0x00,0x00,0x00         ;REG4
   .db   0x00,0x00,0x00,0x00         ;REG3
   .db   0x00,0x00,0x00,0x00         ;REG2
   .db   0x00,0x00,0x00,0x00         ;REG1
   .db   0x00,0x00,0x00,0x00         ;REG0
frq5:
   .db   0xFF,0x00,0x00,0x00         ;REG5
   .db   0x00,0x00,0x00,0x00         ;REG4
   .db   0x00,0x00,0x00,0x00         ;REG3
   .db   0x00,0x00,0x00,0x00         ;REG2
   .db   0x00,0x00,0x00,0x00         ;REG1
   .db   0x00,0x00,0x00,0x00         ;REG0
frq6:
   .db   0xFF,0x00,0x00,0x00         ;REG5
   .db   0x00,0x00,0x00,0x00         ;REG4
   .db   0x00,0x00,0x00,0x00         ;REG3
   .db   0x00,0x00,0x00,0x00         ;REG2
   .db   0x00,0x00,0x00,0x00         ;REG1
   .db   0x00,0x00,0x00,0x00         ;REG0
frq7:
   .db   0xFF,0x00,0x00,0x00         ;REG5
   .db   0x00,0x00,0x00,0x00         ;REG4
   .db   0x00,0x00,0x00,0x00         ;REG3
   .db   0x00,0x00,0x00,0x00         ;REG2
   .db   0x00,0x00,0x00,0x00         ;REG1
   .db   0x00,0x00,0x00,0x00         ;REG0
   .exit
« Последнее редактирование: 12 Июнь 2019, 15:07:00 от GM »
Делать надо сразу хорошо, а плохо - само получится.

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: ADF4350 - Amplitude Modulation
« Ответ #253 : 12 Июнь 2019, 22:00:42 »
Коллеги, предлагаю вашему вниманию программу - загрузчик регистров синтезатора ADF4350 с амплитудной модуляцией выходного сигнала.

Программа написана под МК ATtiny25, но должна работать и под ATtiny13А. Прошивка приведена в приложении. Программа выдаёт синусоидальный сигнал с выбранной частотой, модулированной меандром. Меандр логического уровня подаётся на вход PB3, в результате чего выходная мощность скачком меняется от -4 дБм до 5 дБм. Длительность каждого уровня 0 и 1 должна быть не менее 150 мкс.

Схема такая же, как и в сообщении 252 с небольшими изменениями.
1) От ножки РВ3 удалён диод LED3 и сопротивление.
2) К ноге РВ3 через резистор порядка 100 Ом подключается модулятор с логическими уровнями.
3) К ноге RESET подключена кнопка "сброс ", вторым концом на землю.

Краткое нажатие кнопки S1 (не более 1с) позволяет сделать выбор нужной частоты.
Поскольку светодиодов всего два, то для выбора доступно только 4 частоты.

Длинное нажатие кнопки S1 (более 1с) обеспечивает запись 6 регистров выбранной частоты в синтезатор.

Далее программа переходит в режим амплитудной модуляции выходного сигнала, чтобы вернуться к режиму выбора частоты, надо нажать кнопку сброс.

Надеюсь, моя программа пригодится кому-нибудь для отладки или тестирования аппаратуры.
Перед использованием нужно удалить расширение .txt, оставив только .hex
« Последнее редактирование: 12 Июнь 2019, 22:05:29 от GM »
Делать надо сразу хорошо, а плохо - само получится.

Оффлайн GM

  • Старожил
  • ****
  • Сообщений: 201
  • Репутация: +45/-9
  • QRA: KO85SK
Re: ADF4350 - BPSK
« Ответ #254 : 14 Июнь 2019, 17:10:28 »
Из 8-ногой тиньки ещё не всё выжато :-). Подумал тут, что можно прикрутить низкоскоростной BPSK. Надо кому-нибудь?
Делать надо сразу хорошо, а плохо - само получится.