Счётчик
| Библиотека: | Память | 
| Введён в: | 2.3.0 | 
| Внешний вид: | ![]()  | 
Поведение
Счётчик хранит одно значение, которое выдаётся на выход Q. Каждый раз, когда тактовый вход (отмеченный треугольником на южном крае компонента) срабатывает в соответствии с его атрибутом Срабатывание, значение в счётчике может обновиться на основании значений двух входов на западном крае компонента: верхнего входа, названного загрузка, и нижнего, названного счёт, и они интерпретируются следующим образом.
| загрузка | счёт | вызываемое действие | 
| 0 или z | 0 | Значение счётчика остаётся неизменным | 
| 0 или z | 1 или z | Значение счётчика увеличивается на единицу. | 
| 1 | 0 | Счётчик загружает значение со входа D. | 
| 1 | 1 или z | Значение счётчика уменьшается на единицу. | 
Диапазон счёта можно настроить с помощью атрибута Максимальное значение. Когда счётчик достигает этого значения, следующее увеличение возвращает значение счётчика обратно к 0; а если значение счётчика 0, то уменьшение возвратит счётчик к его максимальному значению.
В дополнение к выходу Q компонент также имеет однобитный выход перенос. На этом выходе 1, когда счётчик имеет своё максимальное значение и входы загрузка и счёт показывают, что значение компонента должно увеличиться на следующем шаге; или когда значение счётчика - 0, и входы загрузка и счёт показывают, что значение компонента должно уменьшиться на следующем шаге.
Вход Очистка асинхронно сбрасывает значение счётчика на 0 (все нули); кроме того, пока на входе Очистка 1, значение фиксировано на 0 вне зависимости от тактового входа.
Контакты
- Восточный край, отмечен Q (выход, разрядность соответствует атрибуту Биты данных)
 - Выдаёт значение, хранящееся в данный момент в счётчике.
 - Восточный край, нижний контакт (выход, разрядность равна 1)
 - Перенос: когда входы загрузка и счёт указывают счётчику увеличиться, значение на этом выходе 1, если регистр имеет максимальное значение. Когда входы загрузка и счёт указывают счётчику уменьшиться, значение на этом выходе 1, если регистр имеет значение 0. Во всех других случаях на этом выходе 0.
 - Западный край, верхний контакт (вход, разрядность равна 1)
 - Загрузка: когда на этом входе 1, пока на входе счёт 0, счётчик загрузит значение со входа данные при следующем срабатывании тактового входа; или, если на входе счёт 1, значение счётчика уменьшится.
 - Западный край, средний контакт, отмечен D (вход, разрядность соответствует атрибуту Биты данных)
 - Данные: когда срабатывает тактовый вход при 1 на входе загрузка и 0 на входе счёт, значение счётчика сменится на значение, поступившее на этот вход.
 - Западный край, нижний контакт, отмечен ct (вход, разрядность равна 1)
 - Счёт: когда на этом входе 1, или он не подключен, значение счётчика увеличивается, когда срабатывает тактовый вход, или уменьшается, если на входе load тоже была 1.
 - Южный край, отмечен треугольником (вход, разрядность равна 1)
 - Тактовый вход: в момент срабатывания этого входа (как указано в атрибуте Срабатывание) значение счётчика обновляется, как указано входами загрузка и счёт.
 - Южный край, отмечен 0 (вход, разрядность равна 1)
 - Очистка: если на этом входе 0 или неопределённое значение, то он не имеет эффекта. Пока на нём 1, значение счётчика асинхронно фиксируется на 0. Это происходит асинхронно - то есть вне зависимости от текущего значения на тактовом входе. Пока на нём 1, другие входы не имеют эффекта.
 
Атрибуты
Когда компонент выбран, или уже добавлен, комбинации от Alt-0 до Alt-9 меняют его атрибут Биты данных
.
- Биты данных
 - Разрядность значения, выдаваемого компонентом.
 - Максимальное значение
 - Максимальное значение, при котором счётчик установит в 1 значение выхода Перенос.
 - Действие при переполнении
 - Поведение, когда счётчик пытается увеличится при максимальном значении, или уменьшиться при 0. Четыре возможных действия поддерживаются:
- Закольцовывать
 - При увеличении - следующее значение 0; при уменьшении - максимальное значение
 - Оставаться на значении
 - Значение счётчика остаётся на максимуме (или на 0 при уменьшении)
 - Продолжать счёт
 - Счётчик продолжает увеличение/уменьшение, сохраняя количество битов, указанное в атрибуте Биты данных
 - Загрузить следующее значение
 - Следующее значение загружается со входа D.
 
 - Срабатывание
 - Определяет, как обрабатывается тактовый вход.  Значение 
Передний фронт
означает, что счётчик должен обновляться в момент, когда значение на тактовом входе меняется с 0 на 1. ЗначениеЗадний фронт
означает, что он должен обновляться, когда значение на тактовом входе меняется с 1 на 0. - Метка
 - Текст внутри метки, привязанной к компоненту.
 - Шрифт метки
 - Шрифт, которым отрисовывается метка.
 
Поведение Инструмента Нажатие
Нажатие на счётчике переводит фокус ввода клавиатуры на компонент (это отображается красным прямоугольником), и ввод шестнадцатеричных цифр будет менять значение, хранящееся в счётчике.
Поведение Инструмента Текст
Позволяет редактировать привязанную к компоненту метку.

