Разрабатывая этот прибор, автор поставил перед собой задачу создать частотомер на доступной, но современной элементной базе, легко повторяемый радиолюбителями средней квалификации, с достаточным для их нужд частотным диапазоном без переключения пределов измерения, с большим входным сопротивлением и малой емкостью. Вот что получилось...
Принцип работы частотомера хорошо известен. Подсчитав число периодов входного сигнала за известное время, он приводит его к секундному интервалу и показывает на индикаторе значение частоты в герцах или кратных им единицам.
Для надежной работы на входе счетчика должен быть установлен формирователь, превращающий исходный сигнал любой формы и амплитуды в последовательность нормированных по амплитуде импульсов с крутыми перепадами. Практически все остальные узлы, необходимые для измерения частоты и вывода результата на индикатор, имеются в микроконтроллере, что делает этот прибор весьма удобным для реализации на нем частотомера.
Трудность состоит лишь в сравнительной низкочастотности счетчика, встроенного в микроконтроллер. Это вынуждает добавлять между выходом формирователя и входом микроконтроллера предварительный делитель частоты импульсов, понижающий ее до приемлемого значения. Нужно сказать, что в микроконтроллерах семейства PIC имеется встроенный достаточно высокочастотный предварительный делитель частоты, который с успехом используют в частотомерах. Микроконтроллер ATmega8515 семейства AVR. на котором построен предлагаемый частотомер, при многих других достоинствах не имеет такого делителя. Поэтому пришлось использовать внешний на микросхеме-счетчике.
Основные технические характеристики
Диапазон измеряемой частоты, Гц...............10..32-10*
Форма входного сигнала ...............произвольная
Чувствительность, мВ ...........250
Максимальная амплитуда
входного сигнала, В ...........20
Дискретность отсчета частоты, Гц ...............10
Время измерения, мс ...........100
Период повторения измерений, мс.....................200
Напряжение питания, В............5
Схема прибора приведена на рис. 1. Входной формирователь построен на транзисторах VT1—VT3 и логическом инверторе DD2.1 Он аналогичен описанному в статье Н. Хлюпина "Частотомер — цифровая шкала с цифровым индикатором" ("Радио", 2004, № 7, с. 64. 65). Там же изложены принцип работы формирователя и особенности его налаживания.
Сформированные импульсы поступают на элемент И DD3.1, который пропускает их на вход предварительного делителя частоты (четырехразрядного двоичного счетчика DD4) только при высоком уровне на выходе PD0 микроконтроллера DD1. Частота импульсов на выходе подключенного к счетчику дешифратора на элементах DD3.2—DD3.4 и на входе РВ1 микроконтроллера в 16 раз меньше исходной.
В начале цикла измерения уровень на выходе PD0 микроконтроллера низкий и элемент DD3-1 закрыт. Кратковременным сигналом высокого уровня, сформированным на выходе PD1 микроконтроллера, программа устанавливает счетчик DD4 в нулевое состояние. Затем она на 100 мс открывает элемент DD3.1. Импульсы, поступающие на вход РВ1 микроконтроллера, подсчитывает встроенный в него таймер-счетчик Т1.
По истечении счетного интервала программа запрещает дальнейшее прохождение импульсов на вход счетчика DD4 и считывает состояние его выходов. Далее она обрабатывает результаты работы предварительного и встроенного счетчиков, вычисляет значение частоты и выводит его на двухстрочный символьный ЖКИ. Описанный измерительный цикл периодически повторяется.
Подстроечным резистором R22 устанавливают оптимальную контрастность индикатора. Транзистор VT4 по командам микроконтроллера замыкает и размыкает цепь светодиодной подсветки табло индикатора.
После включения частотомера на его индикаторе приблизительно на 2 с появляется надпись, показанная на рис. 2,а, затем прибор переходит в режим непрерывного измерения частоты, отображая ее текущее значение ХХХХХХХО Гц, как показано на рис. 2,6. При длительности измерительного интервала 100 мс единицы герц фактически не измеряются, но для удобства отсчета в соответствующем разряде индикатора всегда выведен ноль.В этом режиме действует только одна из четырех подключенных к микроконтроллеру кнопок — SB1 "Память". При нажатии на нее микроконтроллер запоминает измеренное в этот момент значение частоты YYYYYYYO Гц и в дальнейшем выводит его на индикатор вместе с измеряемым в следующих циклах текущим значением (рис. 2,в). Последующие нажатия на кнопку SB1 обновляют содержимое памяти.Когда режим "Память" включен, горит светодиод HL3 и действуют кнопки SB2—SB4. После нажатия на кнопку SB2 "Частота +" индикатор показывает сумму текущего измеренного и хранящегося в памяти значений ZZZZZZZ0 Гц (рис. 2,г). Об этом сигнализирует светодиод HL2.Кнопка SB3 "Частота -" действует аналогично, но после ее нажатия на индикаторе отображается разность указанных выше значений (рис. 2,д)- Если текущее значение частоты меньше хранящегося в памяти, их разность будет выведена со знаком "минус". О включении этого режима сигнализирует светодиод НИ.Нажатием на кнопку SB4 "Уст. 0" стирают из памяти записанное ранее значение частоты (оно не сохраняется и при выключении питания) и возвращают частотомер в исходный режим непосредственного отображения измеренного значения.Светодиод HL4 сигнализирует лишь о включении питания прибора.Печатная плата частотомера (двусторонняя из фольгированного стеклотекстолита) изображена на рис. 3. На той ее стороне, где находится большинство печатных проводников, смонтированы резисторы и конденсаторы (типоразмера 1206) для поверхностного монтажа. Размещение остальных элементов прибора, установленных обычным образом на противоположной стороне платы, показано на рис. 4. Конденсатор С19 — малогабаритный подстроечнный. Его регулировкой добиваются точного соответствия тактовой частоты микроконтроллера номиналу, а следовательно, минимальной погрешности измерения частоты.
ЖКИ подключают к разъему ХРЗ 16-проводным плоским кабелем (шлейфом). Номера контактов разъема соответствуют номерам выводов индикатора.
При загрузке программы в микроконтроллер DD1 необходимо установить его конфигурационные ячейки в следующие состояния: CKSEL3 = 1, CKSEL2 = 1, CKSEL1 = 1, CKSEL0 = 1. Этим будет включен тактовый генератор микроконтроллера, работающий с внешним кварцевым резонатором частотой 8... 16 МГц. Состояние остальных ячеек конфигурации изменять не требуется. Если используемый микроконтроллер ранее был запрограммирован для работы в другом устройстве, рекомендуется восстановить его исходную (заводскую) конфигурацию и лишь затем внести указанные выше изменения.
Входной формирователь частотомера налаживают согласно методике, описанной в упомянутой ранее статье Н. Хлюпина. В отсутствие входного сигнала подстроечным резистором R13 устанавливают на коллекторе транзистора VT3 напряжение 2,65 В — порог переключения элемента DD2.1. Если при замкнутом входе частотомер все же показывает 10 Гц, нужно напряжение на коллекторе транзистора VT3 немного (приблизительно до 2,7 В) увеличить. Подстроечным резистором R 22 добиваются наилучшей контрастности индикатора. Далее подают на вход частотомера сигнал известной частоты (например, 1 МГц) от эталонного генератора и подстройкой конденсатора С19 устанавливают ее точное значение на индикаторе прибора.
Исходный код на asm и прошивка.
Источник: Журнал Радио 2006г. №9