duminică, 15 septembrie 2019

Ceas matriceal animat cu date din server NTP (fara RTC)


   Fata de ceasurile anterioare, care au avut toate RTC (ceas de timp real cu DS1307 sau DS3231), de data asta voi folosi datele citite on-line de la un server NTP.
   Materialul de pornire mi-a fost dat de Vlad Gheorghe si anume un director de pe Github: G6EJD/ESP8266-MAX7219-LED-4x8x8-Matrix-Clock
   Se foloseste o placa de dezvoltare cu ESP8266 (sau ESP32) si 4 module de 8x8 leduri controlate de MAX7219, schema fiind extrem de simpla, legand
    Eu am folosit o placa de dezvoltare WeMos D1 cu format de Arduino Uno;
deci am folosit alimentarea de 3,3V si masa (GND), apoi am legat pinul DIN la GPIO11/MOSI/D7, CS  la GPIO12/MISO/(D12) si CLK la GPIO13/SCK/D5. Alimentarea se face, cel putin de teste, la o mufa USB, apoi voi folosi un incarcator de telefon.
    Folosind programul modificat de mine, NTP_matrix_2.ino, pe afisaj se arata ora, cu secunde ce clipesc, 
apoi la 60 secunde se indica ziua si data, in engleza (momentan).

   Informatiile de la serverul NTP se convertesc intr-un sir cu functia strftime despre care puteti sa cititi la http://www.cplusplus.com/reference/ctime/strftime/ pentru a va configura mesajul animat, eu lasand in paranteze, ziua si data, dar se pot extrage mai multe infirmatii.
   Configurarea zonei a fost facuta de Vlad si se face in liniile 
urmand identificarea din pagina zones.csv.
    Am facut 2 filmulete, din care se vede mai rapid cum functioneaza ceasul:

PS: Am adaugat si verificarea conectarii la reteaua Wi-Fi locala si, daca s-a pierdut legatura, se reface legatura cu router-ul, vedeti sketch-ul NTP_matrix_2v1.ino.

Niciun comentariu:

Trimiteți un comentariu