Приостановка тактового сигнала, генерируемого таймером 555

Я планирую сделать простой целочисленный сумматор/умножитель, который требует переменной частоты, сравнительно медленных часов (от 1 до 200 Гц) для демонстрационных целей. Я использовал следующую универсальную схему таймера 555 для генерации необходимого тактового сигнала.

схематический

смоделируйте эту схему - схема, созданная с помощью CircuitLab

(Добавьте больше D-триггеров, если требуется больше битов)

Я хочу приостановить часы, когда схема обнаруживает переполнение данных (отправка логического сигнала 3 В), чтобы остановить процесс расчета и сохранить его состояния. Не очень хорошо разбираясь в электронике, я поковырялся в Фалстаде и заметил, что если вы прервете связь между выходом и шиной «обратной связи» (триггер, порог и C1), таймер застрянет в своем текущем состоянии. Тогда схема будет такой:

схематический

смоделируйте эту схему

Итак, позвольте мне разделить мой вопрос на две части:

1. Могу ли я просто использовать переключатель (скажем, BJT или реле), чтобы прервать шину обратной связи, чтобы приостановить часы?

2. Могу ли я просто использовать BJT или MOSFET в качестве переключателя здесь? Если нет, могу ли я использовать октопары на основе BJT? Моделирование от Falstad показывает, что BJT/MOSFET мешают тактовому сигналу.

Схема Фальстада с использованием реле, управляемого BJT

См. сайт Бена Итера: здесь . Он находится в модуле часов с переменной частотой, возможностью ручного степпинга и т. д. В значительной степени это покрывается.

Ответы (1)

Вы можете остановить колебание 555 без использования какого-либо переключателя. Просто подключите сигнал включения/выключения к входу RST микросхемы 555. Когда RST становится низким, 555 останавливается. Когда RST возвращается к высокому уровню, 555 снова возобновляет генерацию тактового сигнала.

Если вы хотите, чтобы на выходе схемы сохранялся последний уровень сигнала, когда тактовый сигнал становится стробированным, это решается запуском 555 на удвоенной желаемой частоте. Затем вы используете FF D-типа для синхронизации по переднему фронту выхода 555 и подключаете его вход D к выходу Q NOT . FF будет производить хороший выходной рабочий цикл 50% и сохранит то состояние, в котором он был, когда 555 принудительно перезагружается.

Моя проблема в том, что когда вы сбрасываете 555 (подключаете сброс к земле), ваш выход всегда будет равен 0. Я бы хотел, чтобы выход сохранял свое состояние. Теперь, когда я думаю об этом, может быть, я могу использовать какой-нибудь триггер?
Вы можете легко решить эту проблему, запустив 555 на частоте, вдвое превышающей желаемую, а затем используя один FF D-типа, чтобы разделить частоту 555 пополам. Когда вы сбрасываете 555, выход Q D-FF может быть высоким или низким ... все зависит от того,