зажигает игры с Arduino



Вдохновленный мой друг, Я разработал схему для легкой матрицы светодиодов. Возможно ли, что пастор просил отремонтировать обет свечу, уже снабжены лампами накаливания. Мы сделали, чтобы положить белые светодиоды малой мощности. Ключевой проход или датчик монет включение светодиода в то время,.

 

описание

Проект, представленный здесь это непритязательный быть полностью функциональный, это соло для образовательных целей. На самом деле там могут быть некоторые проблемы, которые предстоит решить в окончательном построении проекта.


Испытательный стенд демонстрирует возможность. Тогда, наконец, в установке будут меры предосторожности, что длина соединений не является чрезмерной, или что’ Мощность фильтруют с помощью любых нарушений.

Развитие содержит Arduino UNO V3, светодиодная матрица по 6 линии до 4 колонка. Эти светодиоды управляются непосредственно dall'Arduino мультиплексированными.


Программа’ действовать активации кнопки или обнаружение прохождения монеты, начинает мигать светодиод рядом с последовательностью.
Когда его нет нет активного, ясно, что из первой части.

В видео, что вы можете увидеть ниже описан адрес, была использована кнопка простой проволочной Mo».

Расположение светодиодов матрицы, часть из квадрата, который отражает в некотором смысле декартовы оси. Тогда последовательность зажигания начинается с нижней левой и следует с’ увеличенный и, вплоть до максимального числа столбца. ниже, переходит к следующему столбцу. Смотри таблицу ниже, показывая, что последовательность зажигания. Начиная с номером один.

Светодиоды для ориентации

6

12

18

24

5

11

17

23

4

10

16

22

3

9

15

21

2

8

14

20

1

7

13

19

печатная плата

Для упрощения разработки, Я организовал односторонний, который предусматривает подключение каждого анода и катода. Карта уже предусматривает расширение матрицы на 6×6. На приведенном ниже рисунке показано расположение карты. Я оставил пространство между анодом и катодом каждого светодиода, чтобы больше треков. К сожалению, есть некоторые мосты проходят, при условии, что маршрутизация не удалось снизить их.


Следует отметить, что катоды направлены сопротивлениями в пределах всех’ Arduino, а аноды соединены с коллекторами транзисторов. Итак, мы видим схему подключения.

монтажная схема

Обратите внимание, что’ Arduino может быть размещен на разъемах. Я рекомендую этот путь, для того, чтобы извлечь его в случае перепрограммирования.

Во всех случаях Вы можете увидеть детали загрузка пакет который также содержит эскизы[*] быть загружены на’ Arduino.

[*] Эскиз имеет период, что светодиоды переключаются только и начинает достигая максимальное количество светодиодов. Это называется matrix_single_time.ino.
второй, matrix_multiple_time.ino, Он работает, что каждый светодиод имеет отдельный период и заканчивается назначенное время (АУТ). также, если все огни sАранне горит, иАСР сброс продолжительности светодиода, которыйВРА самый длинный период.
примечание matrix_multiple_time.ino, начинает отсчет позиции 24 все’ назад.
Существует также версия, которая использует MAX7219 с его библиотекой, который может обрабатывать до 64 огни. Но нет в пакете.

Программа сотрудничества

Программа позволяет некоторые настройки, которые перечислены в своих первых строках. Кроме того, к которому он в настоящее время определяется она может принять’ Arduino и реализовать матрицу 8 линии до 6 колонка, только две линии коррекции. Мы видим в деталях.

линия 5 #определить DEBUG определяет, будет ли компилировать с последовательным подключен для отладки (После того, как вы попробуете схему, лучше закомментируйте линии). ниже, в эскизе, линии 23 е 24 Вы можете определить, какие ноги назначить для использования с серийным. Требуется интерфейс USB TTL-RS232, как показано. Таким образом, вы можете подключить к ногам все еще доступны в зависимости от того, как вы хотите назначить.

