Пожалуйста, возьмите этот вопрос в качестве примера (моего) ответа ниже.
У меня есть 7-сегментный 4-значный светодиодный дисплей, но я понятия не имею, как его подключить.
Я не понимаю разницу между общим анодом / катодом, и у меня нет 2 выводов на светодиод, что странно. Совсем недавно вопрос об "7-сегментном 4-значном общем аноде" был удален. В тот самый момент я печатал ответ.
Тем не менее, я все еще хочу поделиться своим ответом с вами или человеком, который спросил его. Пожалуйста, проверьте / обновите мой ответ с более подробной информацией. В частности, может ли кто-то добавить рабочий код, я не могу в данный момент.
Ответы:
В качестве дополнения к ответу Пола я написал короткую программу, чтобы показать, как управлять 7-сегментным четырехзначным дисплеем его фигуры:
На самом деле это обычный катодный дисплей, поэтому программа предполагает это, а также конкретную разводку рисунка. Интересной частью является
refresh_display()
функция, которая должна вызываться периодически. Алгоритм выглядит следующим образом:HIGH
выход, который управляет катодом этой цифры через NPN-транзисторLOW
катод-контролирующий выходСледует отметить, что ожидание выполняется без блокировки процессора, используя методику, описанную в руководстве Blink Without Delay Arduino. Вот программа:
Пол предоставил ссылку на учебник по Parallax, в котором предлагается использовать библиотеку Multiplex7Seg Arduino. Эта библиотека является более общей, чем приведенный выше пример кода, поскольку она не делает предположений об используемых выводах. Но большая разница между библиотекой и этим кодом заключается в способе управления временем:
refresh_display()
достаточно часто звонит . Он не требует выделенных аппаратных ресурсов, но он не очень хорошо работает с программами, которые занимают слишком много времениloop()
: вам не понравится ваш вызовdelay()
.источник
Я постараюсь познакомить вас со всеми основами светодиодов и т. Д. Так как 4-значные 7-сегментные дисплеи представляют собой комбинацию нескольких «светодиодных технологий».
Проводные светодиоды
Светодиоды, или светодиоды, являются одной из забавных вещей Arduino.
По сути, они просты в использовании, включите их, и они загорятся.
Они могут раздражать, потому что они имеют некоторую полярность, то есть они будут работать только тогда, когда вы правильно их подключите. Если поменять положительное и отрицательное напряжение, они вообще не загорятся.
Как это ни раздражает, но и весьма полезно.
Катод против Анода
На традиционном светодиоде длинным проводом является (+), анод. Другим лидером является (-) катод.
«Или, если кто-то подрезает ножки, попробуйте найти плоский край на наружном корпусе светодиода. Контакт, ближайший к плоскому краю, будет отрицательным катодным контактом». - Sparkfun
Источник: https://learn.sparkfun.com/tutorials/polarity/diode-and-led-polarity
Базовая проводка
Я не уверен, что это правильно, так как я скопировал изображение из интернета.
Подключить светодиод довольно просто, анод (+) подключается к положительному напряжению, предпочтительно через ограничитель тока. Катод (-) подключается к земле (с токоограничивающим резистором, если у вас его нет на положительной стороне).
Токоограничивающий резистор предотвратит короткое замыкание светодиода, повредив светодиод или микроконтроллер / Arduino.
Несколько светодиодов, матриц, светодиодов RGB
С несколькими светодиодами вы часто подключаете их с положительной стороной (+), «общим анодом» или со всеми (-) «общим катодом».
В основном все сводится к этому.
Для обычного катода вы подаете ток на контакты, которые хотите подключить.
Для обычного анода вы пропускаете ток через светодиод.
Мультиплексирование (многозначный, 7-сегментный)
Вы должны проверить учебник параллакса: http://learn.parallax.com/4-digit-7-segment-led-display-arduino-demo
Когда у вас много светодиодов, часто разумно их «мультиплексировать». Обычно вы быстро проходите «группы» светодиодов, так что кажется, что все они включены одновременно.
Обычно вы отбираете ток из столбца светодиодов и подаете ток на отдельные светодиоды в ряду.
Или вы подаете ток на столбец светодиодов и снижаете ток от отдельных светодиодов ряда.
Так что вы можете выбрать, какой столбец активировать и какие светодиоды этого столбца загорятся. Быстрое изменение этих столбцов / строк позволит вам управлять несколькими светодиодами с гораздо меньшим количеством выводов.
Для этого даже существуют контроллеры дисплея, если вы не хотите заботиться о переключении в вашем программном обеспечении.
Поэтому, когда у вас есть 4-значный, мультиплексный 7-сегментный, общий анод
Диаграмма будет больше похожа на это:
http://www.mytutorialcafe.com/Microcontroller%20Application%20C%207segmen.htm
источник