Я хотел бы программно включать/выключать (независимо) восемь маленьких лампочек на 5 В. Кажется, я мог бы использовать восемь транзисторов, управляемых восемью независимыми выводами цифрового управления.
(См. прилагаемую схему ниже.)
Но я уверен, что есть более простой способ с использованием одного чипа... только с одним или двумя цифровыми управляющими контактами (мои цифровые управляющие выходы имеют макс. 5 В с разрешением 255 шагов, так что можно хранить все различные комбинации только в одном байте!).
Попробуйте это устройство, оно выглядит подходящим: -
Ваш вопрос сбивает с толку более чем одним способом.
Все начинается с того, что ваши лампочки маленькие. Важным параметром является ток, который они потребляют, а не их размер.
Затем вы говорите, что ваши цифровые выходы имеют максимальное напряжение 5 В с разрешением 255 шагов. Вы подразумеваете, что они аналоговые выходы, или, может быть, цифровые, но ШИМ?
Вы заканчиваете фразой «должно быть нормально хранить все комбинации в одном байте». ХОРОШО.
В любом случае, если ваши лампы требуют, скажем, 100 мА каждая, вы можете использовать микросхему ULN2803 в качестве 8-кратного буфера.
Если вы занимаетесь программированием, вы можете использовать TPIC6C595, чтобы сделать то же самое, но используя только 3 выходных контакта вашего микроконтроллера или только 2, если вы не возражаете против небольшого ореола.
PCF8574
, или MCP23017
если OP хочет двухпроводную работу, так как он никогда не исчезает, если он правильно подключен как шина I2C.2803
формирование двухчипового решения, которое работает с меньшим использованием контактов MCU.D44C7
рассчитан на 4 ампера, но набор микросхем, который я предлагаю, не сможет справиться с таким большим током. Если ваш дизайн работает в пределах 500 мА, вы можете попробовать это: ULN2003
массив Дарлинтона NPN.
И если вам нужно освободить некоторые контакты, вы можете добавить PCF8574
8-битный расширитель I2C GPIO, чтобы вам нужно было использовать только 2 контакта от вашего MCU, а I2C — это шина, поэтому сигнальные линии могут быть общими.
Чипсет PCF8574
/ ULN2003
работает следующим образом:
смоделируйте эту схему - схема, созданная с помощью CircuitLab
Он ULN2003
совместим по выводам '2803
(в том смысле, что он может поместиться в '2803
посадочном месте, оставив бит D0 неподключенным), поэтому выберите тот, который соответствует вашим потребностям.
Любой восьмеричный буфер с открытым коллектором или открытым стоком в серии 7400, например http://www.ti.com/lit/ds/symlink/sn74bct760.pdf , с восьмибитным последовательным параллельным выходным сдвиговым регистром, https: //www.fairchildsemi.com/datasheets/74/74VHC164.pdf , должно работать.
Если вы хотите использовать одну микросхему, вам нужно искать выходной регистр сдвига с открытым коллектором. Похоже, TPIC6A595 подойдет.
pjc50