Частотомер до 16 мгц на микроконтроллере

Частотомер – цифровая шкала с LCD индикатором 16×1

Этот цифровой частотомер разработан на основе моей старой конструкции Частотомер – цифровая шкала с LCD (ЖКИ). Прототип был изготовлен в далеком 2001 г., с тех пор его повторили и до сих пор используют многие радиолюбители. Несмотря на то, что за прошедшие годы появилось много новых разработок, прибор ничуть не устарел и по совокупности параметров вполне может конкурировать с любым современным частотомером своего класса.

А вернулся я к нему по одной простой причине. Дело в том, что LCD индикатор KO-4B, который я использовал, в настоящее время снят с производства и приобрести его очень сложно. А у меня возникла необходимость изготовить еще один экземпляр этого частотомера. Можно, конечно, собрать аналог индикатора на LED и AVR, но это как-то очень уж нерационально.

В общем, появилась новая разработка. В частотомере я использовал самый распространенный в настоящее время символьный индикатор WH1601A – 16 символов в 1 строке производства фирмы Winstar, но можно использовать и LCD индикатор 16 символов в 2 строки. Графические возможности этого индикатора гораздо больше, чем у KO-4B, было бы неразумно их не использовать.

Кроме того, за прошедшие годы радиотехника существенно продвинулась в сторону высоких частот. Поэтому я увеличил разрядность математики в программе, что позволило поднять верхнюю границу измеряемых частот до аппаратного предела, определяемого быстродействием PIC и внешнего СВЧ делителя. Быстродействие PIC, кстати, тоже выросло. Если внутренний счетчик PIC16F84 работал до частот, не более 40. 45 МГц, то в современном PIC16F628A он уверенно считает до 90. 95 МГц. Если использовать внешний СВЧ делитель на 256, верхняя измеряемая частота может быть более 20 ГГц!

Как и прототип, этот частотомер может быть использован как универсальный измерительный прибор или в качестве цифровой шкалы связной и радиоприемной аппаратуры всех типов. С прибором можно использовать до трех внешних делителей с различными коэффициентами деления в пределах 2. 256. Номер подключенного в данный момент делителя определяется автоматически.

При использовании частотомера в качестве цифровой шкалы в его энергонезависимую память можно записать до 3 значений промежуточных частот в диапазоне от 0 до 1 ГГц. Их значения вводятся с точностью до 10 Гц и в любой момент могут быть изменены пользователем с помощью 3-х кнопок, расположенных на передней панели прибора.

В частотомере предусмотрена возможность программной калибровки, что позволяет использовать любые кварцевые резонаторы в диапазоне 2. 20 МГц. Значения всех промежуточных частот, коэффициенты деления используемых внешних делителей, а также калибровочные константы могут изменяться пользователем без применения каких-либо дополнительных устройств. Принцип действия частотомера классический: измерение количества импульсов входного сигнала за определенный интервал времени.

Принципиальная схема прибора показана на рис.1. При использовании указанных на схеме деталей входной формирователь имеет полосу пропускания 1 Гц. 100 МГц, входное сопротивление 500 ком и чувствительность около 100 МВ.

Управление частотомером – цифровой шкалой осуществляется с помощью 3-х кнопок SB1 . SB3, размещенных на передней панели. Они служат для переключения времени измерения. При нажатии на SB1 включается предел 0,1 сек, а при нажатии на SB2 или SB3 – 1 cек или 10 сек соответственно.

С помощью этих же кнопок можно ввести коэффициенты деления до 3-х используемых с прибором делителей. Это может оказаться полезным при проведении измерений в широком диапазоне частот. Например, первый делитель работает в диапазоне 500 МГц. 2 ГГц, а второй – 30 МГц. 500 МГц и они имеют разный коэффициент деления. При смене делителя прибор автоматически будет учитывать смену его коэффициента деления при расчете показаний.

Для калибровки прибора достаточно просто ввести истинную частоту генерации кварца. В любительских условиях наибольшей точности можно добиться, если измерить ее с помощью SDR приемника. Достаточно поднести антенну приемника к кварцу. При этом влияние на частоту генерации кварца минимально, и точность измерения может достигать +/- 1 Гц, если приемник предварительно откалибровать по сигналам радиостанций, вещающих на эталонных частотах.

Долговременная точность и стабильность показаний будут определяться стабильностью частоты кварцевого генератора. Конечно, нельзя требовать от внутреннего генератора PIC контроллера “суперпараметров”. Но ведь для любительских целей они чаще всего и не нужны. Однако, если необходима высокая точность измерений и долговременная стабильность, в качестве опорного лучше использовать внешний термостатированный генератор.