линия 12 #определить INBTN A0, позволяет нам назначить’ вход вы хотите использовать, чтобы активировать счетчик. По крайней мере, для этого проекта, как ожидается, в печатной плате блок-с винтовым креплением, для подключения кнопки. Но для другого использования является возможность назначить новую позицию. За исключением тех, на’ Ардуины пронумерованы 0 а 13, которые они являются те, которые используются для управления матрицей светодиодов.

линия 13 #определить TMPRESS 20, служит для определения периода, который’ вход должен оставаться низкими для того, чтобы быть подтвержден. Вам может понадобиться’ настройка для определения чувствительности. Значение находится в 2,5 миллисекунды. Это соответствует периоду обновления светодиодов.

линия 14 #определить ТАЙМОУТ 7200, Он устанавливает, как долго они остаются все светодиоды светятся, когда кто достиг максимального количества пусков. Мера в секундах, Ибо так оно было рассмотрено двухчасовой период. В функции обратный отсчет задержка 998 миллисекунды, что вы, возможно, должны быть скорректированы, чтобы иметь правильный период.

линии 15 е 16 определить, сколько столбцов NUMCOLS и сколько строк NumRows что для проекта 4 е 6 соответственно.

в следующем 3 линии рассчитывается по настройкам программы, в зависимости от значений, определенных для строк и столбцов, выше. (Там также изменения к другому использованию программы).

К линии 20 #определить NUMBLINKS 8, Он может варьировать количество раз мигающих перед тем, чтобы остаться светодиод горит. Позаботьтесь, что может быть только четное число, приговор, который заканчивает отсчет с его светодиод не горит.

линия 21 #определить COMMON_ANODE, позволяет d «, будет ли использоваться высокие или низкие уровни для выходов строк. Для случая, который вы хотите вставить буферный транзистор илиPPURE схемы интегрированы в ULN2804, это позволяет изменять параметры компиляции и обратные выходы.
Если кто-то хотел активные высокие выходы, просто закомментируйте строку,
сдачи //.

То же самое относится к линии 22 #определить COL_ACTIVE_LOW, Это позволяет инвертировать выходы логики для столбцов. Я поставил пилот 2N2907A, поэтому они необходимы активный низкий.

линия 25 #определить Timelapse 2500, Это тот, который определяет частоту обновления матрицы и сканирование столбцов. Период в микросекундах. На самом деле здесь функция вызывается обновление каждый 2,5 миллисекунды. Вы можете настроить, повышение стоимости, немного уменьшить яркость светодиодов, но он рискует запустить d»в раздражающее мерцание. Я попытался с 5 миллисекунды и не имеет никакого мерцания. Снижение может еще больше подорвать производительность других задач’ Arduino.

Для остальных, Вы также можете адаптировать программу для управления цифровым дисплеем 7 сегменты, с до 6 цифры. Или матрица 8×6 колонка. Именно поэтому программа является приверженность к обучению, чтобы узнать некоторые приемы программирования. Одна деталь отметить, использовать процедуру прерывания, чтобы иметь возможность иметь’ Обновление светодиодов ярких.
Например, когда я взял электронные журналы, почти никогда не было копирование всего проекта, Я был заинтересован в получении идеи для моих идей.

визуальные тесты

Он не мог пропустить испытание огнем.

с’ Намерение, которые могут служить сообществу, получать удовольствие.

11 ответы
  1. И тел
    И тел говорит:

    Привет,
    Мне удалось заставить работать схему matrix_single. Мне сложно заставить MAX7219 работать. У меня есть булавка 2 как вход и контакт DATAIN 5, Штифт CLK 3 ,ЗАГРУЗИТЬ 4, GND и 5 В. Я что-нибудь упускаю ?
    У меня тоже есть вопрос к тебе , можно ли применить ту же концепцию к использованию fastLED.h и WS2812B ?
    Спасибо

    • Picmicro675
      Picmicro675 говорит:

      Последний скетч должен работать на МАКС. 7219. Я повторил компиляцию, и она отлично компилируется. Скетч тестировал только на симуляторе.
      Для WS2812B это совсем другая история, но стиль для достижения этого эффекта остается прежним. Вы должны поддерживать массивы, чтобы запоминать каждый срок службы светодиода. Я даже для этого написал какой-то исходник для PIC12F1822 / 40, в протонной основной, но он следует другому стилю.

      • И тел
        И тел говорит:

        Привет, Спасибо за быстрый ответ. Я все еще пытаюсь заставить MAX7219 работать. Я использую модуль дисплея светодиодного модуля с точечной матрицей MAX7219 в качестве теста. Какие-либо предложения ?

        • Picmicro675
          Picmicro675 говорит:

          Вы должны предоставить некоторые подробности о своей сборке, чтобы прокомментировать и убедиться, что вы не попали под надзор..
          Используя Arduino, вы можете использовать конкретную библиотеку, как предлагается в эскизе, и соединять контакты, как написано в этом эскизе.. Не знаю, пойдет ли это гладко. В настоящее время у меня нет ни оборудования, ни времени, чтобы проверить свой эскиз..
          Предлагаю вам начать новую дискуссию о том, как вы.

  2. И тел
    И тел говорит:

    Отличный и интересный проект с использованием PORTD и PORTB , попробует на Arduino UNO. у вас есть схема для поддержки 64 светодиоды. Продолжай в том же духе.

    • Picmicro675
      Picmicro675 говорит:

      Я рада, что тебе интересен мой проект. Итак, для 8×8 схемы, это было просто копирование и вставка, чтобы добавить еще два столбца. Я не вдавался в эскиз и разводку печатной платы. Так что тебе стоит попробовать немного от себя. Если у вас куча трудностей, я разработаю для вас что-нибудь. В настоящее время нужно пересмотреть этот проект в 8×8 макет Я получил некоторую разработку с MAX7219. Это должно быть уже включено с момента публикации.
      8×8 ты можешь найти это Вот скачивать.

      • И тел
        И тел говорит:

        Большое спасибо за ваш ответ, очень признателен. Я сначала попробую с 24 СВЕТОДИОДЫ прогресс 64. Мне не удалось перейти по ссылке для скачивания, предоставленной для 8 Икс 8 расположение.
        Чтобы использовать 8 Икс 8 какие дополнительные выводы на Arduino доступны. Также хочу добавить 2 Икс 8 ЖК-дисплей, Любые идеи?

        • Picmicro675
          Picmicro675 говорит:

          Извините за неправильную ссылку, У меня по пути что-то грязное. Сейчас исправлено. Вы найдете схемные.
          В любом случае вы можете решить эту проблему и использовать весь PORTD для адресации большего количества столбцов.. Но, как я уже сказал, вы можете выбрать и использовать CD4028 для преобразования адресации, используя только 3 биты.
          Вот эскиз MAX7219, Последняя версия.

          Извините за комментарии на итальянском.

          • И тел
            И тел говорит:

            Спасибо за ваше время и терпение. Ваши знания об этом просто потрясающие. Я заказал детали, попытаюсь настроить их на выходных и сообщу вам результат. Настройка MAX7129 менее сложна, чем схемы транзисторных драйверов..

  3. Picmicro675
    Picmicro675 говорит:

    На самом деле я до сих пор принят метод с использованием двойного дисплея 7 сегменты в другом проекте.
    Проект для таймера, который не был доказан, но и да моделирования. Должен ли я получить момент, чтобы поставить его на тест.
    На самом деле он использует все PORTC записать байты. С 7-сегментный, Лучше всего, если вы используете массив данных, которые представляют собой символы, которые будут отображаться.

  4. Amilcare
    Amilcare говорит:

    Нет, я сомневаюсь, что мне понравилась эта идея, и даже более высоко оценили простоту реализации. Я краду эту идею в качестве отправной точки для других целей, но в данный момент я занят charlieplexing будет мое будущее исследование только что закончил один в ходе.

Ответить

Хотите принять участие в обсуждении?
Вы можете внести свой вклад!

оставьте ответ