Найти в Дзене
Будни инженера

Счетчики прямого счета

Ранее я рассказывал, как поделить частоту на 2. Однако во многих случаях требуется делить частоту на другие значения. В устройстве на микроконтроллере это можно сделать, например, программно. Однако если возможности программно управлять входной частотой нет, то придётся вспоминать старые добрые делители частоты, которые, кстати, можно использовать ещё и в качестве счётчиков. На рисунке показана схема делителя частоты на триггерах. Здесь выходы Q0…Q3 можно считать разрядами двоичного числа, где Q0 - младший разряд, а Q3 - старший разряд. Таким образом имеет 4-разрядное число, которое может хранить числа от 0 до 15, а частота будет делиться на 2, 4, 8 и 16. Допустим, что перед началом отсчёта все триггеры установлены в нулевое состояние (на всех выходах низкий уровень - 0). Поступающие на вход импульсы будут переключать триггеры согласно следующему алгоритму: Если частота сигнала на входе равна f, то на выходах делителя мы получим сигналы со следующими частотами: Q0 — f/2; Q1 — f/4; Q2 —

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

На рисунке показана схема делителя частоты на триггерах. Здесь выходы Q0…Q3 можно считать разрядами двоичного числа, где Q0 - младший разряд, а Q3 - старший разряд. Таким образом имеет 4-разрядное число, которое может хранить числа от 0 до 15, а частота будет делиться на 2, 4, 8 и 16.

Допустим, что перед началом отсчёта все триггеры установлены в нулевое состояние (на всех выходах низкий уровень - 0). Поступающие на вход импульсы будут переключать триггеры согласно следующему алгоритму:

Если частота сигнала на входе равна f, то на выходах делителя мы получим сигналы со следующими частотами: Q0 — f/2; Q1 — f/4; Q2 — f/8; Q3 — f/16.

Поэтому состояние выходов будет будет складываться в различные комбинации. Всего таких комбинаций может быть 16, что можно считать двоичным числом от 0 до 15.

Например, после первого импульса на выходе Q0 будет 1, а на остальных выходах - 0, что соответствует числу 1. После второго импульса на Q1 будет единица, а на остальных выходах нули, что соответствует числу 2. После третьего импульса на Q0 и Q1 будут единицы, а на Q2 и Q3 - нули, что соответствует числу 3. Ну и так далее. То есть каждый импульс увеличивает счётчик на единицу. Но 16-й импульс вернёт счётчик в нулевое состояние, и, поскольку у нас всего 4 разряда, то больше 16 импульсов мы посчитать не можем.

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

-2

В отличие от делителя частоты на счётчик импульсы могут поступать неравномерно. Например, первый импульс может поступить сразу, второй - через час, третий - через минуту после второго и т.п. Интервалы для счётчика не имеют значения (разумеется, если питание будет постоянно подаваться).

На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить…