| Ваш IP: 3.239.233.139 | Online(28) - гости: 22, боты: 6 | Загрузка сервера: 0.25 ::::::::::::

Частотомер на PIC16F628A

На рисунке показана схема простого частотомера созданного на основе микроконтроллера PIC16F628A. Частотомер измеряет частоту от 2 Гц до 10 МГц, результат измерения выводится на первую строку индикатора 1602А, во второй строке отображается период измеряемого сигнала от 100 нс до 500 мс. Время измерения 1 секунда.

Сигнал уровня ТТЛ можно непосредственно подавать на вход частотомера через конденсатор емкостью 100 пФ, для расширения возможности частотомера можно собрать усилитель формирователь, который повышает чувствительность до 50 мВ и защищает вход частотомера от перегрузок.

Прошивка — Freq_F628_hastotomer.hex

Комментарии

  • vlad126:

    Скажите пожалуйста, а на сколько разрядов расчитана ваша схема? Мне крайне важны цифры индикации после запятой, минимум в пятикратном разряде. Например частоту 5Гц мне просто необходимо увидеть вот так: 5,000036 Гц. А также мне крайне важно, чтобы частотомер мог легко отличить частоты, например: 7,000063 Гц от 7,000064 Гц. Ваша схема сможет справиться с этой задачей?

    • liman28:

      Нет, эти схемы не имеют такой точности, тем более на низкой частоте. Вам нужно измерять период, а не частоту. А эти схемы просто считают кол-во импульсов за 1 секунду. Конечно на ардуино можно поэкспериментировать, увеличить время счета до 100 секунд, тогда конечно можно получить приемлемую точность.

      • vlad126:

        Жаль.. Очень жаль. Я уже весь интернет перелопатил в поисках такого частотомера.. Единственно нашел что-то подходящее вот здесь: https://www.radiokot.ru/konkursCatDay2017/16/ , но данная схема сложная для меня. Просто могу её не осилить. Да и компоненты к ней нужно где-то доставать…

        • liman28:

          На PIC контроллерах, можно измерять методом подсчета прерываний при прохождении входного импульса. Но на Arduino это проще сделать. На PIC контроллере помимо прерываний необходимо использовать компаратор (программно) для точного переключения по времени следования импульсов. Можно конечно над этим подумать, но надо время.

    • liman28:

      Вот например библиотека https://www.pjrc.com/teensy/td_libs_FreqMeasure.html на которой основан частотомер http://rcl-radio.ru/?p=42800 измеряет частоту через измерение периода. Если изменить время измерения то можно добится большой точности на НЧ.

      • vlad126:

        А как изменить время измерения периода?

        • liman28:

          Вот пример скетча для Arduino:
          #include

          void setup() {
          Serial.begin(57600);
          FreqMeasure.begin();
          }

          double sum=0;
          int count=0;

          void loop() {
          if (FreqMeasure.available()) {
          // average several reading together
          sum = sum + FreqMeasure.read();
          count = count + 1;
          if (count > 30) {
          float frequency = FreqMeasure.countToFrequency(sum / count);
          Serial.println(frequency,5);
          sum = 0;
          count = 0;
          }
          }
          }
          Частотомер измеряет период колебаний, тридцать раз, суммирует результат и делит его на 30. Период достаточно точно измеряет. Если частота 5 Гц то период 0,2 сек * 30, то время измерения 6 секунд. Если увеличить время измерения до 60 циклов, то точность будет еще больше.
          В данном примере частота выводится до 5-го знака после запятой, какова реальная точность я не знаю, это надо собирать схему и тестировать.
          На PIC контроллерах можно конечно такое реализовать, но я не задавался таким вопросом.

Добавить комментарий

Войти с помощью: 

Случайные статьи

  • Контроль уровня воды в аквариуме

    Схема контроля уровня воды в аквариуме представлена на рис.1. Как только поверхность специального зонда покрывается водой, импульсы генератора НЧ, реализованного на первом операционном усилителе D1.1, поступают на компаратор (D1.2), усиливаются и преобразуются в электрический сигнал, управляющий ключевым каскадом на реле К1. В качестве датчика зонда В1 используется отрезок одно или …Подробнее...
  • Передатчик на 27МГц для системы радиоуправления

    Генератор радиопередатчика собран на схеме кварцевой стабилизации частоты. L1C3 настроен на 27 МГц. Радиус действия передатчика 5…10м. Модуляция осуществляется с выхода микросхемы 561 серии напряжением на уровне 5-7В. Литература 500схем для радиолюбителей\Автор:Николаев А.П.Подробнее...
  • Усилитель мощности на диапазон 144 МГц

    Данный усилитель предназначен для усиления мощности передатчика карманной радиостанции в диапазоне 144 МГц. При подачи на его вход сигнала мощностью 0,05Вт и питании 24В усилитель выдает мощность 5-6Вт, а при питании его напряжением 12В он выдает 3-4Вт. Входное и выходное сопротивления равны 50 Ом. Описание: первый каскад работает в классе …Подробнее...
  • 4-х канальный УМЗЧ на TDA7385

    4-х канальный УМЗЧ на TDA7385

    На ИМС TDA7385 можно собрать простой и качественный 4-х канальный усилитель мощности звуковой частоты. Усилитель прост в сборке, так как имеет минимальный набор внешних компонентов, не нуждается в настройке. Основные характеристики усилителя на TDA7385: Максимальное напряжение питания 18 В Ток покоя 180 мА Выходная мощность при напряжении питания 14,4 В …Подробнее...
  • К1156ЕР5х — РЕГУЛИРУЕМЫЙ ПРЕЦИЗИОННЫЙ ПАРАЛЛЕЛЬНЫЙ СТАБИЛИЗАТОР

    К1156ЕР5х — РЕГУЛИРУЕМЫЙ ПРЕЦИЗИОННЫЙ ПАРАЛЛЕЛЬНЫЙ СТАБИЛИЗАТОР

    Микросхема серии К1156ЕР5х представляет собой трехвыводной регулируемый прецизионный параллельный стабилизатор с высокой температурной стабильностью. Аналогом микросхемы К1156ЕР5х является микросхема TL431 фирм MOTOROLA, TEXAS INSTRUMENTS. Назначение выводов: 1- опорное напряжение 2- анод 3- катод ОСОБЕННОСТИ • Опорное напряжение 2495 мВ ± 1%; • Типовое значение изменения опорного напряжения 5 мВ в рабочем диапазоне температур; • Типовое значение …Подробнее...