Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: PLL Software
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
kirgizz
Нужно синхронизировать входной TTL сигнал 20Гц..20кГц с внутренним генератором синуса в DSP и выдать синус на DAC (fs=48 Khz). Главное - ошибка синхронизации +/- 0.05Гц (некое подобие PID control для DC-моторов). Сама по себе разница в фазе не важна, важнее точность в частоте. Скорость изменения частоты входного сигнала 5Гц/сек. max. (линейно, sweep mode).

Слышал, что при подобающей мощности DSP возможен freqency lock до 80кГц. Но пока не совсем представляю, как это можно сделать моим DSP (ADSP21262). Хочу сделать полностью программно или большей частью программно.

Кое-что читал о PLL. Такие программные блоки: фазовый детектор (PFD, опережение-запаздывание) -> фильтр -> управление генератором (error signal) -> генератор (DDS) -> обратно на детектор.

Самую проблему представляет фазовый детектор. Для моего дизайна больше всего подходит PFD с серии x4046. Через ADC: одинаковые частоты дискретизации для входного и выходного сигналов -гут, но думаю, слишком медленно/для маленьких частот.

Через таймер: детектирую (INT) low-high входящего TTL и дальше???...Как я расчитаю время/момент, когда внутренний DDS проходит low-high, если фаза расчитывается раз 1/48кГц секунд. Получается, частота дискретизации входящего ТТЛ отличается от частоты дискретизации выходного синуса (идет на DAC) -как это уживется вместе?

Как лучше реализовать опережение-опаздывание? Как дискретизировать (ADC, timer) и запрограммировать? Может, кто-нибудь знает альтернативные методы?




Благодарю за внимание
Seishel
Чёт на сколько я знаю PLL это фазовая автоподстройка частоты шины проца при тактировании от внешнего генератора с меньшей тактовой частотой, чем частота шины....
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.