Оглавление:

Светодиодный матричный будильник (с MP3-плеером): 6 шагов (с изображениями)
Светодиодный матричный будильник (с MP3-плеером): 6 шагов (с изображениями)

Видео: Светодиодный матричный будильник (с MP3-плеером): 6 шагов (с изображениями)

Видео: Светодиодный матричный будильник (с MP3-плеером): 6 шагов (с изображениями)
Видео: Часы с будильником на arduino.Своими руками 2024, Июль
Anonim
Светодиодный матричный будильник (с MP3-плеером)
Светодиодный матричный будильник (с MP3-плеером)
Светодиодный матричный будильник (с MP3-плеером)
Светодиодный матричный будильник (с MP3-плеером)

В этом будильнике на базе Arduino есть все, что вы ожидаете от будильника - возможность разбудить вас любой понравившейся песней, кнопка отложенного сигнала и простое управление с помощью трех кнопок. Основных блоков три - светодиодная матрица, модуль RTC и экран MP3 с динамиком.

Шаг 1: материалы и инструменты

  • Светодиодная матрица
  • Ардуино Уно
  • MP3 shield DHF player Mini
  • Модуль RTC DS1307
  • Любой спикер
  • 3 кнопки (с резисторами подтягивания / вытягивания 10кОм)
  • Провода
  • Plexi (или любой другой материал, из которого вы хотите получить коробку)
  • 3D-принтер (для печати матричных коробок)
  • Разъем источника питания постоянного тока
  • Гнездовой разъем USB B.

Я считаю, что вы можете изменить этот список материалов в зависимости от ваших возможностей (определенно вы можете использовать разные MP3 Shield, разные модули RTC, и все должно работать нормально:)

Шаг 2: светодиодная матрица

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

В качестве вдохновения я использовал эти инструкции для создания светодиодной матрицы, я только решил не использовать макетную плату и спроектировать свою собственную печатную плату. Вы можете найти мой проект в области схемотехники здесь. Вы также можете использовать схемы, и если вы хотите отправить данные gerber (а не сгенерировать их из проекта производителя схем самостоятельно), дайте мне знать, я предоставлю их вам:). Несколько советов - сначала я использовал очень дешевый светодиод, но после того, как я спаял все диоды и запустил код Arduino, оказалось, что разница в цвете светодиодов неприемлема, поэтому мне нужно было заказать другие и сделать другую светодиодную матрицу. Я объясню принцип работы в части Arduino. В любом случае, чтобы узнать, хорошо ли вы поработали и дисплей работает, просто замените константы в функции DisplayChar в основном цикле Arduino (например, вместо DisplayChar (1, letA); используйте DisplayChar (0, 9); который напишет число 9 начиная с 1-го столбца), больше ничего комментировать не нужно.

Шаг 3: Другое HW

Другое HW
Другое HW
Другое HW
Другое HW
Другое HW
Другое HW

Другие аппаратные компоненты для создания будильника: модуль RTC, экран MP3, кнопки и arduino UNO.

Для модуля RTC я использовал модуль DS1307 и библиотеку MD_DS1307.h, это довольно просто, все работает плавно, но я бы порекомендовал, вероятно, использовать более точный модуль RTC, например 3231 или другой - если я оставлю его без питания в течение нескольких дней, он начнет терять несколько секунд..

MP3 Shield DHF player Mini - Этот MP3-экран действительно прост: вы можете загрузить mp3 на SD-карту, подключить любой динамик, который вы найдете, и затем им можно будет управлять двумя способами: через последовательную связь или через контакты ввода / вывода. Честно говоря, по какой-то причине мне не удалось добиться успеха в последовательной связи (она не работала вместе с SPI и I2C-связью, используемой для других компонентов), но я был любезен просто использовать контакты ввода-вывода (я использовал ADKEY1, подключенный к цифровому выходу Arduino в качестве триггер для воспроизведения песни, а затем пин USB +, чтобы остановить музыку).

