Turinys:

Dar vienas laikrodis: 4 žingsniai
Dar vienas laikrodis: 4 žingsniai

Video: Dar vienas laikrodis: 4 žingsniai

Video: Dar vienas laikrodis: 4 žingsniai
Video: Huawei GT4 išmanieji laikrodžiai | MP.LT 2024, Lapkritis
Anonim
Dar vienas laikrodis
Dar vienas laikrodis

Kaip matyti iš ankstesnių įkėlimų, iš kai kurių senų svėrimo įrenginių gavau maždaug 7 segmentų ekrano plokštes.

Mano ankstesnės pastangos buvo naudojamos „Arduino“su realaus laiko laikrodžio moduliu.

Ši instrukcija naudoja ESP8266 D1 Mini, prijungtą prie NTP serverio!

Kodas pagrįstas pavyzdžiu iš bibliotekos ESP8266WiFi.

Aš nesileisiu į detales dėl 7 segmentų ekrano laidų, nes internete yra dešimtys pavyzdžių. Dvi mano turimos plokštės naudoja MAX7219 dekoderio tvarkyklės mikroschemą, joms reikia tik 3 kaiščių, kad būtų galima valdyti iki 8 x 7 segmentų ekranų.

Aš taip pat norėjau parodyti datą, todėl reikėjo dar 3 smeigtukų!

Man reikėjo dar 7 išėjimų, kad galėčiau parodyti dieną! Norėdami išvengti išvesties kaiščių trūkumo, pasirinkau „Neo Pixel“ekraną, 1 kaištį, 7 išėjimus!

1 žingsnis: Aparatūra

Aparatūra
Aparatūra
Aparatūra
Aparatūra
Aparatūra
Aparatūra

Reikalingos dalys

12 x 7 segmentų ekranai (mano atveju man labai pasisekė, kad turėjau porą senų svėrimo mašinų lentų, kurios sutaupė labai daug laidų.

1 x ESP8266 D1 Mini ARBA bet kuris ESP8266 su 7 ar daugiau skaitmeninių išėjimų

2 x MAX7129 (vėlgi, man pasisekė turėti svarstyklių ekranus)

1 x tiesus 8 „NeoPixel“ekranas

2 x lygio perjungikliai

1 x 5V maitinimo šaltinis

2 žingsnis: DIENOS ekranas

DIENOS ekranas
DIENOS ekranas
DIENOS ekranas
DIENOS ekranas

Tam pagrindui panaudojau dalį senos kredito kortelės, šiek tiek storos kortelės (mano atveju 300 g / m2 fotopopieriaus) ir šiek tiek dvipusės tvirtinimo juostos.

Tai tik 2 juostos juostelės su plyšiais, supjaustytais amatų peiliu. Tarpai yra atstumas tarp šviesos diodų „NeoPixel“plokštėje.

Plonos kortelės juostelės naudojamos kiekvienai dienai sukurti kanalą.

Dienos pavadinimai spausdinami ant skaidrios juostos su „Dymo“etikečių gamintoju.

3 veiksmas: prisijungimas ir programinė įranga

ESP8266 produktų asortimentas yra puikus, nes

a) Jie yra pigūs

b) Jiems reikia labai nedaug išorinių komponentų

Man reikėjo 5 V ekranams ir 3 V ESP, todėl naudojau porą lygių perjungiklių su 5 V maitinimo šaltiniu.

MAX7219 reikia tik 3 kaiščių, kad būtų galima valdyti iki 8 ekranų, tai yra 1 (Din), 12 (Load / CS) ir 13 (Clock).

Jie yra sujungti per lygio perjungiklį.

Kodas yra toks:

// įėjimai: DIN kaištis, CLK kaištis, LOAD kaištis. lustų skaičiusLedControl mydisplay = LedControl (3, 2, 1, 1)

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

Žetonų skaičius nustatytas 1, nes aš du ekranus traktuoju kaip atskirus elementus, o ne naudoju DOUT ir juos kaskaduoju.

„NeoPixel“prijungtas prie 4 skaitmeninės išvesties

#define PIN 4

#define NUMPIXELS 7 (ignoruojant 1 iš 8 šviesos diodų)

Yra keletas #apima visus, kuriuos galima rasti „GitHub“.

Reikia įvesti maršrutizatoriaus SSID ir PASSWORD ir pasirinkti NTP serverį („I googled free NTP Servers“).

4 žingsnis: įjunkite maitinimą

Įjungus, „NeoPixel“šviesos diodai yra raibuliuojami, tada 7 segmentų ekranuose rodomi alternatyvūs „c“ir „8“, kol bus užmegztas ryšys su maršrutizatoriumi.

Jei visuose segmentuose rodomas turinys c8, tai reiškia, kad NTP serverio ryšys nebuvo užmegztas, tai turėtų išspręsti iš naujo.

Užmezgus ryšį, rodomas laikas ir data, diena rodoma mėlynu šviesos diodu.

Rekomenduojamas: