Оглавление:

Еще одни часы: 4 шага
Еще одни часы: 4 шага

Видео: Еще одни часы: 4 шага

Видео: Еще одни часы: 4 шага
Видео: ЛИМИТ ARMY-В военкомате случай был.(Премьера клипа 2021.Чечня в огне, седой парнишка)Армейская песня 2024, Июль
Anonim
Еще одни часы
Еще одни часы

Как видно из моих предыдущих загрузок, я приобрел 7-сегментные табло от старого оборудования для взвешивания.

В предыдущих моих попытках использовалась Arduino с модулем часов реального времени.

В этом руководстве используется ESP8266 D1 Mini, подключенный к серверу NTP!

Код основан на примере из библиотеки ESP8266WiFi.

Я не буду вдаваться в подробности подключения 7-сегментного дисплея, поскольку в сети есть десятки примеров. Две платы, которые у меня есть, используют микросхему драйвера декодера MAX7219, им требуется только 3 контакта для управления дисплеями размером до 8 x 7 сегментов.

Я тоже хотел показать дату, поэтому понадобилось еще 3 булавки!

Мне нужно было еще 7 выходов, чтобы отобразить День! Чтобы обойти отсутствие выходных контактов, я выбрал дисплей Neo Pixel, 1 контакт, 7 выходов!

Шаг 1. Аппаратное обеспечение

Аппаратное обеспечение
Аппаратное обеспечение
Аппаратное обеспечение
Аппаратное обеспечение
Аппаратное обеспечение
Аппаратное обеспечение

Требуемые детали

Дисплеи 12 x 7 сегментов (в моем случае мне очень повезло, что у меня была пара старых плат для весов, которые сэкономили очень много проводов.

1 x ESP8266 D1 Mini ИЛИ любой ESP8266 с 7 или более цифровыми выходами

2 x MAX7129 (опять же, мне повезло с дисплеями для весов)

1 x дисплей Straight 8 NeoPixel

2 переключателя уровня

1 блок питания 5 В

Шаг 2: Дисплей ДЕНЬ

Дисплей ДЕНЬ
Дисплей ДЕНЬ
Дисплей ДЕНЬ
Дисплей ДЕНЬ

Для этого я использовал часть старой кредитной карты в качестве основы, толстую карту (в моем случае фотобумагу плотностью 300 г / м2) и двусторонний монтажный скотч.

Это всего лишь 2 полоски ленты с прорезями, вырезанными ножом для рукоделия, расстояние между светодиодами на плате NeoPixel.

Тонкие полоски карточки используются для создания канала на каждый день.

Названия дней напечатаны на прозрачной ленте этикеточной машиной Dymo.

Шаг 3: Подключение и программное обеспечение

Ассортимент продукции ESP8266 превосходен в основном благодаря

а) Они очень дешевы

б) Им нужно очень мало внешних компонентов

Мне нужно было 5 В для дисплеев и 3 В для ESP, поэтому я использовал пару переключателей уровня с источником питания 5 В.

MAX7219 требует всего 3 контакта для управления 8 дисплеями, это контакты 1 (Din), 12 (Load / CS) и 13 (Clock).

Они подключаются через переключатель уровня.

Код выглядит следующим образом:

// входы: вывод DIN, вывод CLK, вывод LOAD. количество фишекLedControl mydisplay = LedControl (3, 2, 1, 1)

LedControl dateisp = LedControl (7, 6, 5, 1);

Количество микросхем установлено на 1, потому что я рассматриваю 2 дисплея как отдельные элементы, а не использую DOUT и каскадирую их.

NeoPixel подключен к цифровому выходу 4.

#define PIN 4

#define NUMPIXELS 7 (игнорируя 1 из 8 светодиодов)

Есть несколько #includes, все из которых можно найти на GitHub.

Необходимо ввести SSID и ПАРОЛЬ маршрутизатора и выбрать NTP-сервер (я искал бесплатные NTP-серверы в Google).

Шаг 4: при включении

При включении светодиоды NeoPixel мигают, затем на 7-сегментных дисплеях отображаются чередующиеся буквы «c» и «8» до тех пор, пока не будет установлено соединение с маршрутизатором.

Если все сегменты показывают contant c8, это означает, что соединение с сервером NTP не было установлено, сброс должен решить эту проблему.

Как только соединение установлено, отображаются время и дата, а день обозначается синим светодиодом.

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