Частотомер - цифровая шкала с динамической индикацией на микроконтроллере PIC16F628A ( PIC16F84A )

Рейтинг:  5 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна
 

Для простейшего варианта устройства с верхней границей рабочих частот в 30 Мгц., принципиальная схема ЧМ/ЦШ состоит из базового модуля, с подключенным к его счетному входу входным формирователем.


Схема частотомера - цифровой шкалы приведена на рисунке:

Работа устройства в режиме частотомера
При включении питания, устройство автоматически переходит в тот режим, в котором оно работало ранее (до последнего выключения питания).
Если это был режим частотомера, то в крайнем левом разряде индикатора высветится признак режима частотомера "F.".
В младшем разряде индикатора высветится "0", а остальные разряды будут погашены.
Частотомер автоматически перейдет в режим измерения частоты с временем измерения
1 сек. (по умолчанию) и после этого, будет находиться в режиме ожидания.
При подаче на вход частотомера сигнала с измеряемой частотой, признак режима частотомера "F." гасится (при этом 8-й разряд включается в работу по отображению значения измеряемой частоты), и индикатор отобразит значение измеряемой частоты в килогерцах (относительно десятичной точки).
При этом будет отображаться только полезная информация, а разряды, которые ее не содержат, будут погашены.
Если на момент включения питания, на входе частотомера присутствует измеряемый сигнал, то, после включения питания, признак работы частотомера "F.", высветится в течение 1-й секунды, а затем погаснет.
Для того чтобы перейти на время измерения 0,1 сек. или 10 сек., необходимо нажать либо кнопку № 1, либо одновременно нажать кнопку № 1 и кнопку № 2 соответственно (см. раскладку клавиатуры для режима частотомера), затем дождаться изменения положения десятичной точки, после его отпустить кнопку (кнопки).
Если после этого необходимо вернуться к времени измерения 1 сек., то необходимо нажать кнопку № 2 и дождаться изменения положения десятичной точки, после чего отпустить кнопку.
Для любого времени измерения десятичная точка отмечает килогерцы.
Если перед выключением питания происходила работа в режиме частотомера, то при следующем включении питания установится этот же режим, а время измерения установится по умолчанию (1 сек.).
Раскладка клавиатуры режима частотомера

Работа устройства в режиме цифровой шкалы
Если перед выключением питания происходила работа в режиме цифровой шкалы, то при следующем включении питания будет установлен именно этот режим, а внутри режима цифровой шкалы будет установлен именно тот подрежим ("минус ПЧ" или "плюс ПЧ"), в котором происходила работа до последнего выключения питания.
Признаки подрежимов цифровой шкалы ("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 контроллера (см. выше).
Количество такого рода манипуляций не ограничено.
Раскладка клавиатуры режима цифровой шкалы

Переключение режимов "частотомер" - "цифровая шкала"

Режимы работы переключаются кнопкой № 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 раз за одно включение питания.

Схема входного формирователя частотомера - цифровой шкалы приведена на рисунке:

Дополнительные замечания по схеме
Снизить энергопотребление можно, увеличив номиналы резисторов, соединяющих выводы порта В с индикатором.
В моем частотомере они имеют номинал 1 ком, и яркость свечения индикаторов меня устраивает (это, конечно, мое субъективное мнение, у кого-то оно может быть другим).
Что касается индикатора, то указанный в схеме А.Денисова индикатор АЛС318 применять вряд ли стоит: размер цифр маленький и вообще ему место в музее.
Я использовал 9-разрядный светодиодный индикатор от телефонного аппарата с АОН, с общим катодом и красным цветом свечения, что и другим советую.
В моем частотомере, кроме питания от сети, имеется также и батарейное питание (аккумуляторы НМГ емкостью 1А/ч).
Печатная плата устройства приведена на рисунке:

Прошивки для микроконтроллера PIC16F84A
в HEX формате:   kea3b_hex_cod.rar
в формате программы ProgCode:  kea3b.sfr
в HEX формате:  kea3b_1_hex_cod.rar
в формате программы ProgCode:  kea3b_1.sfr
В одном архиве PIC16F84A скачать

Прошивки для микроконтроллера PIC16F628A
в HEX формате:  kea628a.rar
в формате программы ProgCode:  kea628a.sfr
в HEX формате:  kea628a1.rar
в формате программы ProgCode:  kea628a1.sfr
В одном архиве PIC16F628A скачать
Это варианты "на все случаи жизни".

При отсутствии сигнала, должен индицироваться 0.
Пример: Вы собрали ЧМ/ЦШ с "прошивкой" Kea3b.hex, и при отсутствии сигнала, индицируется число 255, а не 0.
Действие:  меняете "прошивку" Kea3b.hex на Kea3b_1.hex.
Еще один пример: Вы собрали ЧМ/ЦШ с "прошивкой" Kea3b_1.hex, и при отсутствии сигнала, индицируется число 1, а не 0.
Действие:  меняете "прошивку" Kea3b_1.hex на Kea3b.hex.
То же самое относится и к программам Kea628a.hex и Kea628a1.hex.

Автор конструкции:   Корабельников Евгений Александрович
город Липецк

Связаться с автором можно по email (указан на схеме)
Сайт автора:  http://ikarab.narod.ru   Самоучитель по программированию PIC микроконтроллеров для начинающих

Задать автору вопросы по конструкции так-же возможно в форуме http://pic.borda.ru  в разделе "Наши разработки"

Оставлять комментарии могут только зарегистрированные пользователи