Как вы можете видеть на картинке, я использовал три простые кнопки на макетной плате, подключенные к цифровым входам Arduino с понижающими резисторами 10 кОм.

Схема подключения ардуино хорошо видна в коде ардуино:)

Шаг 4: Механические детали

Механических частей
Механических частей
Механических частей
Механических частей
Механических частей
Механических частей
Механических частей
Механических частей

Чтобы создать красивый обычный дисплей, вам нужно использовать некоторую сетку, чтобы определить точную форму для каждого светодиода. Я использовал простую сетку, напечатанную на 3D-принтере, которая отлично работает - она состоит из двух частей, левой и правой, вы можете найти данные STL во вложении.

Ящик выточен на станке с ЧПУ из молочного плексигласа. Это полностью зависит от вас, из какого материала вы будете делать, только одна рекомендация: если вы будете использовать такой же материал, как я, нанесите полупроницаемый слой на деталь, которая находится непосредственно на светодиодах, чтобы светодиоды не были видны как точечный источник света.. Вы можете видеть, что на боковой стенке есть место для разъема питания постоянного тока и USB, чтобы загрузить лучшие идеи кода:) Я использовал стандартный клей для пластика, чтобы склеить части из плексигласа. Во вложении есть файлы STL для всех частей (Спасибо моему другу Пеши за создание этой супер классной коробки:))

Шаг 5: Часть Arduino

Часть Arduino
Часть Arduino

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

В основном цикле вы просто проверяете, нажата ли какая-то кнопка, проверяете, отправляет ли RTC вам обновленные значения минут и не пора ли сыграть какую-нибудь песню Pink Floyd:), а если нет, вы просто периодически включаете и выключаете светодиоды с помощью установить числа.

Управление светодиодной матрицей - для лучшего понимания хорошо следовать инструкциям для светодиодной матрицы, о которых я упоминал в начале, но кратко - важно понимать, что для отображения цифр или букв в этой матрице необходимо периодически выбирать, какой светодиод из набора. необходимо включить ряд, а затем на некоторое время выключить все светодиоды ряда. На следующем этапе вы отключите этот ряд и подготовите второй ряд, и это снова и снова. Что это значит? - не используйте задержки! - иначе цифры не будут отображаться, а просто мигать:)

Я использую совсем другой, и я бы сказал, более простой способ управления регистрами сдвига (спасибо моему другу Кристофу, который написал эту плавную функцию). Итак, первый шаг (подготовка данных для сдвигового регистра происходит в функции DisplayChar, где вы просто находите нужный символ из массива констант и подготавливаете данные для регистров. И когда вызывается функция UpdateDisplay, данные перемещаются на выходы (для получения дополнительной информации см. экран из Arduino IDE)

Настройка будильника. Есть три кнопки: левая, средняя и правая. Когда вы дважды нажмете вправо и в середину, вы войдете в меню будильника. В меню будильника доступны следующие функции - левая кнопка (установка будильника на часы) средняя кнопка (установка будильника на минуты) долгое нажатие правой кнопки (подтверждение будильника), длительное нажатие средней и правой кнопки (стирание существующего будильника).

Когда будильник установлен (вы можете узнать это по светодиодному индикатору включения будильника в правом нижнем углу) и Часы начнут играть вашу любимую утреннюю песню:) доступны следующие функции - левая кнопка (отложить еще на 5 минут), средняя кнопка (отменить будильник).

Шаг 6: Завершение будильника

Image
Image
Завершение будильника
Завершение будильника

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

В будущем я бы хотел попробовать другой материал - в идеале черный:) и добавить еще несколько функций, например, отображение даты, возможно температуры и т. Д.:)

Надеюсь, вам понравится создавать свой собственный будильник, и с нетерпением жду ваших идей:)

Конкурс часов
Конкурс часов
Конкурс часов
Конкурс часов

Второй приз в конкурсе часов

Рекомендуемые: