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

Разбор примера: двухразрядный десятичный счётчик

5 мин

Одного декадного счётчика недостаточно после 9

Один декадный BCD-счётчик считает от 0 до 9 и возвращается к 0 — этого достаточно для одного разряда, но двухразрядному индикатору, считающему от 00 до 99, нужен второй декадный счётчик для разряда десятков — такой, что продвигается ровно на 1 каждый раз, когда переполняется разряд единиц, а не на каждом такте.

Тактируем разряд десятков переполнением младшего

Собственное переполнение счётчика единиц — тот самый импульс декодирования 10 в RST, что его сбрасывает, — это ровно тот сигнал, которым нужно тактировать разряд десятков. Подайте этот импульс сброса на собственный вход CLK счётчика десятков вместо общего системного такта, и разряд десятков будет продвигаться только в тот момент, когда разряд единиц скатывается с 9 обратно на 0.

BCDединицSEG7переносBCDдесятковSEG7

Два индикатора SEG7, одна общая идея

Подключите 4-битный выход каждого декадного счётчика к своему собственному блоку SEG7, и два разряда вместе читаются как обычное двузначное десятичное число 00–99 — ровно тот же паттерн «перенос тактирует следующую ступень», что используется в цепочке полных сумматоров, только применённый к счёту вместо сложения.

Попробуйте сами

Соберите оба декадных счётчика в редакторе схем, подключите импульс сброса разряда единиц ко входу CLK разряда десятков, подайте оба на собственные блоки SEG7 и убедитесь, что индикатор показывает 00, 01, 02… вплоть до 99, прежде чем вернуться к 00.

Собрать двухразрядный счётчик в редакторе схем →