Измеритель частоты с поддержкой GPS

Источник:

Измеритель частоты с поддержкой GPS

Целью этого проекта является измерение тактовой частоты RTC 32 768 Гц в сравнении с сигналом 1 PPS (импульс в секунду) от модуля GPS с максимально возможной точностью. Его можно использовать для точной настройки цифровых часов. Частотомер имеет разрешение 144 миллиона отсчетов, а за счет усреднения нескольких измерений точность можно еще больше повысить.

Любую другую частоту можно измерить с аналогичной точностью, если ее разделить до 1 Гц и подать на вход 74HC73. Заменить в прошивке множитель «32768» на номинальную частоту. В этом случае схему PCF8563 можно опустить.

Интересно наблюдать за тем, как кварцевый генератор с цифровыми часами реагирует на окружающую среду: его частота смещается на 2 ppm при нагревании солнечным светом, а затем медленно возвращается к ошибке менее 1 ppm при наступлении тени.

Основная идея состоит в том, чтобы аппаратно разделить сигнал частотой 32 768 Гц на частоту 0,5 Гц и подсчитать тактовые импульсы микроконтроллера (144 МГц), пока этот сигнал частотой 0,5 Гц имеет высокий уровень. Одновременно сигнал 1 PPS от модуля приемника GPS также делится на 2, чтобы получить сигнал частотой 0,5 Г��, и тактовые импульсы частотой 144 МГц подсчитываются, пока этот сигнал также имеет высокий уровень.

Сравнивая результаты двух подсчетов, мы можем определить точность генератора с частотой 32 768 Гц. Разрешение составляет 0,01 ppm. Многие генераторы RTC можно настроить, отрегулировав небольшой внешний конденсатор (4-20 пФ). Удивительно видеть точность измерений (до 4 знаков после запятой) при регулиров��е этого конденсатора — счет остается чрезвычайно стабильным.

Используемый MCU — CH32V203, работающий на тактовой частоте 144 МГц. Несколько блоков кода были написаны с нуля при помощи искусственного интеллекта, поскольку поддержка Arduino для CH32V203 доступна, но все еще находится на ранней стадии и считается незавершенной работой (см. https://github.com/ch32-riscv-ug).

Детали оборудования:

Модуль GPS (Нео-6М): Сигнал PPS управляет светодиодом на модуле. Следуя дорожке печатной платы, контакт 3 является выходом Timepulse. Вывод TX подключен к PA3, что позволяет захватывать предложения GPS через UART2 и анализировать их положение, данные в реальном времени, количество спутников и т. д. (код загружен). Модуль GPS имеет кабель длиной 1 метр и может быть размещен возле окна для лучшего приема спутникового сигнала.

Тактовая частота MCU: CH32V203 использует внешний кварцевый генератор для обеспечения стабильности (важно), а ядро ​​работает на тактовой частоте 144 МГц, генерируемой ФАПЧ. Этот же тактовый сигнал используется для входа счетчика 2 и счетчика 3.

Сигналы затвора: PA3 и PA6 принимают два сигнала частотой 0,5 Гц. Очевидно, эти сигналы не синхронизированы, поэтому встроенное ПО обеспечивает синхронизацию двух счетчиков с входящими импульсами. Счетчики переполняются более 2000 раз — это количество переполнений также отслеживается. Когда сигнал стробирования становится низким, окончательный результат рассчитывается как:

(65 536 × overflow_count) + counter_contents.

Отношение двух значений 144 миллионов отсчетов показывает отклонение между двумя частотами 0,5 Гц. Умножение этого отношения на 32 768 дает факти��ескую частоту генератора RTC.

Чип RTC (PCF8563): этот чип имеет выходную частоту 1 Гц, полученную от внутреннего генератора 32 768 Гц (для этого в регистр 0x0D необходимо записать 0x80). Входной контакт генератора (контакт 1) можно подключить к кристаллу с настроечным триммером или к внешнему источнику частоты 32 768 Гц. Вход защищен от перенапряжения.

TFT-модуль: гнездо для SD-карты было удалено, чтобы сэкономить место внутри плотного корпуса, напечатанного на 3D-принтере.

Плата светодиодного индикатора: 8-битная светодиодная плата отображает два импульса частотой 0,5 Гц и активность линии передачи GPS для базовой проверки оборудования.

Переключатель сброса: Переключатель сброса сбрасывает результаты счетчика. Данные можно отслеживать на последовательном выходе.

Опечатка: (Чертеж перерисован с учетом этих изменений 2 августа 2026 г.)

— Конденсатор сброса 100 нФ отсутствует на схеме (контакт 7 на GND).
--Заменить I2C

16:40
8
Нет комментариев. Ваш будет первым!

Ссылка появится после регистрации

Похожие модели

Посещая этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.