Добрый день! Я начинающий в мк)) Хочу собрать себе Led Cube хотя бы 3х3 (Но сейчас не в кубе дело). Для этого хочу использовать следующий сдвиговый регистр M74HC595B1R. Нашёл к нему описание (В плане посмотрел его совместимость с 74HC595), но к сожалению я так и не смог разобраться со следующим: Пример: Ардуина+M74HC595B1R(подключеный к ней)+7 Светодиодов(подключеных к M74HC595B1R) и 7 резисторов на 220 соответственно. 1) Возможно ли регулировать степень свечения каждого из светодиодов по аналогии как в стандартном скетче "Fade" (при использовании выше описанного), если можно пример кода. 2) Какой предел последовательно подключения сдвиговых регистров ?
Добрый! Не совсем так. Степень свечения задаётся через PWM (ШИМ). То есть выходной контакт бешено скачет то в HIGH, то в LOW миллионы раз в секунду. Выходы 74HC595 так делать не умеют. Поэтому у вас 2 пути: В цикле на Arduino бесконечно делать shiftout вашего регистра попеременно то включая «включенные» выходы, то выключая их. То есть реализовать PWM програмно. При таком подходе правда PWM будет куда медленнее аппаратного, и могут возникнуть трудности с точным контролем яркости. Кроме того, вы займёте процессор этой и только этой задачей: ничего полезного он больше сделать не сможет. Взять более продвинутый чип-регистр с поддержкой PWM. TLC5940 — подойдёт Условно +∞
Большое спасибо!!! Безмерно благодарен вам за ответ!!! Правда у меня появился ещё 1 вопрос по сдвиговым регистрам... Допустим что у меня их 5 (соответственно в "моём случае" 35 светодиодов) и я хочу обратиться конкретно например к 18 и 27 светодиоду, как это сделать?
Хотите обратиться к 27-му светодиоду. Стало быть он — 3-й выход 4-го регистра (8 + 8 + 8 + 3). Формируете байт 3-м битом которого ставите желаемое для этого светодиода значение. Пихаете этот байт в первый регистр, он каскадом — на второй, второй — на третий, третий — на четвёртый. Та-да, бит на месте, 27-й светодиод получил нужный сигнал. Подробнее о каскадировании регистров написано на официальной вики. Алсо, вы собрались делать LED Cube. Вы же не хотите к каждому светодиоду подводить отдельные провода? Кубы делаются объединением слоёв в общий катод, а столбцов в общий анод (подробно на Instructables). Таким образом для куба 3×3×3 понадобится всего 3×3+3=12 контактов. Тут даже регистр не нужен.