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

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

Оффлайн Игорь 2

  • Administrator
  • *****
  • Сообщений: 20748
Si5351
« : Декабрь 13, 2019, 05:42:03 pm »
Код на Arduino. Не для профессиональной работы, Вам не понравится - с Arduino будет странно смотреть на Вас недоверчивые коллеги (и клиенты вероятно?)

Да мне без разницы, кто там и как смотрит, я просто программированием серьёзно не занимался, поэтому не совсем понял.
Вот я как думаю (если не прав - поправьте, я ж тупой в этих делах) - Вы по i2c что-то заливаете в эту SI, и, вроде бы, получаете лучше, чем при том алгоритме, что использую я, точнее, мои программисты.
Вот и вопрос - а что, собственно, Вы в SI заливаете, если это можно дать, то я к своим ребятам обращусь, и они зальют то же самое нашими процами, а я спектр гляну...

 
Вы так в все ли убеждены?

Да я просто понимаю, как в SI частоты формируются, и считаю, что при том способе формирования на двухметровом диапазоне палки по уровню -50 - более чем хорошо, могло бы быть и хуже, к примеру, сейчас SI заливаемая алгоритмом Сергея, уже выше 22 МГц начинает давать спуры, прекрасно заметные даже обычным спектроанализатором - они по бокам от основной частоты стоят, и туда-сюда гуляют, порой наползая прямо на основной тон - см. картинки, обзор на обеих 10 МГц.
Но мне всё подходит - во-первых, частоты выше 20 МГц не нужны, во-вторых, синтез весь мусор успешно съест...  pl33
« Последнее редактирование: Декабрь 13, 2019, 05:46:28 pm от Игорь 2 »
Ничего невозможного нет

Оффлайн Игорь 2

  • Administrator
  • *****
  • Сообщений: 20748
Re: Si5351
« Ответ #1 : Декабрь 14, 2019, 01:40:40 am »
Вот здесь продолжение http://analogtrx.com/SMF/index.php?topic=36.msg7443#msg7443 , к сожалению, по-человечески тема не делится, и один пост Веселина слетел, давайте конкретно по SI 5351 именно здесь и продолжать... 123123
Ничего невозможного нет

Оффлайн veso74

  • Hero Member
  • *****
  • Сообщений: 955
Re: Si5351
« Ответ #2 : Декабрь 14, 2019, 01:52:41 am »
Вероятно будет легче: купите/возьмите из коллегам Arduino, я предлагаю Nano. Возьмите пластиковую плату breadboard. Легко макетироваться на нем. С проводами, я впаял компьютерные "золотые" квадратные штырьки. Попробуйте управлять своя Si чрез библиотеки из интернетом. Работают хорошо. Отличаются, но не так сильно. Для одной частоты код имеет несколько строк. Вы не будете писать ничего, кроме Ваши числа. Не сложно. Попробуете другие ИС со временем (Si570 напр.). Все интересно. В противном случае Вы все еще "должны молиться" кому-то написать код за Ваши идеи, а так код есть достаточно для Arduino из интернета - вероятно самая распространенная платформа для управления простыми и не только простыми проектами. Просто как вариант.
« Последнее редактирование: Декабрь 14, 2019, 02:15:26 am от veso74 »

Оффлайн Игорь 2

  • Administrator
  • *****
  • Сообщений: 20748
Re: Si5351
« Ответ #3 : Декабрь 14, 2019, 02:02:56 am »
Да, подумаю. И с тем, что выложили завтра попробую разобраться... cr123
Ничего невозможного нет

Оффлайн zenit

  • Full Member
  • ***
  • Сообщений: 131
Re: Si5351
« Ответ #4 : Декабрь 14, 2019, 02:16:51 am »
Абсолютно не имеет значения за сколько времени и что посчитает байты нужные для записи в регистры в Si5351. Хоть матрица на диодах. :)
Две частоты рассчитанные которые мне натыкались на клаве
;out_CLK0_125000000 
;Clock_input_25MHz
;init
 ard=183 data=192
 ard=3   data=254 ;enable CLK0
 ard=15  data=0
 ard=16  data=79  ;8ma CLC0
 ard=17  data=128 ;disable CLK1
 ard=18  data=128 ;disable CLK2
;VCO=750000000 PLL_A
 ard=26  data=255
 ard=27  data=255
 ard=28  data=0
 ard=29  data=13
 ard=30  data=0
 ard=31  data=240
 ard=32  data=0
 ard=33  data=0
