Найти в Дзене
oleg gorshkov

Управление RGB светодиодами на 74HC164 + 74HC02 без микроконтроллера

Алгоритм работы данного устройства следующий: восемь RGB светодиодов с общим катодом, при включении питания, поочерёдно засвечиваются красным цветов, затем поочерёдно меняют свой цвет на зелёный, затем на синий, и так по кругу. Три сдвиговых регистра 74HC164 соединены каскадом. К выходам первого подключены красные аноды всех светодиодов. К выходам второго подключены зелёные аноды всех светодиодов. К выходам третьего соответственно все синие. 74HC164 – сдвиговый регистр, работа его очень похожа на всем знакомый 74HC595. Основным отличием является отсутствие защёлки и дополнительного буфера. При совместном использовании с Arduino – это возможно минус, но в данной схеме защёлка только мешалась бы. Другой особенностью является наличие сразу двух входов данных DSA и DSB, работающих по принципу логического элемента «И», то есть единица засчитывается только при появлении на обоих входах. Когда эта функция не требуется, их можно соединить вместе. Сброс схемы в момент включения питания осуществ

Алгоритм работы данного устройства следующий: восемь RGB светодиодов с общим катодом, при включении питания, поочерёдно засвечиваются красным цветов, затем поочерёдно меняют свой цвет на зелёный, затем на синий, и так по кругу.

схема принципиальная
схема принципиальная

Три сдвиговых регистра 74HC164 соединены каскадом. К выходам первого подключены красные аноды всех светодиодов. К выходам второго подключены зелёные аноды всех светодиодов. К выходам третьего соответственно все синие.

74HC164 – сдвиговый регистр, работа его очень похожа на всем знакомый 74HC595. Основным отличием является отсутствие защёлки и дополнительного буфера. При совместном использовании с Arduino – это возможно минус, но в данной схеме защёлка только мешалась бы. Другой особенностью является наличие сразу двух входов данных DSA и DSB, работающих по принципу логического элемента «И», то есть единица засчитывается только при появлении на обоих входах. Когда эта функция не требуется, их можно соединить вместе.

Сброс схемы в момент включения питания осуществляет цепочка R1,C1.

Работой входом данных первого регистра управляет RS триггер, собранный на первом и втором элементах микросхемы 74HC02. 74HC02 – содержит четыре элемента 2ИЛИ-НЕ.

Работа RS триггера осуществляется следующим образом. При включении питания на его вход 5 поступает сигнал сброса с цепочки R1C1 через инвертор выполненном на третьем элементе этой же микросхемы (74HC02), производя его сброс. На выходе триггера 1 устанавливается единица, которая поступает на вход DSA первого сдвигового регистра. После того, как засветятся все красные светодиоды, единица с выхода Q7 первого сдвигового регистра поступает на вход 2 триггера, переводя его выход в нулевое состояние. Таким образом, поступление высокого уровня на первый регистр прекратится, а записанные единицы будут передаваться в последующие два сдвиговых регистра, производя последовательное зажигание зелёных и синих цветов. Так будет продолжаться до появления единицы на Q7 третьего сдвигового регистра (при засвечивании последнего светодиода синим). Эта единица через диод поступает на вход 5 триггера, переводя его выход вновь в высокое состояние. Так будет происходить циклично.

На тактовые входа "CP" сдвиговых регистров нужно подавать импульсы с задающего генератора. Возникает вопрос. На чём же сделать задающий генератор? В 74HC02 остался только один свободный элемент. На одном логическом элементе нормальный генератор проблематично сделать. Можно добавить ещё один транзистор, или триггер Шмита (например 74HC14), или всеми любимую NE555. Я же решил реализовать в этот раз генератор на мигающем светодиоде (U5).

Спаял схему на макетной плате.

результат
результат
в работе
в работе

Видео