Один светодиод в матрице 4х4 не включается
Я изучаю искусство и совсем новичок в электронике/программировании. Моя более широкая цель – научиться управлять отдельными светодиодами, когда их много (например, 64 или даже больше, поэтому я изучаю регистры сдвига, мультиплексирование и т. д. . также).
Я работал с примером матрицы 4x4 от Джона Фокса. Я сделал макет, как показано ниже, и проверил его несколько раз.
По большей части это успешно; код работает, и я получаю анимацию светодиодов в его коде. Я также могу предвидеть, какие части кода относятся к каким светодиодам, когда я тестирую, комментируя части кода — например, r1c1()
относится к верхней строке, самому правому светодиоду.< /p>
Однако верхний ряд, второй слева светодиод не включается.
Я протестировал отдельные светодиоды перед запуском, проверил соединения проводов на случай, если они плохо соединяются на макетной плате, и попытался добавить в ряды резисторы 330 Ом (вместо оранжевого соединительного провода на изображении). ), и попробовал с резисторами 1 кОм вместо 220 Ом. Причина, по которой я попробовал эти значения, заключалась в том, что я добился успеха, когда использовал другую настройку, которая у меня есть, изображение ниже.
Синий и белый светодиоды потребляют одинаковое напряжение, поэтому, насколько я понимаю, это ни на что не повлияет. Код отлично работает и на этом.
Я понимаю, что все еще могу ошибаться из-за человеческого фактора, тем более что я схожу с ума по этому поводу. Однако, поскольку я действительно хочу понять факторы, влияющие на управление светодиодами, я хотел бы знать, есть ли вообще какие-либо другие переменные.
Во-первых, я искал «плавающие входы», поэтому попытался добавить другой набор резисторов и попробовал цветные светодиоды (больше лампочек были либо выключены, либо тусклые), а также белые светодиоды 3 мм (тот же результат, что и 5 мм). Самое сложное в этом процессе — это задаваться вопросом, чего я не знаю, поэтому, если кто-нибудь может направить меня к вещам, которые я должен учитывать для своих целей, или помочь мне решить мою текущую проблему, я был бы очень благодарен.
@Miso, 👍2
1 ответ
Очень трудно быть уверенным. Вы заявляете, что второй слева светодиод в верхнем ряду не включается, как ожидалось. На макетной схеме этот светодиод втыкается в отверстия D7 и D8. Однако на изображении видно, что этот светодиод подключен к отверстиям D8 и E8.
Точная буква/цифра может не иметь значения, если вы не точно следуете своей макетной схеме. Однако все контакты подряд (т.е. A8, B8, C8, ..., E8) закорочены. Таким образом, подключение светодиода к отверстиям D8 и E8 предотвратит его загорание.
Кроме того, вы добавили в матрицу резисторы, которых нет на макетной схеме. Резисторы столбцов кажутся правильными, но резисторы строк сомнительны. На практике, если вы собираетесь зажигать только 1 светодиод в столбце за раз, вы можете обойтись только резисторами столбца. Для такой конфигурации (только резисторы столбцов) вы можете увидеть тусклые светодиоды, если вы зажжете более 1 на столбец. Если вы хотите зажечь более одного светодиода на столбец, трюк состоит в том, чтобы позволить программному обеспечению включать и выключать светодиоды так, чтобы в каждый столбец зажигался только один светодиод. Но достаточно быстрый, чтобы человеческий глаз его не увидел. Так что немного быстрее, чем 100 мс.
- Затемнение этого светодиода ~ 30 В с помощью ШИМ, что мне нужно?
- Необходимы ли резисторы для светодиодной матрицы 8х8?
- BJT - BC547 не работает со светодиодной лентой
- Светодиоды всегда тусклые с arduino nano
- Почему официальный учебник по сканированию светодиодной матрицы записывает вывод столбца дважды?
- Застрял в цикле While
- Как получить стабильное светодиодное освещение без сцинтилляции по шине I2C
- ESP 8266 делает шумовые сигналы на светодиодную матрицу
Спасибо за ваш ответ. Для подтверждения, второй слева в верхнем ряду светодиод подключен к D7 (катод -) и D8 (анод +)., @Miso
Затем проверьте, не перевернуто ли это смещение (вставьте наоборот). Светодиоды — это диоды, которые излучают свет. А диоды можно вставлять только с прямым смещением (в правильном направлении)., @st2000
Дайте мне знать, если «использовать только столбцовые или рядные резисторы, но рассмотреть возможность использования обоих и использовать программное обеспечение для уменьшения затемнения при одновременном включении слишком большого количества светодиодов» не ясно. Даже на вашем втором «отдельно стоящем» дисплее я представляю, что чем больше светодиодов вы зажжете в данном столбце или данной строке, тем тусклее станут отдельные светодиоды. Если вы не хотите возиться с программным обеспечением (например, вы просто хотите иметь возможность зажигать любую комбинацию светодиодов без проблем с затемнением), вам нужно будет добавить резистор к каждому отдельному светодиоду., @st2000
Он поставлен в правильном направлении. Я могу удалить рядные резисторы, я пробовал их на макетной плате, так как они работали в отдельно стоящей версии, и я задавался вопросом, нужен ли подтягивающий (нижний?) резистор из-за этой идеи плавающего входа? Может быть, это совершенно неважно. На данный момент я не испытываю затемнения ни в одной из версий. На этом светодиоде нет тока или напряжения, и мне просто интересно, почему., @Miso
Я только что понял свою ошибку - неправильно подключил один из катодных проводов - горит 2-й светодиод. Но ваш отзыв был полезен и очень ценен., @Miso