:KD=6 
 ard=42  data=0
 ard=43  data=1
 ard=44  data=0
 ard=45  data=1
 ard=46  data=0
 ard=47  data=0
 ard=48  data=0
 ard=49  data=0
;-------------
;out_CLK0_41234567 
;Clock_input_25MHz
;VCO=824691340 PLL_A
 ard=26  data=255
 ard=27  data=255
 ard=28  data=0
 ard=29  data=14
 ard=30  data=126
 ard=31  data=246
 ard=32  data=182
 ard=33  data=126
:KD=20 
 ard=42  data=0
 ard=43  data=1
 ard=44  data=0
 ard=45  data=8
 ard=46  data=0
 ard=47  data=0
 ard=48  data=0
 ard=49  data=0
Либы ардунячие бродят разные. Я не внимал в них. Читал что не все могут выше 112 МГц прыгнуть. Для этого нужно в MS в 44 регистре второй и третий биты единицы записывать. Если дпкд 6 и более то ноли.  Но чтоб после 50 МГц спуров не было это значит не сишка. В ней PLL  с ни каким фильтром в петле ФАПЧ. Куда должны продукты широченной фапч деваться?

И ещё. Нужно при инициализации обращать внимание на 6 бит 16 регистра для CLK0. Туда должна единица записываться при инициализации для целочисленного дпкд. Если дробный дпкд то ноль.
« Последнее редактирование: Декабрь 14, 2019, 02:24:18 am от zenit »

Оффлайн veso74

  • Hero Member
  • *****
  • Сообщений: 955
Re: Si5351
« Ответ #5 : Декабрь 14, 2019, 02:21:55 am »
Цитировать
Читал что не все могут выше 112 МГц прыгнуть.
Это наполовину правда. Не все могут выше 112 МHz прыгнуть (даже 112,5 MHz по pdf), но для два или три сигнала по CLK вместе, а некоторые из них работают и с три вместе нормално.

Оффлайн zenit

  • Full Member
  • ***
  • Сообщений: 131
Re: Si5351
« Ответ #6 : Декабрь 14, 2019, 02:31:36 am »
Да потому что в тех либах в которые 99% не вникают расчёт делителя ведут от 675 МГц для получения VCO что при делении на 6 даст 112,5МГц.
PLL гонится до 1100МГц что при кд=4 даёт на выходе 275МГц.
Но мало в расчёте использовать кд=4. Нужно ещё записать в 44 регистр ****11**для CLK0
Это справедливо для si5351 полученными от силаб. Других у меня не было.
« Последнее редактирование: Декабрь 14, 2019, 02:33:23 am от zenit »

Оффлайн veso74

  • Hero Member
  • *****
  • Сообщений: 955
Re: Si5351
« Ответ #7 : Декабрь 14, 2019, 02:36:00 am »
Их коды открыты, дополнения часто делаются, ошибки исправляются. Нормально все.
---
Мои китайские чипы мало чем отличаются от Si из несколько авторитетных магазинов. Хотя бы по параметру Fvco max я пытался отделить их друг от друга. А можно китайский продавец продал нормальние Si и мне повезло :).
« Последнее редактирование: Декабрь 14, 2019, 02:42:29 am от veso74 »

Оффлайн zenit

  • Full Member
  • ***
  • Сообщений: 131