Более подробно особенности наладки и работы с прибором, а также методика калибровки описаны в подробном описании.

Частотомер на PIC16F628А своими руками

Одним из приборов-помощников радиолюбителя должен быть частотомер. С его помощью легко обнаружить неисправность генератора, измерить и подстроить частоту. Генераторы очень часто встречаются в схемах. Это приемники и передатчики, часы и частотомеры, металлоискатели и различные автоматы световых эффектов…

Особенно удобно пользоваться частотомером для подстройки частоты, например при перестройки радиостанций, приёмников или настройки металлоискателя.

Один из таких несложных наборов я недорого приобрёл на сайте китайского магазина здесь: GEARBEST.com

Набор содержит:

  • 1 x PCB board (печатная плата);
  • 1 x микроконтроллер PIC16F628A;
  • 9 x 1 кОм резистор;
  • 2 x 10 кОм резистор;
  • 1 x 100 кОм резистор;
  • 4 x диоды;
  • 3 x транзисторы S9014, 7550, S9018;
  • 4 x конденсаторы;
  • 1 x переменный конденсатор;
  • 1 x кнопка;
  • 1 x DC разъём;
  • 1 x 20МГц кварц;
  • 5 x цифровые индикаторы.

Описание частотомера

  • Диапазон измеряемых частот: от 1 Гц до 50 МГц;
  • Позволяет измерять частоты кварцевых резонаторов;
  • Точность разрешение 5 (например 0,0050 кГц; 4,5765 МГц; 11,059 МГц);
  • Автоматическое переключение диапазонов измерения частоты;
  • Режим энергосбережения (если нет изменения показаний частоты — автоматически выключается дисплей и на короткое время включается;
  • Для питания Вы можете использовать интерфейс USB или внешний источник питания от 5 до 9 В;
  • Потребляемый ток в режиме ожидания — 11 мА

Схема содержит небольшое количество элементов. Установка проста — все компоненты впаиваются согласно надписям на печатной плате.

Мелкие радиодетали, разъемы и т.п. упакованы в небольшие пакетики с защелкой. Индикаторы, микросхема и её панелька для исключения повреждений ножек вставлены в пенопласт.

Принципиальная схема частотомера

Напряжение на выводах микроконтроллера

Генератор для проверки кварцев

Приступаем к сборке

Высыпаем на стол содержимое пакета. Внутри находятся печатная плата, сопротивления, конденсаторы, диоды, транзисторы, разъемы, микросхема с панелькой и индикаторы.

Ну и вид на весь набор в полностью разложенном виде.

Теперь можно перейти к собственно сборке данного конструктора, а заодно попробовать разобраться, на сколько это сложно.

Я начинал сборку с установки пассивных элементов: резисторов, конденсаторов и разъёмов. При монтаже резисторов следует немного узнать об их цветовой маркировке из предыдущей статьи. Дело в том, что резисторы очень мелкие, а при таких размерах цветовая маркировка очень плохо читается (чем меньше площадь закрашенного участка, тем сложнее определить цвет) и поэтому также посоветую просто измерить сопротивление резисторов при помощи мультиметра. И результат будем знать и за одно его исправность.

Конденсаторы маркируются также как и резисторы.
Первые две цифры — число, третья цифра — количество нулей после числа.
Получившийся результат равен емкости в пикофарадах.
Но на этой плате есть конденсаторы, не попадающие под эту маркировку, это номиналы 1, 3 и 22 пФ.
Они маркируются просто указанием емкости так как емкость меньше 100 пФ, т.е. меньше трехзначного числа.

Резисторы и керамические конденсаторы можно впаивать любой стороной — здесь полярности нет.

Выводы резисторов и конденсаторов я загибал, чтобы компонент не выпал, лишнее откусывал, а затем опаивал паяльником.

Читайте также:  Обзор плк фирмы siemens

Немного рассмотрим такой компонент, как — подстроечный конденсатор. Это конденсатор, ёмкость которого можно изменять в небольших пределах (обычно 10-50пФ). Это элемент тоже неполярный, но иногда имеет значение как его впаивать. Конденсатор содержит шлиц под отвертку (типа головки маленького винтика), который имеет электрическое соединение с одним из выводов. Чтобы было меньше влияния отвертки на параметры цепи, надо впаивать его так, чтобы вывод соединенный со шлицом, соединялся с общей шиной платы.

Разъемы — сложная часть в плане пайки. Сложная не точностью или малогабаритностью компонента, а наоборот, иногда место пайки тяжело прогреть, плохо облуживается. Потому нужно ножки разъёмов дополнительно почистить и облудить.

Теперь впаиваем кварцевый резонатор, он изготовлен под частоту 20МГц, полярности также не имеет, но под него лучше подложить диэлектрическую шайбочку или приклеить кусочек скотча, так как корпус у него металлический и он лежит на дорожках. Плата покрыла защитной маской, но я как то привык делать какую нибудь подложку в таких случаях, для безопасности.

Далее впаиваем транзисторы, диоды и индикаторы. В отличии от резисторов и конденсаторов здесь нужно впаивать правильно, согласно рисунку и надписям на плате.

Длительность пайки каждой ножки не должна превышать 2 сек! Между пайками ножек должно пройти не менее 3 сек на остывание.

Ну вот собственно и всё!

Теперь осталось смыть остатки канифоли щёткой со спиртом.

Осталось правильно вставить микросхему в свою «кроватку» и подключить питание к схеме.

Питание должно быть В пределах от 5 до 9 В — постоянное стабилизированное без пульсаций. (В схеме нет ни одного эл.конденсатора по питанию.)

Не забудьте у микросхемы есть с торца ключ — он располагается у вывода №1! Не следует полагаться на надпись названия микросхемы — она может быть написана и к верх ногами.

При подключении питания и отсутствия сигнала на входе высвечивается .

Первым делом нашёл кучу кварцев и начал проверять. Следует отметить, что частота кварца, например 32,768 кГц не может быть измерена, т.к. измерение ограничивается в диапазоне от 1 МГц.

Можно измерить, например 48 МГц, но следует иметь ввиду, что будет измерены гармонические колебания кварцевого генератора. Так 48 МГц будет измерена основная частота 16 МГц.

Подстроечным конденсатором можно подстроить показания частотомера по эталонному генератору или сравнить с заводским частотомером.

Режим программирования частотомера позволяет вычесть четыре основные запрограммированные ПЧ частоты 455 кГц; 3,9990 МГц; 4,1943 МГц; 4,4336 МГц; 10,700 Гц, а также любую собственную частоту.

Таблица алгоритма програмирования

Чтобы войти в режим программирования (Prog) нужно нажать и удерживать кнопку в течении 1-2 сек.

Затем нажимаем кнопку и поочередно пролистываем меню:

«Quit» — «Выход» : прерывает режим программирования, ничего не сохраняя.

«Add» — «Добавление» : сохранение измеренной частоты и в дальнейшем эта частота будет складываться с измеряемыми частотами.

«Sub» — «Вычитание» : сохранение измеренной частоты и в дальнейшем она будет вычитаться с измеряемыми частотами.

«Zero«- «Ноль» — обнуляет все ранее запрограммированные значения.

«table» — «Таблица«: в этой таблице можно выбрать основные запрограммированные частоты 455 кГц; 3,9990 МГц; 4,1943 МГц; 4,4336 МГц; 10,700 Гц. После выбора записи (длительное нажатие), вы вернетесь в «Главное меню» и выберите пункт «Add» — «добавить» или «Sub» — «убавить«.

«PSave» / «NoPSV«: включает / отключает режим энергосбережения. Дисплей отключается если нет изменения частоты некоторое время.

Если показания сильно отличаются, то возможно включена предустановка. Чтобы её отключить войдите в режим программирования и затем нажимая кнопку выберите «Zero» и удерживайте пока не начнёт мигать, затем отпустите её.

Интересный обучающий конструктор. Собрать частотомер под силу даже начинающему радиолюбителю.

Качественно изготовленная печатная плата, прочное защитное покрытие, небольшое количество деталей благодаря программируемому микроконтроллеру.

Конструктор приятно порадовал, я считаю его хорошей базой как в получении опыта сборки и наладки электронного устройства, так и в опыте работы с немало важным для радиолюбителя прибором — частотомером.

Доработка частотомера

Внимание! В заключение хочется отметить, что входной измеряемый сигнал подаётся непосредственно на вход микросхемы, поэтому для лучшей чувствительности и главное, защиты микросхемы нужно добавить по входу усилитель-ограничитель сигнала.

Можно спаять один из предложенных ниже.

Сопротивление R6 на верхней и R9 на нижней схеме подбирается в зависимости от напряжения питания и устанавливается на его левом выводе 5 В. При питании 5 В сопротивление можно не ставить.

… или простой, на одном транзисторе:

Номиналы сопротивлений указаны при питании 5В. Если у Вас питание усилителя другим напряжением, то подберите номинал R2,3 чтобы на коллекторе транзистора было половина питания.

Схема похожего частотомера с входным каскадом усилителя.

Вторая доработка. Для увеличения измеряемого потолка частоты можно собрать к частотомеру делитель частоты. Например, схемы ниже:

Надеюсь, что обзор данного конструктора-частотомера был интересен и полезен. Удачи!

Цифровой частотомер на микроконтроллере PIC16F84

Главная особенность частотомер на микроконтроллере — простота и экономичность. Основные характеристики частотомера: диапазон измерения частоты — от 0,1 Гц до 60 МГц ; порог чувствительности по входному напряжению — от 0,08 до 0,15 В (значение амплитуды); минимальная фиксируемая частотомером величина частоты синусоидального сигнала — 2 Гц (амплитудой 0,15 В); максимальная амплитуда входного сигнала — 3 В.

В качестве источника питания применена батарея «Крона» либо внешний источника стабилизированного питания с напряжением от 7 до 16 В. Таким вариантом источника питания может послужить простой стабилизатор на LM317.

В частотомере есть возможность изменения времени измерения (0,1; 1 и 10 с), умножение показаний на 1000 (при применении внешнего делителя частоты), удержание показаний, запись предыдущего значения частоты в энергонезависимую память и возможность последующего считывания.

Основа частотомера — микроконтроллер PIC16F84A, который осуществляет счет импульсов внешнего сигнала, обработку полученных значений и вывод результатов измерения на LCD. В функции микроконтроллера также входят опрос кнопок (SB1-SB4) и управление питанием частотомера.

Кнопка SB1 предназначена для включения и выключения частотомера. После подключения батареи питания частотомер находится в выключенном состоянии. При нажатии на кнопку SB1 напряжение питания через диод VD1 поступает на интегральный стабилизатор напряжения DA1, а с его выхода — на входной каскад: транзистор VT3, микроконтроллер DА2 и индикатор LCD.

Потом на выводе 1 (A2) микроконтроллера возникает высокий логический уровень, что приводит к открыванию транзисторов VT1 и VT2. Затем микроконтроллер ждет отпускания кнопки SB1 (контролируя сигнал на выводе 6). После размыкания кнопки SB1, напряжение питания подается на вход стабилизатора DA1 через открытый транзистор VT1 и начинается измерение частоты.

Во время удержания SB1 на экране индикатора отображается надписи «ЧАСТОТОМЕР» и «ВЕРСИЯ: 1.00». При вторичном нажатии на кнопку SB1, напряжение питания поступает на вывод 6 (B0) микроконтроллера, который после этого ожидает размыкания кнопки SB1, и когда это произойдет, устанавливает низкий логический уровень на выводе 1 (A2). В итоге транзисторы VT1, VT2 закрываются, частотомер обесточивается. Если в режиме замера на индикаторе появляются нулевые показания в течение приблизительно 3 мин, микроконтроллер устанавливает низкий логический уровень на выводе 1 (A2), таким образом, отключая от источника питания.

Время измерения, выбранное кнопкой SB2 (0,1; 1 или 10 с), показывается в правой части нижней строки индикатора. Цена младшего разряда — 10, 1 или 0,1 Гц соответственно. При времени измерения 0,1; 1 и 10 с максимально на LCD может отображаться семь, восемь или девять разрядов, т. е. наибольшее отображаемое значение равно соответственно 99,999.99, 99,999.999 или 99,999.999.9 МГц.

Нажатием кнопки SB3 показания частоты умножают на 1000. Это необходимо для считывания показаний при использовании внешнего делителя на 1000. Этот коэффициент умножения («х1» или «х1000») отображается в середине нижней строки. Для удержания показания, нажимают кнопку SB4 («Память»). При этом на LCD фиксируется значение той частоты, которое было в момент нажатия кнопки. Его можно сохранить в энергонезависимой памяти микроконтроллера, воспользовавшись кнопкой SB2, функция которой в этом случае — «Запомнить».

Читайте также:  Шумы и помехи в тракте звуковой частоты

Прежнее значение при этом стирается. Для того чтобы почитать частоту из памяти, необходимо нажать на кнопку SB3. Для выхода из режима работы с памятью используют кнопку SB4. В режиме работы с памятью, частотомер автоматически выключается примерно через 3 мин после нажатия на любую кнопку независимо от показаний индикатора. После выключения питания в энергонезависимой памяти сохраняются последние параметры измерения (время измерения и множитель).

Приведенную ниже прошивку для микроконтроллера можно запрограммировать простым и надежным программатором для PIC микроконтроллеров. В качестве VT1, VT2 в частотомере можно использовать произвольные транзисторы указанных на схеме серий. Стабилизатор 78L05 заменим на КР1157ЕН502А, LM2931Z.

Простой частотомер до 40 МГц на микроконтроллере ATmega16

В статье мы рассмотрим, как построить маленький, дешевый и простой частотомер, способный измерять частоту до 40 МГц с ошибкой ниже 1%. Подобной точности вполне достаточно для отладки большинства собственных аналоговых и цифровых устройств. Прибор позволит Вам проанализировать многие аспекты работы схем.

Принципиальная схема частотомера изображена на рисунке 1.

Рис.1. Принципиальная схема прибора

Частотомер собран на макетной плате, основой является микроконтроллер ATmega16 компании Atmel, источником тактовой частоты является внутренний RC осциллятор 8 МГц (это необходимо помнить при программировании микроконтроллера). Дополнительно, во входной части используется 4-битный счетчик 74HC191 в качестве делителя измеряемой частоты на 16 до подачи ее на вход микроконтроллера. Как видно, используется только выход Q3 счетчика, частота на этом выходе будет равна входной частоте деленной на 16.

Вход прибора (щуп) – точка W1, которая напрямую подключена к порту микроконтроллера PB0 и, через делитель, к порту PB1.

Для отображения значения измеренной частоты используется 4-разрядный семисегментный светодиодный индикатор с общим анодом. Такое решение сокращает количество проводников для подключения индикатора. В случае отсутствия дисплея указанного типа, возможно применение различных типов семисегментных индикаторов, однако потребуется адаптация программного обеспечения микроконтроллера.

Схема расположения и назначение выводов примененного индикатора изображена на рисунке 2.


Рис.2. Расположение и назначение выводов примененного 4 разрядного светодиодного индикатора.

Выводы E1…E4 используются для включения соответствующих разрядов (E1 – для включения правого младшего разряда).

Каждая линия ввода/вывода микроконтроллера ATmega16 может обеспечить выходной ток до 40 мА, поэтому нам нет необходимости использовать транзисторы и сигналы управления дисплеем (E1…E4) подключены непосредственно к порту микроконтроллера.

Коннектор для внутрисхемного программирования микроконтроллера J1. После сборки и программирования микроконтроллера Вам потребуется калибровка прибора, настройка некоторых переменных (например, для увеличения яркости дисплея, уменьшения мерцания дисплея). Другими словами Вам потребуется обновление ПО микроконтроллера, и поэтому указанный коннектор необходимо установить на плату.

Алгоритм измерения частоты

Все мы знаем, что частота – это количество повторяющихся импульсов за единицу времени. Однако, измерение частоты с помощью цифровых приборов, например, с помощью микроконтроллера, который имеет свои ограничения, требует некоторых исследований для достижения необходимых результатов.

Максимальная частота, которая может быть обработана счетчиком микроконтроллера ATmega16, не может превышать тактовую частоту, деленную на 2.5. Обозначим максимальную частоту – Fmax. Тактовая частота для нашего микроконтроллера – 8 МГц, следовательно напрямую мы можем измерять сигналы с частотой до 3.2 МГц. Для измерения частоты выше этого уровня мы используем 4-битный счетчик в качестве делителя входной частоты. Теперь мы можем измерять частоты в 16 раз превышающие Fmax, но здесь накладывается ограничение со стороны счетчика 74191 и фактическая максимальная измеряемая частота не превышает 40 МГц.

Алгоритм, который был разработан, проводит измерение оригинальной (входной) частоты (обозначим Fo) и частоты получаемой с делителя (обозначим Fd). Пока соблюдается условие, что частота меньше Fmax выполняется условие:

Fo = 16 × Fd;

Но по мере приближении Fo к Fmax, все больше импульсов должны быть обработаны и выражение выше примет вид:

Частотомер-тестер кварцев на atmega8

О приборе

Частотомер – полезный прибор в лаборатории радиолюбителя (особенно, при отсутствии осциллографа). Кроме частотомера лично мне часто недоставало тестера кварцевых резонаторов – слишком много стало приходить брака из Китая. Не раз случалось такое, что собираешь устройство, программируешь микроконтроллер, записываешь фьюзы, чтобы он тактировался от внешнего кварца и всё – после записи фьюзов программатор перестаёт видеть МК. Причина – “битый” кварц, реже – “глючный” микроконтроллер (или заботливо перемаркированый китайцами с добавлением, например, буквы “А” на конце). И таких неисправных кварцев мне попадалось до 5% из партии. Кстати, достаточно известный китайский набор частотомера с тестером кварцев на PIC-микроконтроллере и светодиодном дисплее с Алиэкспресса мне категорически не понравился, т.к. часто вместо частоты показывал то ли погоду в Зимбабве, то ли частоты “неинтересных” гармоник (ну или это мне не повезло).

Есть достаточно старый проект частотомера на ATMEGA8 и символьном дисплее 16×2. Предел измерения – до 40..50МГц с погрешностью менее 1%. Такой точности обычно более, чем достаточно. Помимо частоты умеет измерять период и скважность импульсов. Теоретически, если заменить микроконтроллер на ATMEGA48/88, то можно поставить кварц на 20 МГц и тогда максимальная измеряемая частота может быть увеличена до

80 МГц (естественно, для этого придётся пересобрать прошивку).

Прибор имеет 9 режимов измерения:

  1. Измерение частоты с предделителем на 16, время измерения – 0.25 сек, результат в Гц.
  2. Измерение частоты без предделителя, время измерения – 0.25 сек, результат в Гц.
  3. Измерение периода следования импульсов и вычисление частоты на его основе, результат в 0.01 Гц.
  4. Изменение циклов в минуту (без предделителя), вычисляемых по измеренному периоду, результат в rpm.
  5. Измерение длительности полного цикла, результат в микросекундах.
  6. Измерение длительности высокого полупериода, результат в микросекундах.
  7. Измерение длительности низкого полупериода, результат в микросекундах .
  8. Длительность высокого полупериода в процентах.
  9. Длительность низкого полупериода в процентах.

Схема

Исходная схема прибора была доработана следующим образом (схема кликабельна):

  1. Добавлен альтернативный входной формирователь (блок Analog-1), схема найдена на просторах интернета (к сожалению, не смог определить первоисточник). Имеет вход для проверки кварцевых резонаторов (работает с кварцами от 1МГц до 40МГц). Исходный входной формирователь тоже сохранён (блок Analog-2) и разведён на печатной плате, но распаять можно только один из этих формирователей.
  2. Переменный резистор выбора режимов заменён на более долговечный энкодер
  3. Питается прибор от USB. На вход добавлены LC-фильтр помех и предохранитель
  4. RS232 и преобразователь MAX232 из схемы убраны, вместо них добавлен разъём для подключения преобразователя USB-UART для связи с ПК (если захочется управлять прибором с ПК)
  5. Вольтметр 0..5В из исходной схемы также убран, т.к., учитывая обилие дешёвых китайских мультиметров, смысла в нём не видится никакого.

Аналоговый входной сигнал поступает на усилитель, а затем на формирователь на основе триггер Шмитта 74HCT132. Далее, этот сигнал подаётся на вход микроконтроллера непосредственно, либо через делитель на 16, выполненный на 74HCT93. Делитель этот управляется сигналом от пина PC5: высокий уровень на пине отключает предделитель, низкий уровень, соответственно, включает деление на 16.

Микроконтроллер подключён по типовой схеме и тактируется от кварцевого резонатора 16 МГц. Кстати, о кварце – его качество (точность, термостабильность) целиком определяет точность прибора. Т.е., возникает проблема добычи эталонного кварца (ну или точное измерение его частоты с последующим введением поправки в вычислении). Но об этом чуть позже..

Я не стал разводить на плате разъём ISP-программатора, т.к. микросхема всё равно стоит на панели, а для обновления прошивки можно использовать загрузчик. Неиспользуемые выводы микроконтроллера разведены так, что в будущем к ним можно было что-нибудь подключить. Например, джампер для активации того же bootloader-а. Или термодатчик, чтобы в будущем учитывать температурное изменение частоты кварцевого резонатора. Или ещё что-нибудь. Все выводы от miniUSB-разъёма также разведены на плате. Это сделано для того, чтобы можно было легко установить USB-UART-преобразователь внутри прибора (если он будет нужен).

Сборка

Сборка прибора не должна вызвать особых проблем и при отсутствии ошибок монтажа и исправных деталях частотомер должен заработать сразу. В противном случае, надо покаскадно проверить прохождение сигнала от входа до микроконтроллера. Проще всего сделать это осциллографом.

Читайте также:  Вертикальная многодиапазонная антенна

На плате надо распаять только один из формирователей Analog-1 или Analog-2. Вообще, в использовании оригинального формирователя Analog-2 сейчас нет никакого смысла (ну разве что отсутствие необходимых для Analog-1 деталей и потребности проверять кварцы).

К сожалению, на изготовленных платах обнаружилось пара ошибок. Первая – в формирователе Analog-1 – вывод резистора R15 (470 Ом) висит в воздухе. Исправить можно просверлив рядом отверстие и прокинув небольшую перемычку как показано на фото. Как вариант, можно кинуть провод через одно из свободных отверстий чтобы не сверлить новые.


Вторая ошибка – пропущено соединение между выводом 5 микросхем 74hct132 и выводом 2 микросхемы 74hct93, для исправления надо кинуть проводок как на фото:

Использование прибора

Для измерения достаточно только подать сигнал на вход (аналоговый, либо цифровой, либо установить кварц) и выбрать энкодером режим. В верхней строке экрана отображается результат измерения, в нижней – название режима.

РежимИзмеряемая величинаМетодФормат отображения
1.Frequency (16)ЧастотаПодсчёт с предделителем на 16F=99,999,999 Hz
2.FrequencyЧастотаПодсчёт без предделителемf=9,999,999 Hz
3.Time HL, fЧастотаДлительность периодаv= 9,999.999 Hz
4.Time HL, rpmИзменений в минутуДлительность периодаu= 9,999,999 rpm
5.Time HL, usДлительность периода следованияДлительность периодаt=99,999,999 us
6.Time HДлительность “высокой” части периодаДлительность периодаh=99,999,999 us
7.Time LДлительность “низкой” части периодаДлительность периодаl=99,999,999 us
8.PW ratio HДоля “высокой” части периодаДлительность периодаP=100.0%
9.PW ratio LДоля “низкой” части периодаДлительность периодаp=100,0%

В режиме тестера кварцев прибор успешно работал с разными резонаторами от 4 МГц до 27МГц. С часовыми кварцами генератор, увы, совсем не запускается, для них придётся делать отдельную приблуду.

Корпус

Корпус для частотомера был распечатан на 3D-принтере, для чего спроектирована 3D-моделька. Верхняя часть состоит из двух деталей – основы и части для дисплея.



Отверстия на лицевой панели вырезаны не да конца – умышленно оставлен один слой пластика (0.35мм). Это сделано для того, чтобы заливка лицевой поверхности была равномерной, без обводных контуров вокруг отверстий. Пластик над отверстиями легко убирается при помощи ножа и напильника. Корпус я печатал из ABS, части склеивал при помощи ацетона с растворённым пластиком. Сам корпус также был обработан ацетоном (прошёлся пару раз кисточкой).

На фрагменте под дисплей также намечено прямоугольное отверстие для 3-пинового разъёма цифрового входа. Да, вообще, этот разъём должен быть 2-пиновый, но тогда было бы не понятно, где у него “земля”, а где вход. Чтобы не делать пояснительных надписей на лицевой панели, добавлен третий контакт. Так получаятся, что то вход по центру, земля – по краям, запомнить просто. Либо, как вариант, сюда можно вывести напряжение +5В. Например, для приставки-измерятора частоты часовых кварцев.

Архив с 3D-моделями можно скачать в конце статьи. Для нижней части корпуса есть дополнительный вариант с тонкими термостенками по периметру, чтобы основная модель медленнее остывала, для предотвращения загибания пластика по углам при печати ABS-ом. В архиве так же есть файл модель стойки для крепления дисплея к печатнйо плате.

Собранное устройство в корпусе выглядит так (вставлен кварц на 20 МГц):

Точность прибора

Основным фактором, влияющим на точность частотомера является точность используемого кварцевого резонатора. Т.е., имеем проблему добывания где-то эталонного кварца. При производстве кварцы разделяются на группы по отклонению их частоты от заявленной. Разумеется, стоимость у резонаторов с минимальным отклонением будет намного выше, чем у остальных. Все точные кварцы будут использованы в критичном оборудовании, менее точные – в менее критичном оборудовании, а весь оставшийся “мусор” с максимальным отклонением частоты будет распродан где-нибудь на Алиэкспрессе по 50 рублей за ведро.

Кроме точности частоты, не меньшее значение имеет её термостабильность. Если температура в помещении в течение года может изменятсья в диапазоне около 15°С, то и частота резонатора может значительно “уплывать”.

Для достижения максимально высокой точности измерения потребуется либо точный кварц на 16 МГц, либо другой поверенный частотомер, которым можно будет измерить реальную частоту используемого кварца и сделать на это поправку (в коде прошивки, либо вручную пересчитывать результат измерений).

Но как быть, если нет ни первого, ни второго? Тут мне видится такое решение: вместо эталонного источника частоты можно использовать системные часы компьютера. Если часы синхронизируются по протоколу NTP, а в версии 4 этот протокол способен обеспечить точность до 10 мс (1/100 с) при работе через Интернет (и до 0.2 мс и лучше внутри локальных сетей). Имея такой точный источник времени, можно написать прошивку, реализующие часы для частотомера. Если запустить такие часы на длительное время, то погрешность их хода будет накапливаться, и рано или поздно достигнет легко измеряемой величины. Тогда не составит труда вычислить погрешность кварца по погрешности хода часов, что позволит либо попробовать отобрать кварц с частотой, максимальной близкой к 16МГц, либо скомпилировать прошивку для измеренной частоты кварца. Подробнее об этом тут

Излишки печатных плат есть в магазине сайта.

Частотомер до 16 МГц на микроконтроллере

Последнее время мне очень часто требуется измерять частоту, уж очень много электронных проектов я делаю и поэтому появилось нужда в измерительном приборе — частотомере. Покупать данный прибор — я ещё школьник в 8 классе учусь а такая техника очень дорогая для меня. Сильно большие частоты мне измерять пока нет необходимости, хотя в скором времени возможно будет нужно. И поэтому я решил сделать свой частотомер своими руками! Стремясь к минимализму за основу взял AVR микроконтроллер ATtiny2313 и ЖКИ 16*1. Набросал проект в Proteus, написал прошивку и нарисовал принципиальную схему:

Собственно ничего сложного, всё очень просто. Собрал всё на бредборде, кто не знает это — макетная плата с механическими контактами. Проверил, работает! Вот фото отчёт:

Ну теперь надо реализовать прибор, сделать печатную плату и поместить в корпус.

И так, теперь когда все детальки собраны, пора делать печатную плату. Её я сделал универсальной, добавил контактные площадки, мало-ли захочется что нибудь добавить. Чертил печатную плату я программе Sprint Layout 4.0, найти чертёж можно в файлах к статье. Плату я делал лазерно-утюжным методом, вот что получилось:

Самое главное это хорошо и качественно припаять микроконтроллер, ведь он в SOIC корпусе.

Не проблема, и мельче паяли! Главное не переборщить припоя и не жалеть канифоли.

Запаиваем остальные детальки, вот что получилось:

Кстати, от лишнего канифоля на плате можно избавиться с помощью технического спирта. Так намного лучше:

После сборки прошиваем микроконтроллер, я прошивал с помощью программы SinaProg программатором USBtiny. Вот фьюз биты:

Подключить программатор к микроконтроллеру можно проводками, подключить их к разъёму для ЖКИ:

А reset припаять:

Распиновку подключения программатора к микроконтроллера не привожу, я думаю вы её знаете. После прошивки и установки фьюз-битов, устанавливаем ЖКИ и подаём питание на устройство:

Заработало, отлично! Теперь устанавливаем устройство в корпус:

Как вы видите я свой частотомер сделал на базе своего велокомпьютера, дело в том что я себе собрал более навороченный велокомпьютер (с большим дисплеем на Atmega32, скоро про него напишу статью) а из этого и решил сделать частотомер, лишь плату переделал. И конечно видео работы устройства:

На видео видно что в качестве генератора я использую компьютер и программу NCH Tone Generator.

Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот

IC1
МК AVR 8-битATtiny2313-20PU1
C1, C2
Конденсатор22 пФ2
С3
Конденсатор0.1 мкФ1
R1
Резистор1 кОм1
R2
Резистор4.7 кОм1
R3
Резистор20 Ом1
LCD
ЖК индикатор 16*1WH1601A1
С совместимым HD44780 контроллеромZ1
Кварц16 МГц1
Вход
РазьёмPBS-401
S1
Выключатель1
Добавить все

Рейтинг
( Пока оценок нет )
Загрузка ...
Adblock
detector