Простая цифровая шкала-частотомер на микроконтроллере PIC16F84 (PIC16F628) с индикацией на семисегментном светодиодном индикаторе типа АЛС318 или аналогичном. Позволяет мерить до 30 МГц с разрешением 10 Гц. Есть возможность прибавлять или отнимать значение ПЧ.
Технические характеристики:
- Максимальная измеряемая частота .………………30 мгц,
- Максимальное разрешение измеряемой частоты…10 Гц,
- Чувствительность по входу…………………………250 мВ
- Напряжение питания ……………………………… 8…12 В,
- Потребляемый ток………………………………… 35 мА.
Принципиальная схема частотомера — цифровой шкалы приведена ниже. Она состоит из:
- формирователя входного сигнала, выполненного на транзисторе VT1. Сигнал измеряемой частоты, поданный на вход, ограничивается, усиливается и подается на вход PIC процессора для измерения;
- центрального процессора DD2, выполняющего функции измерения, расчета, преобразования, управления динамической индикацией и динамического опроса входных сигналов. Кнопки SB1 и SB2 используются для выбора режима цифровой шкалы. Тактовая частота процессора определяется кварцевым резонатором ZQ1 и может изменяться в небольших пределах конденсаторами C1 и C2.
- светодиодного индикатора HG1 для отображения частоты.
- микросхемы DD1 – дешифратора позиции отображаемой цифры.
Работа устройства в режиме частотомера
При включении питания, устройство автоматически переходит в тот режим, в котором оно работало ранее (до последнего выключения питания). Если это был режим частотомера, то в крайнем левом разряде индикатора высветится признак режима частотомера «F.». В младшем разряде индикатора высветится «0», а остальные разряды будут погашены. Частотомер автоматически перейдет в режим измерения частоты с временем измерения 1 сек. (по умолчанию) и после этого, будет находиться в режиме ожидания.
При подаче на вход частотомера сигнала с измеряемой частотой, признак режима частотомера «F.» гасится (при этом 8-й разряд включается в работу по отображению значения измеряемой частоты), и индикатор отобразит значение измеряемой частоты в килогерцах (относительно десятичной точки). При этом будет отображаться только полезная информация, а разряды, которые ее не содержат, будут погашены.
Если на момент включения питания, на входе частотомера присутствует измеряемый сигнал, то, после включения питания, признак работы частотомера «F.», высветится в течение 1-й секунды, а затем погаснет.
Для того чтобы перейти на время измерения 0,1 сек. или 10 сек., необходимо нажать либо кнопку № 1, либо одновременно нажать кнопку № 1 и кнопку № 2 соответственно (см. раскладку клавиатуры для режима частотомера), затем дождаться изменения положения десятичной точки, после его отпустить кнопку (кнопки).
Если после этого необходимо вернуться к времени измерения 1 сек., то необходимо нажать кнопку № 2 и дождаться изменения положения десятичной точки, после чего отпустить кнопку.
Для любого времени измерения десятичная точка отмечает килогерцы.
Если перед выключением питания происходила работа в режиме частотомера, то при следующем включении питания установится этот же режим, а время измерения установится по умолчанию (1 сек.).
Раскладка клавиатуры режима частотомера
Кнопки | Время. измерения | Пояснения |
SB1 | 0,1 сек. | Переход на время измерения 0,1 сек. |
SB2 | 1 сек. | Переход на время измерения 1 сек. |
SB1 + SB2 | 10 сек. | Переход на время измерения 10 сек. (кнопки нажимаются одновременно) |
Работа устройства в режиме цифровой шкалы
Если перед выключением питания происходила работа в режиме цифровой шкалы, то при следующем включении питания будет установлен именно этот режим, а внутри режима цифровой шкалы будет установлен именно тот подрежим («минус ПЧ» или «плюс ПЧ»), в котором происходила работа до последнего выключения питания.
Признаки подрежимов цифровой шкалы («L.» или «H.» соответственно) будут постоянно высвечиваться в левом (старшем) разряде индикатора.
При отсутствии сигнала на входе цифровой шкалы (частотомер и цифровая шкала имеют общий вход), индикатор будет показывать значение записанной в энергонезависимую память PIC контроллера промежуточной частоты, а при его наличии — результат вычитания или сложения частоты сигнала, присутствующего на входе цифровой шкалы, и значения промежуточной частоты, записанной в энергонезависимую память PIC контроллера.
Так же, как и в режиме частотомера, в этих подрежимах режима цифровой шкалы, разряды индикатора, не содержащие полезной информации, будут погашены.
В режиме цифровой шкалы, время измерения (подсчета импульсов) составляет 0,1 сек. (погрешность измерения 10 Гц.) и изменить его нельзя.
При использовании времени измерения 0,1 сек. (это относится также и к работе в режиме частотомера с временем измерения 0,1 сек.), для облегчения визуального восприятия показаний прибора, негативный эффект мерцаний показаний индикатора ослабляется.
Режим цифровой шкалы имеет 4 подрежима (см. раскладку клавиатуры режима цифровой шкалы). При нажатии на кнопку № 1 происходит переход в подрежим «минус ПЧ». При этом, в левом разряде индикатора, высветится признак подрежима «L.». При нажатии на кнопку № 2 происходит переход в подрежим «плюс ПЧ». При этом, в левом разряде индикатора, высветится признак подрежима «H.».
В процессе «прошивки» PIC контроллера, в его энергонезависимую память записывается значение промежуточной частоты = 5,5 мГц., но впоследствии, пользователь может самостоятельно записать в нее любое значение частоты (в пределах рабочего диапазона частот) и использовать ее в качестве промежуточной. Для выполнения этой процедуры необходимо подать на вход цифровой шкалы внешний сигнал (например, от генератора стандартных сигналов) с частотой, которая далее будет использоваться в качестве промежуточной. Проконтролировать значение этой частоты можно, перейдя в режим частотомера (переходы между режимами будут описаны ниже).
Убедившись в том, что на вход устройства поступает сигнал с требуемой частотой, необходимо перейти в режим цифровой шкалы, затем одновременно нажать кнопку № 1 и кнопку № 2 и держать их в нажатом состоянии до тех пор, пока все разряды индикатора не окажутся погашенными. После этого кнопки нужно отпустить. В индикаторе высветится значение будущей промежуточной частоты, заложенное в оперативную память при помощи одномоментной записи. По этой причине, значение будущей промежуточной частоты в разрядах индикатора фиксируется (не меняется), и можно не спеша сравнить его с тем значением частоты, которое требуется записать в энергонезависимую память в качестве промежуточной.
Примечание: так как процедура записи значения промежуточной частоты, в энергонезависимую память PIC контроллера, будет использоваться достаточно редко, автор не стал перегружать программу командами процедуры гашения незначащих нулей в разрядах оперативной памяти, и поэтому, при индикации содержимого оперативной памяти будут высвечиваться все разряды индикатора (незначащие нули не гасятся).
Если значение содержимого оперативной памяти (будущая ПЧ) Вас устраивает, то можно записать его в энергонезависимую память PIC контроллера. Для этого еще раз нажимаются обе кнопки. Их необходимо держать в нажатом состоянии до появления признака окончания записи в энергонезависимую память («F» в младшем разряде индикатора), а затем отпустить.
В зависимости от того, какая кнопка была отпущена последней, в старшем разряде индикатора высветится признак подрежима цифровой шкалы «L.» или «H.», незначащие разряды будут погашены, а в остальных разрядах будет индицироваться результат вычитания или сложения установленной промежуточной частоты и измеряемой частоты. Если установившийся подрежим не тот, который нужен, ничто не мешает переключиться на другой подрежим.
Остается только подключить вход цифровой шкалы к выходу гетеродина или синтезатора частот.
Если значение будущей промежуточной частоты Вас не устраивает (неточное значение), то необходимо завершить процедуру записи этого значения промежуточной частоты в энергонезависимую память (иначе нельзя будет переключиться в режим частотомера).
После появления признаков подрежимов «L.» или «H.», необходимо перейти в режим частотомера, скорректировать в этом режиме значение будущей промежуточной частоты, вернуться в режим цифровой шкалы и повторить процедуру записи значения промежуточной частоты в энергонезависимую память PIC контроллера (см. выше). Количество такого рода манипуляций не ограничено.
Раскладка клавиатуры режима цифровой шкалы
Кнопки | Действие | Пояснение |
SB1 | – ПЧ | Промежуточная частота вычитается из измеряемой частоты |
SB2 | + ПЧ | Промежуточная частота прибавляется к из измеряемой частоте |
SB1 + SB2 | Установка ПЧ | Запись в оперативную память значения измеряемой частоты для дальнейшей записи и использования в качестве значения ПЧ |
SB1 + SB2 повторно | Запись ПЧ | Копирование значения измеряемой частоты из оперативной памяти в энергонезависимую для использования в качестве промежуточной |
Переключение режимов «частотомер» — «цифровая шкала»
Режимы работы переключаются кнопкой № 1.
При смене режима работы, меняется раскладка клавиатуры (см. выше).
Если кнопка № 1 находится в нажатом состоянии меньше определенного времени, то переключения в другой режим не происходит и кнопка № 1 может либо устанавливать время измерения 0,1 сек. (в режиме частотомера), либо включать подрежим «минус ПЧ» (в режиме цифровой шкалы).
Если этот порог превышен, происходит переключение в другой режим. Величина этого порога — около 4 сек., и этот интервал времени отсчитывается с момента окончания цикла счета, приходящегося на момент нажатия кнопки № 1. Следовательно, пока этот цикл счета не закончится, отсчет 4-х секундного интервала времени производиться не будет. Таким образом, быстрее всего переключение режимов будет производиться при установке времени измерения 0,1 сек.
Так как в режиме цифровой шкалы используется только это время измерения, то переход из режима цифровой шкалы в режим частотомера или переход из режима частотомера (установлено время измерения 0,1 сек.) в режим цифровой шкалы займет не более 4,1 сек..
При установке других пределов измерения, время перехода из режима частотомера к режиму цифровой шкалы займет:
- если установлено время измерения 1 сек. — не более 5 сек.,
- если установлено время измерения 10 сек. — не более 14 сек.
Если время измерения составляет 10 сек., то в худшем случае придется подождать 14 сек., а в лучшем случае — 4 сек. Это будет зависеть от того, на какой момент времени, внутри текущего цикла измерения, приходится момент замыкания контактов кнопки № 1.
На практике процесс переключения режимов работы выглядит так:
Если необходимо перейти в другой режим работы, кнопка № 1 нажимается и удерживается до тех пор, пока не произойдет смена режима работы, после чего отпускается.
Определение факта переключения производится по признакам режимов.
Если после включения питания установился ранее запрограммированный режим частотомера и первой операцией, после включения питания, является переход в режим цифровой шкалы, то переход осуществлен не будет до тех пор, пока не будет произведена одна (любая) операция с клавиатурой (кнопками). Это означает то, что, в этом случае, необходимо кратковременно нажать и отжать любую из кнопок и только после этого переходить в режим цифровой шкалы. Если этого не знать, то переход произойдет только после второго нажатия кнопки № 1, а в течение первого нажатия просто ничего происходить не будет и можно напрасно прождать. После перехода в режим цифровой шкалы по двойному нажатию, дальнейшие переходы между режимами, вплоть до выключения питания, происходят в одно нажатие. Если после включения питания установился ранее запрограммированный режим цифровой шкалы, все переходы между режимами (и во всех случаях) происходят в одно нажатие. Таким образом, переход между режимами по двойному нажатию происходит только в единственном случае (см. выше) и не более чем 1 раз за одно включение питания.
Схема входного формирователя частотомера — цифровой шкалы приведена на рисунке:
Дополнительные замечания по схеме
Снизить энергопотребление можно, увеличив номиналы резисторов, соединяющих выводы порта В с индикатором.
Что касается индикатора, то указанный в схеме А. Денисова индикатор АЛС318 применять вряд ли стоит: размер цифр маленький и вообще ему место в музее.
Можно использовать любой 9-разрядный светодиодный индикатор с общим катодом.
Конструкция выполнена на односторонней печатной плате размерами 57 х 67 мм. Эскиз печатной платы приведен ниже, однако предельная простота конструкции позволяет легко повторить ее даже на макетнице.
Правильно собранный частотомер — цифровая шкала с правильно запрограммированным PIC процессором почти не требует настройки. Минимальная настройка заключается в подаче на вход частотомера эталонной частоты и подстройки конденсатора C2 до получения правильных показаний на индикаторе. При этом возможно потребуется корректировка емкости конденсатора C1.
Прошивки для микроконтроллера в каталоге PIC16F84A архива
- в HEX формате: 16F84.HEX, 16F84_1.HEX
- в формате программы ProgCode: 16F84.sfr, 16F84_1.sfr
Для микроконтроллера в каталоге PIC16F628A архива
- в HEX формате: 16F628.HEX, 16F628_1.HEX
- в формате программы ProgCode: 16F628.sfr, 16F628_1.sfr
Это варианты «на все случаи жизни».
При отсутствии сигнала, должен индицироваться 0.
Пример: Вы собрали ЧМ/ЦШ с прошивкой 16F84.hex, и при отсутствии сигнала, индицируется число 255, а не 0.
Действие: меняете прошивку 16F84.hex на 16F84.hex.
Еще один пример: Вы собрали ЧМ/ЦШ с прошивкой 16F84_1.hex, и при отсутствии сигнала, индицируется число 1, а не 0.
Действие: меняете прошивку 16F84_1.hex на 16F84.hex.
То же самое относится и к программам 16F628.hex и 16F628_1.hex.
Также имеется прошивка от А. Денисова (RA3RBE), г.Тамбов. Но она проще, и в ней нет некоторых функций. Предназначена для микроконтроллера PIC16А84, имеется исходный код на ассемблере. При использовании этой прошивки изменения в схему вносить не нужно.
Собрал схему, запрограммировал контроллер. включил.Переключение режимов (время измерения ,режим шкалы) работают нормально.При выполнении измерений обнаружилось: 1.На частоте выше 17 -17.5 Мгч перестаёт работать. Сигнал от формирователя импульсов на вход
контроллера приходит нормальный и по форме и по амплитуде.Попытка
заменить контроллер (3шт) дали тот же Эффект. МОЖЕТ КТО ТО С ЭТИМ
СТАЛКИВАЛСЯ?? 2. Очень низкое входное сопротивление — сильно подсаживает источник сигнала. 3. При измерении частоты ниже 100Гц
из-за роста сопротивления входного конденсатора (100нф) работап не устойчиво- заменил на 4.7 мкф.
Наверное входной конденсатор С1 надо пленочный ставить, который лучше работает на высокой частоте.
Собрал такую штуку. До 30 мгц точно меряет. Индикатор не менял. алс318 прикольный.
А не будете модернизировать с тем же функционалом но на lcd 1602
Да я ж не программист…