Re: Si5351
« Ответ #8 : Декабрь 14, 2019, 02:43:55 am »
Нажаль я совсем не знаю язык си. :(

Оффлайн Игорь 2

  • Administrator
  • *****
  • Сообщений: 20748
Re: Si5351
« Ответ #9 : Декабрь 14, 2019, 02:45:30 am »
У нас все SI легко запрограммировались как на 140...150, так и на 21 МГц ниже с двумя выходами.
С тремя, как я понял, это не выйдет. Прямо по той проге, что упоминалась.
И, кстати, что там за хрень функция Spread Spectrum? 
По-английски я как по-китайски, а переводчик какой-то бред выдаёт... dontt44
Ничего невозможного нет

Оффлайн Игорь 2

  • Administrator
  • *****
  • Сообщений: 20748
Re: Si5351
« Ответ #10 : Декабрь 14, 2019, 02:53:23 am »
И вот здесь http://www.ra3apw.ru/proekty/si5351-spectrum/ картинки, очень похожие на мои... 44443
Ничего невозможного нет

Оффлайн veso74

  • Hero Member
  • *****
  • Сообщений: 955
Re: Si5351
« Ответ #11 : Декабрь 14, 2019, 03:04:46 am »
ОК, только скажите как чип запрограммирован? Не мешает быть с Вашим коэффициентам из той же программы.
---
Дам приммер с другой чип/модуль: ADF4351. Етот же чип на все измерения, частота одинаковая, разница несколько програмных коеффициентов. Выберите, какой использовать. Разница огромна, с преимуществами и недостатками по всем параметрам. 3-4 числа только!

Это также происходит в Si5351. Выходные параметры находятся в руках пользователя/программиста иногда, если приняты значения "по умолчанию" или по самый простой способ - коэффициентов откуда-то, везде и всюду (транслейт).

Часто коефициентов доступни вне библиотеки и пользователь выбирает что быть, где характеристика будет. Например, Вы взяли наготове из программу некоторые из них, которые не соответствовали Вашим условиям, а ждете супер-параметры.
« Последнее редактирование: Декабрь 14, 2019, 03:22:23 am от veso74 »

Оффлайн veso74

  • Hero Member
  • *****
  • Сообщений: 955
Re: Si5351
« Ответ #12 : Декабрь 14, 2019, 10:46:26 am »
Вот выход CLK0 = 135,000000 с коэффициентами, рассчитанными с помощью программы, Fxtal = 25 MHz -1 ppm, 24,99975 MHz
"читатю" прямо register_map.h -> в регистри Si5351.

И это "благоприятный случай". При высоким коэффициентом (частота не в 000, а примерно 135.001254500), еще "лохматые" пики есть (транслейт).
---
Игорь, найдите отличия от предыдущего теста:
http://analogtrx.com/SMF/index.php?topic=36.msg7544#msg7544
« Последнее редактирование: Декабрь 14, 2019, 11:05:43 am от veso74 »

Оффлайн Relayer

  • Hero Member
  • *****
  • Сообщений: 1006
  • UR5FFR
Re: Si5351
« Ответ #13 : Декабрь 14, 2019, 11:40:07 am »
PLL гонится до 1100МГц что при кд=4 даёт на выходе 275МГц.
Во первых гонится не PLL а VCO. А во вторых - это нештатный режим. На моих сишках больше 1 гига не получалось.
Более того, китайцы иногда шлют какието кривые сишки с маркировкой AADR 116 (могут быть и другие маркировки). Так вот у них VCO выше 800МГц не работает. Никак. Ниже - все норм, выше - срывается генерация. Или отбраковка или какая-то спецпартия.
Поэтому правильные сишки в штатном режиме максимум 225МГц
Да я просто понимаю, как в SI частоты формируются
Ой ли? Тут одного понимания мало :) по сути сишка очень простая - внутри умножитель опоры до частоты VCO в диапазоне 600-900МГц и делитель на выход. Фишка в том что как умножитель там и делитель МОЖЕТ быть дробным. Ключевое слово тут - МОЖЕТ. Потому что может быть и целочисленным. Поэтому имеем четыре комбинации
  • целое умножение и целое деление
  • дробное умножение и целое деление
  • целое умножение и дробное деление
  • дробное умножение и дробное деление
Отсортировал я их по мере увеличения фазового шума и увеличения точности частоты на выходе. Кроме этого при целочисленном делении можно выбирать четный коэффициент.
Первый вариант с целочисленным умножением и делением имеет самую низкую точность и неприменим для непрерывной перестройки т.к. приходится постоянно ресетить PLL. Второй вариант самый оптимальный для применения в синтезаторах с плавной перестройкой частоты которая осуществляется за счет изменения в небольших пределах коэффициента дробного умножения при неизменном целочисленном делителе.
В любой схеме есть как минимум одна ненужная деталь :)

Оффлайн veso74

  • Hero Member
  • *****
  • Сообщений: 955
Re: Si5351
« Ответ #14 : Декабрь 14, 2019, 11:41:56 am »
Сигнал Si5351 с управление из QRP-Labs. Fclk0 = 135.000000, XTAL_FREQ = 24999750
Модуль Si, Arduino, приемник на RTL2832, ATT то же самое.

Si5351A Synthesizer demo code
https://qrp-labs.com/synth.html