Господа, а как правильно подстраивать частоту для работы с быстрыми асинхронными интерфейсами? Если требуется, например, 13 мегабит/с. Почитал про то как настраиваются PLL в STM32, но там все PLL которые возможно настроить на ходу вроде-как от 24МГц. Думаю снимать данные со всего порта параллельно и чем-то тактировать регистры, но вот чем : ) Подстраивать нужно на ходу, т.е. хотелось бы иметь возможность корректировать тактовую частоту в пределах +-5%

Комментарии: 7

  1. Kaktys

    PLL + clock recovery обычно делают, но это в общей теории

    • Anonim

      Да, похоже на то что нужно, спасибо : ) Пойду изучать

  2. Denys

    ИМХО в асинхронных интерфейсах нужна периферия которая считывает состояние бита с oversampling. А подстройка частоты/PLL микроконтроллера это неправильное решение и пока вы подстроитесь - потеряете данные. Хотя конечно все зависит от протокола, теоретически если можно позволить передавать подобие preamble и корректировать понемногу, и плавать будет не сильно - то может и "прокатит". Но это именно "прокатит", а не правильно.

    • Anonim

      Протокол подразумевает, что необходимо подстроить частоту, вплоть до погрешности в 0.3%, есть даже отдельный этап на котором частоты синхронизируется и также они синхронизируются в процессе через референсные промежутки. Думал над оверсемплингом, но передумал ) А время перестроить частоту там есть

      • Firelander

        подстраивать или настраивать? подстраивать как правило ненужно, периферия сделана с учетом возможного небольшого расхождения частот. А по части настройки, вроде бы 12 мбит максимальная частота юарта для стандартной стмки при стандартном тактировани, хотя могу ошибаться ты usb что ли программный пишешь? На высоких частотах аппаратной возможности у контроллера так точно настраивать частоту нет. Ну либо ставить внешний vco и им управлять

        • Denys

          Или как вариант как-то через clock recovery. Но не уверен актуально ли, мало данных по задаче ТС.

          • Anonim

            Актуально, потому что по-хорошему оно должно уметь подстраиваться. Это не задача, а просто вопрос, чтобы выяснить чем пользуются для настройки частоты тактирования и не уйти в неправильном направлении, хехе. А вот для задачи уже просто стабильно выдать одну частоту не достаточно, так как нет гарантий, что устройство с которым будет происходить обмен данными не врёт по скорости передачи. И тогда уже нужно подстраиваться по нему, до 0.3% (из спецификации протокола)

Не нашли ответ?

Вам также может быть интересно

Подскажите по температуре JBC нано. Пару недель как купил. Пока какие-то одни расстройства. Ей только с подогревом пользоваться?... Читать далее