Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 13 из 58 ПерваяПервая ... 31011121314151623 ... ПоследняяПоследняя
Показано с 121 по 130 из 578

Тема: Как управлять Si5351

  1. #121

    Регистрация
    14.06.2018
    Адрес
    Санкт-Петербург
    Сообщений
    1,000
    Приемник был на частоте 28 МГц. На первом плане была звуковая панорама, на втором - поправка к кварцу и демодуляция, на третьем - спектр с водопадом, на четвертом - мигающий разряд генератора в режиме редактирования частоты. Да, делается программный pll ресет (177) в каждом цикле режима, так как частота в генераторе изменяется десятичными разрядами в том числе и десятками мегагерц, а изменение частоты отслеживать, не актуально. После редактирования обмен прекращается и с сишкой, и с дисплеем. Клок i2c около 190 кГц, период главного цикла около 2 Гц. Вобще-то выступление было к теме про Синтезатор на меге2560, где шла речь о воздействии помех по квадратной шине на сишку, просто решил запостить в этой, как в более общей. Акцент на реабилитации i2c. (:

    Проделал повторный эксперимент. Видео с ресетом pll и выключением output на время программирования по даташиту (pll_output), видео только с ресетом pll (pll_only), видео без ресета pll с отстройкой (wo_pll). Частота прежняя, 28 МГц. Видно что с ресетом и выключением - горбов в частотном домене больше и они уже, если только с ресетом - их количество меньше и они шире, без ресета - горбов нет совсем. (повторил трижды) На сдр трансиверах, кстати, замечал хлопки при пересечении определенной частоты внутри диапазонов, видимо это как раз смена делителей с необходимостью софт-ресета. Ну и ладно. Просто пока все на столе, можно потыкать кнопки и снять кино. Ничего нового. Лучше обратите внимание на Osc >> 5, вот это свежатинка. (-: И, кстати, чтобы два раза не вставать спрошу, как в Си после обычной операции деления двух целых чисел достать остаток? Неужели ассемблерную вставку делать или надеяться, что компилятор сам догадается объединить две операции деления и получения остатка от деления в одну по регистрам?
    Вложения Вложения


  2. #122

    Регистрация
    12.09.2006
    Адрес
    Болгария, Силистра, KN34PC
    Сообщений
    1,420
    Позывной
    LZ2WSG
    Взгляните на общедоступные упр. коды Si5351, возможно найдете что-нибудь интересное. RESET Si никто не делает, кроме начала. Выходы при перезаписи никто не отключает. (А может быть, в некоторых случаях: напр. при большом скачке частоты). И сигнал хорош от этого просмотра (на сигнал приемника).
    ---
    Цитата Сообщение от ozforester Посмотреть сообщение
    ... как в Си после обычной операции деления двух целых чисел достать остаток?
    uint8_t mult;
    uint32_t num;
    ...
    mult = fvco / XTAL_FREQ;
    num = fvco % XTAL_FREQ;
    Да, ассемблерный код при / и % на 90% повторяется. Ето только вопрос оптимизации (которая почти не нужна, кроме за напр. ATtiny13A ).
    Последний раз редактировалось veso74; 21.05.2023 в 13:28.

  3. #123

    Регистрация
    14.06.2018
    Адрес
    Санкт-Петербург
    Сообщений
    1,000
    Цитата Сообщение от veso74 Посмотреть сообщение
    mult = fvco / XTAL_FREQ;
    num = fvco % XTAL_FREQ;
    То есть, когда эти две команды присутствуют в коде, то компилятор все понимает и выполняет только первую операцию (/), сохраняя после нее отстаток?
    Упс, попоздал, уже вижу ответ. Хотя почему бы компилятору этим и не озадачиться, там же всякие "проходы" и "оптимизации". Лишние 250 тактов "на дороге не валяются" и для атмеги. Опять же, возможо есть и правильные операции деления в виде вызова функций из math.lib, это бы надо у программистов спросить.
    Последний раз редактировалось ozforester; 21.05.2023 в 13:36.

  4. #124
    Аватар для Tadas
    Регистрация
    12.06.2002
    Адрес
    KO24AV
    Сообщений
    3,356
    Позывной
    LY1CE
    Цитата Сообщение от ozforester Посмотреть сообщение
    правильные операции деления в виде вызова функций из math.lib, это бы надо у программистов спросить.
    Быстрее будет самому посмотреть.

    https://cplusplus.com/reference/cmath/
    Хороша теория, но что ты с ней будешь делать ?
    73 de LY1CE

  5. Спасибо от ozforester

  6. #125

    Регистрация
    14.06.2018
    Адрес
    Санкт-Петербург
    Сообщений
    1,000
    https://cplusplus.com/reference/cstdlib/div/
    Код:
      div_t divresult; 
     divresult = div (38,5); 
     printf ("38 div 5 => %d, remainder %d.\n", divresult.quot, divresult.rem);
    запомнил в закладки.
    thinking c++ (-:

  7. #126

    Регистрация
    12.09.2006
    Адрес
    Болгария, Силистра, KN34PC
    Сообщений
    1,420
    Позывной
    LZ2WSG
    Arduino/Microcore к ATtiny13A сделал вместе, в другой МК, с другим компилятором: каждая операция: отдельно. Но ето кому интересен ассемблер. Несколько сэкономленных байтов - не вопрос.
    Код:
    C:\Users\...\si/si.ino:66
      uint8_t a = fvco / fxtal;   // a = 15 ... 90
      uint32_t b = fvco % fxtal;  // b = 0 ... 1048575
      8c:	2a e8       	ldi	r18, 0x8A	; 138
      8e:	3f e7       	ldi	r19, 0x7F	; 127
      90:	4d e7       	ldi	r20, 0x7D	; 125
      92:	51 e0       	ldi	r21, 0x01	; 1
      94:	d8 d0       	rcall	.+432    	; 0x246 <__udivmodsi4>
      96:	29 87       	std	Y+9, r18	; 0x09
      98:	3a 87       	std	Y+10, r19	; 0x0a
      9a:	4b 87       	std	Y+11, r20	; 0x0b
      9c:	5c 87       	std	Y+12, r21	; 0x0c
      9e:	4b 01       	movw	r8, r22
      a0:	5c 01       	movw	r10, r24

  8. Спасибо от ozforester

  9. #127

    Регистрация
    14.06.2018
    Адрес
    Санкт-Петербург
    Сообщений
    1,000
    Как оказалось "все уже украдено до нас" из stdlib.h

  10. #128
    Подключил две Si5351 от кварца как на схеме. "Ведущий", тот у которого кварц, работает нормально, а ведомый только на один выход и с шумами. В чем может быть дело? Микросхему заменил, все то же самое. Может вход XB не должен висеть, а его надо через конденсатор заземлить?
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	Si5351_Подключение.JPG 
Просмотров:	108 
Размер:	38.5 Кб 
ID:	390096  

  11. #129
    SoundMaster, если кварц пассивный наверно же с XB надо брать выход (выход с элемента логики кг) для подачи во вторую сишку? (в ее вход XA)
    Если предполагать, что там стандартный генератор на логическом элементе.

    Но это все равно кривометоды имхо, наверно надо как на исходной схеме ставить отдельный КГ.


  12. #130
    Аватар для Genadi Zawidowski
    Регистрация
    22.07.2004
    Адрес
    Санкт-Петербург
    Сообщений
    11,084
    Записей в дневнике
    20
    Позывной
    UA1ARN
    С XB первой на XA второй через конденсатор
    Два отдельных генератора чреваты биениями между ними, пролезающими на звуковй частоте везде в радио.
    ps: а что за структура, где надо столько частот? Вроде делалось что-то обычное с низкой ПЧ?
    ... Я там глубину сам промерял!

Страница 13 из 58 ПерваяПервая ... 31011121314151623 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Подскажите, плиз, как управлять таким тюнером :)
    от sonycman в разделе Технический кабинет
    Ответов: 5
    Последнее сообщение: 23.03.2015, 00:23
  2. Как удобнее управлять амплитудой нч сигнала?
    от R3LAI в разделе Технический кабинет
    Ответов: 5
    Последнее сообщение: 07.08.2014, 10:31
  3. Управлять исполнительным устройством при помощи одной кнопки
    от stolyarov-ae в разделе Технический кабинет
    Ответов: 11
    Последнее сообщение: 21.01.2013, 09:23
  4. Помогите! Нужно управлять LPD 430мГц через ррадио телефон!
    от V205 в разделе Технический кабинет
    Ответов: 2
    Последнее сообщение: 17.03.2009, 14:29
  5. Как управлять линией передачи в MIDI портe
    от Юрий(UR5VEB) в разделе Программное обеспечение
    Ответов: 19
    Последнее сообщение: 09.11.2006, 00:22

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •