Существует несколько способов управления светодиодами с помощью микроконтроллера. Самый простой способ — просто подключить все светодиоды к собственному контакту микроконтроллера. Скажи, что у тебя есть булавки доступны, вы сможете управлять булавки.
Однако существуют и другие способы управления светодиодами:
0
по умолчанию, а приемники — 1
. Теперь, чтобы зажечь один светодиод, установите подключенный источник на , 1
а приемник на 0
. Сделайте это для всех светодиодов, друг за другом.Сейчас я ищу обзор этих методов управления светодиодами (и других широко используемых методов управления светодиодами более эффективным способом, чем метод 1:1, описанный ранее, если они заслуживают внимания). Что мне нужно для каждого метода, так это два вычисления:
Во-первых, допустим, мы работаем с этими двумя функциями:
это максимальное количество светодиодов, которое может быть подключено к
булавки.
это минимальное количество пинов, необходимое для привода
светодиоды.
Это легко:
Сначала нам нужно определить наиболее эффективную диодную матрицу. Например, вы можете разделить 4 контакта на два набора по 2 или один набор из 1 и один из 3. Очевидно, что количество светодиодов определяется выражением . Мы можем сказать , поэтому количество светодиодов равно: . Учитывая , это парабола, имеющая максимум при . Вы также можете сделать это по внутреннему ощущению. Таким образом, максимальное количество светодиодов достигается, когда два набора имеют одинаковое количество контактов или отличаются только на 1, в случае нечетного количества контактов. Теперь мы можем сказать:
Кроме того, теперь мы можем легко понять функцию :
Я просто включил случаи для 1, так как это особый случай. Обычно вы можете просто использовать вторую функцию.
В этом методе у нас есть два светодиода между каждым набором из двух контактов. Мы можем рассчитать количество наборов из двух булавок с помощью:
Теперь мы можем сказать, что:
Мы видели, что количество пар булавок равно . При некотором обратном мышлении это приводит к:
Я просто включил случаи для 1, так как это особый случай. Обычно вы можете просто использовать вторую функцию.
Мне неизвестны другие методы по состоянию на вторник, 12 марта 2013 г.
Воутер ван Оойен
пользователь17592
Воутер ван Оойен