Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Zegar tekstowy na procesorze STM32

valdi2003 02 Feb 2019 23:21 4803 22
Nazwa.pl
  • Witam ,
    Wykonałem zegar tekstowy z strony https://www.mikrocontroller.net/articles/WordClock_mit_WS2812#Download . Zegar zbudowany jest w oparciu o procesor STM32 , a dokładniej na płytce STM32F103-Min Board . Drugim ważnym elementem jest ESP8266( ESP-12F) do komunikacji z zegarem z poziomu strony www . Inne elementy użyte do budowy , a właściwie gotowe moduły to : RTC-DS3231 , DF Player , Amplifier-PAM8403 , moduł zasilania 3,3 V , DS-18B20 ,Fotorezystor , Odbiornik podczerwieni , reszta elementów zawarta jest w spisie . Do podświetlania użyłem taśm led WS-2812B . Komunikacja z zegarem odbywa się za pomocą strony www , pilota podczerwieni , lub telefonu opartego na androidzie . Do budowy można użyć płytek oprócz wymienionej wyżej STM32F401 Nucleo, STM32F411 Nucleo oraz taśm led WS2812 , WS2812B , APA102 ,SK6812 szczegółowy opis znajduje się na podanej w linku stronie . Wszystkie elementy zostały zamontowane na płytce bazowej . Jako obudowę zegara wykorzystałem sklejkę 5 mm , a rozmiar całej obudowy to 460 x 460 mm . Matryca led jest 18 x 18 plus podświetlenie ambilight na bokach 4 x 15 . Czas wyświetlany jest w systemie 24 godzinnym AM/PM . Ja wykonałem matrycę 20 x 20 , gdyż chciałem żeby wyświetlanie godzin było w systemie 24 godzinnym , ale pełne tzn. dwunasta , trzynasta ... dwudziesta trzecia i tu się przeliczyłem . Niestety nie znam się na programowaniu , aby dokonać potrzebnych zmian w programie . Liczyłem na tamtejsze forum że ktoś pomoże , ale na razie nikt nie wyraził chęci , może któraś z osób na naszym portalu wyrazi chęć pomocy . Nie chciałbym przerabiać zegara pod matrycę 18 x 18 . Program w wersji źródłowej znajduje się w archiwum "Pliki źródłowe wordclock24h" w podkatalogu "wclock24-F103" . Program do kompilacji znajduje się na stronie https://www.embitz.org/ . Drugi plik potrzebny do poprawnej pracy zegara to plik z rozszerzeniem .txt , który ładuje się do ESP-12F ze strony www z katalogu SPIFFS , a program oraz pliki potrzebne do kompilacji znajdują się w archiwum "make-tables" . Skompilowane pliki do matrycy 18 x 18 znajdują się w archiwum "Wordclock-tables" . Zamieszczam też schemat i płytkę bazową , pozostałe pliki związane z wykonaniem zegara oraz kilka zdjęć i film z montażu zegara . Po bardziej szczegółowy opis odsyłam na stronę podaną w pierwszym linku .
    Zegar tekstowy na procesorze STM32
    Zegar tekstowy na procesorze STM32
    Zegar tekstowy na procesorze STM32
    Zegar tekstowy na procesorze STM32




    Cool? Ranking DIY
    About Author
    valdi2003
    Level 15  
    Offline 
    valdi2003 wrote 199 posts with rating 92. Been with us since 2004 year.
  • Nazwa.pl
  • #3
    smiland
    Level 15  
    Kolego Piottr242 zegar tekstowy czyli czas wyświetla się w postaci odpowiednio podświetlonych pól
    Opis w linku podanym przez autora wszystko wyjaśnia
    wc24h-tables-pl - Polnisches Layout 18x18
    JEST#TRZECIASZOSTA
    DZIEWIATADZIESIATA
    SIODMACZWARTAOSMA#
    PIATADRUGAPIERWSZA
    DWUNASTAJEDENASTA#
    #PIECDZIESIAT#####
    ####DWADZIESCIA###
    ZEROCZTERDZIESCI##
    #TRZYDZIESCI#ZERO#
    DZIESIECTRZYNASCIE
    JEDENASCIEDZIEWIEC
    #####SZESNASCIE###
    ###DZIEWIETNASCIE#
    CZTERNASCIE#SZESC#
    ######PIETNASCIE##
    OSIEMNASCIE#CZTERY
    PIECDWANASCIE#####
    SIEDEMNASCIE#PM#AM
  • Nazwa.pl
  • #4
    gabik001
    Level 37  
    smiland wrote:
    Kolego Piottr242 zegar tekstowy czyli czas wyświetla się w postaci odpowiednio podświetlonych pól
    Opis w linku podanym przez autora wszystko wyjaśnia
    wc24h-tables-pl - Polnisches Layout 18x18
    JEST#TRZECIASZOSTA
    DZIEWIATADZIESIATA
    SIODMACZWARTAOSMA#
    PIATADRUGAPIERWSZA
    DWUNASTAJEDENASTA#
    #PIECDZIESIAT#####
    ####DWADZIESCIA###
    ZEROCZTERDZIESCI##
    #TRZYDZIESCI#ZERO#
    DZIESIECTRZYNASCIE
    JEDENASCIEDZIEWIEC
    #####SZESNASCIE###
    ###DZIEWIETNASCIE#
    CZTERNASCIE#SZESC#
    ######PIETNASCIE##
    OSIEMNASCIE#CZTERY
    PIECDWANASCIE#####
    SIEDEMNASCIE#PM#AM

    Zgoda, tylko na filmiku nie ma szablonu z literami. Sam się głowiłem jak...
  • #5
    Kuniarz
    Moderator of Designing
    valdi2003 wrote:
    Niestety nie znam się na programowaniu , aby dokonać potrzebnych zmian w programie . Liczyłem na tamtejsze forum że ktoś pomoże , ale na razie nikt nie wyraził chęci ,


    ...czyli wykonałeś ten zegar i działa, czy jeszcze nie ? Publikujemy tutaj konstrukcje DOKOŃCZONE.
  • #6
    .:KoSik:.
    Level 18  
    valdi2003 wrote:
    Czas wyświetlany jest w systemie 24 godzinnym AM/PM / Niestety nie znam się na programowaniu , aby dokonać potrzebnych zmian w programie . Liczyłem na tamtejsze forum że ktoś pomoże , ale na razie nikt nie wyraził chęci , może któraś z osób na naszym portalu wyrazi chęć pomocy .

    Czyli nie jest wyświetlany w tym systemie. Na dodatek właściwie w ogóle nie jest wyświetlany.

    valdi2003 wrote:
    Zegar zbudowany jest w oparciu o procesor STM32 , a dokładniej na płytce STM32F103-Min Board . Drugim ważnym elementem jest ESP8266( ESP-12F) do komunikacji z zegarem z poziomu strony www . Inne elementy użyte do budowy , a właściwie gotowe moduły to : RTC-DS3231 , DF Player , Amplifier-PAM8403 , moduł zasilania 3,3 V , DS-18B20 ,Fotorezystor , Odbiornik podczerwieni , reszta elementów zawarta jest w spisie .

    Nie napisałeś nic więcej o funkcjonalności, a wygląda na to, że on potrafi jeszcze odczytać godzinę i temperaturę. Dziwi mnie, że ktoś użył STM32 jeśli w ESP8266 siedzi całkiem niezły uC który bez problemu powinien obsłużyć wszystko.

    valdi2003 wrote:
    podświetlenie ambilight na bokach 4 x 15

    Co to ambilight robi?

    valdi2003 wrote:
    Komunikacja z zegarem odbywa się za pomocą strony www , pilota podczerwieni , lub telefonu opartego na androidzie

    Wiem, że się czepiam ale po co implementować tyle sposobów do porozumiewania się z zegarkiem? Moim zdaniem dużo lepszym pomysłem byłoby wywalenie tych zupełnie niepotrzebnych bajerów łącznie z modułem RTC i synchronizowanie zegara przez internet.

    Marzy mi się taki zegar i powoli przymierzam się do zrobienia czegoś podobnego. Podoba mi się Twoje wykonanie. Jak wykonałeś kratownicę? Gdzie cyferblat (literblat :lol: )?
  • #7
    valdi2003
    Level 15  
    Do moderatora , może faktycznie trzeba było zamieścić w innym dziale . Odnośnie dalszych pytań
    .:KoSik:. wrote:
    Nie napisałeś nic więcej o funkcjonalności, a wygląda na to, że on potrafi jeszcze odczytać godzinę i temperaturę. Dziwi mnie, że ktoś użył STM32 jeśli w ESP8266 siedzi całkiem niezły uC który bez problemu powinien obsłużyć wszystko.

    Szczegółowy opis jest podany w pierwszym linku .
    .:KoSik:. wrote:
    Co to ambilight robi?
    Jest to sekundnik , albo podświetlanie boczne w różnych sekwencjach .
    .:KoSik:. wrote:
    Marzy mi się taki zegar i powoli przymierzam się do zrobienia czegoś podobnego. Podoba mi się Twoje wykonanie. Jak wykonałeś kratownicę? Gdzie cyferblat (literblat :lol: )?
    Matrycę zaprojektowałem w Corelu , a następnie została wycięta laserowo . Odnośnie matrycy liter to na razie nie została wycięta , gdyż liczę że uda się urchomić wersję 20 x 20 .
  • #8
    .:KoSik:.
    Level 18  
    valdi2003 wrote:
    Szczegółowy opis jest podany w pierwszym linku .

    Oczywiście znalazłem lecz wydaje mi się, że zamieszczając post tutaj powinieneś pokusić się o choćby minimalne opisanie urządzenia, tym bardziej, że nie każdy tutaj zna niemiecki.

    valdi2003 wrote:
    Matrycę zaprojektowałem w Corelu , a następnie została wycięta laserowo . Odnośnie matrycy liter to na razie nie została wycięta , gdyż liczę że uda się urchomić wersję 20 x 20

    Możesz napisać coś więcej? Rozumiem, że gdzieś zamawiałeś? Matrycę liter będziesz robił tak jak w projekcie? Ile to kosztuje?
  • #9
    Kuniarz
    Moderator of Designing
    Moderated By Kuniarz:

    Przeniosłem do działu konstrukcji nieukończonych.

  • #10
    valdi2003
    Level 15  
    .:KoSik:. wrote:
    czywiście znalazłem lecz wydaje mi się, że zamieszczając post tutaj powinieneś pokusić się o choćby minimalne opisanie urządzenia, tym bardziej, że nie każdy tutaj zna niemiecki.
    Ja też nie znam niemieckiego musiałem tłumaczyć przez google . Odnośnie obudowy to firmę , która wycięła ją ze sklejki 5 mm znalazłem na Allegro , przesłałem projekt w Corelu , koszt około 150 zł , gdyż musieli wyciąć dwie płyty w formacie jedną 460 x 460 mm , a drugą 340 x340 mm , które następnie zostały sklejone ze sobą . Zostały wycięte jeszcze boki i wsporniki . Matryca liter będzie wycięta z czarnej foli . Jak będzie zainteresowanie to zamieszczę potrzebne pliki do matrycy . Rozmieszczenie liter Zegar tekstowy na procesorze STM32
  • #11
    Piottr242
    Level 23  
    gabik001 wrote:
    Zgoda, tylko na filmiku nie ma szablonu z literami. Sam się głowiłem jak...

    Nie widać tego w przedstawionym materiale, a na klikanie w linki nie mam czasu. Albo się przedstawia swój projekt w stanie kompletnym i pozwalającym na zrozumienie działania na podstawie przedstawionych fotografii, albo lepiej poczekać.

    Tego obrazka dodanego w ostatnim poście zabrakło na początku. Wtedy nie byłoby mojego pytania.
  • #12
    gabik001
    Level 37  
    Piottr242 wrote:
    gabik001 wrote:
    Zgoda, tylko na filmiku nie ma szablonu z literami. Sam się głowiłem jak...

    Nie widać tego w przedstawionym materiale, a na klikanie w linki nie mam czasu. Albo się przedstawia swój projekt w stanie kompletnym i pozwalającym na zrozumienie działania na podstawie przedstawionych fotografii, albo lepiej poczekać.

    Tego obrazka dodanego w ostatnim poście zabrakło na początku. Wtedy nie byłoby mojego pytania.

    Dlatego teraz projekt znajduje się w odpowiednim dziale.
  • #13
    Sas_AS
    Level 16  
    Projekt okej, z translacją na język ojczysty może być problem. Jak jest wyświetlana godzina trzydzieści minut po północy ? Jakoś mi kolejność wyrazów na samej matrycy nie podoba. Wychodzi, że może być JEST CZWARTA DWUDZIESTA co składniowo nie jest poprawnie i logicznie zresztą też, choć wiele osób mówi potocznie, że jest dwudziesta czwarta trzydzieści. Bardziej poprawnie jest ZERO, tylko jeśli godziną ZERO ma być to ZERO zaczynające się z komórki 0-11 to wychodzi napis JEST TRZYDZIEŚCI ZERO. Całkowite pominięcie wyświetlania informacji o północy też mi jakoś nie pasuje. Jest sporo wolnych przestrzeni w matrycy, nie można było upchać gdzieś ZERO w sekcji godzin np. 16-0 (docelowo zwrot JEST ZERO TRZYDZIEŚCI) lub pokusić się o zwrot PÓŁNOC w górnej sekcji, dla ambitnych poprzesuwać i na dole wygospodarować POPÓŁNOCY (o ile się da).
  • #14
    valdi2003
    Level 15  
    Sas_AS wrote:
    Wychodzi, że może być JEST CZWARTA DWUDZIESTA co składniowo nie jest poprawnie i logicznie zresztą też, choć wiele osób mówi potocznie, że jest dwudziesta czwarta trzydzieści. Bardziej poprawnie jest ZERO, tylko jeśli godziną ZERO ma być to ZERO zaczynające się z komórki 0-11 to wychodzi napis JEST TRZYDZIEŚCI ZERO. Całkowite pominięcie wyświetlania informacji o północy też mi jakoś nie pasuje. Jest sporo wolnych przestrzeni w matrycy, nie można było upchać gdzieś ZERO w sekcji godzin np. 16-0 (docelowo zwrot JEST ZERO TRZYDZIEŚCI) lub pokusić się o zwrot PÓŁNOC w górnej sekcji, dla ambitnych poprzesuwać i na dole wygospodarować POPÓŁNOCY (o ile się da).

    Wszystko jest dobrze wyświetlanie . Wyświetlanie przytoczonej godziny przez kolegę JEST CZWARTA DWUDZIESTA wyświetla JEST CZWARTA DWADZIEŚCIA po północy np. JEST ZERO ZERO JEDEN . Myślę że forma jest poprawna . Zegar posiada tak dużo różnych funkcji między innymi gry i różne inne nakładki w postaci ikon że muszę kontaktować się z autorem żeby to wszystko współdziałało . Niestety występują jeszcze błędy . Jak zostaną usunięte zamieszczę kompletny opis . Zegar w wersji matrycy 18 x 18 z polskimi literami działa .
  • #16
    Sas_AS
    Level 16  
    valdi2003 wrote:
    ... JEST ZERO ZERO JEDEN ...
    czyli godzina 0:01. Okej, czyli godzina 0:16 jest wyświetlana jako JEST SZESNAŚCIE ZERO a 0:30 jako JEST TRZYDZIEŚCI ZERO , gdyż pierwsze słowo ZERO na przedstawionej tablicy jest po słowie SZESNAŚCIE czy TRZYDZIEŚCI czytając słowa po kolei w kolejności z góry na dół. Sugeruję tylko, czy nie warto dołożyć słowa ZERO dla godzin zaczynającej się od komórki 16;0, wtedy będzie JEST ZERO SZESNAŚCIE lub JEST ZERO TRZYDZIEŚCI. Życzę powodzenia w dopracowywaniu błędów, owocnych konwersacji z autorem i oczywiście czekamy na efekt końcowy, najlepiej przedstawionej na krótkim filmie.
  • #17
    valdi2003
    Level 15  
    Sas_AS wrote:
    JEST SZESNAŚCIE ZERO a 0:30 jako JEST TRZYDZIEŚCI ZERO

    JEST ZERO SZESNAŚCIE , JEST ZERO TRZYDZIEŚCI
    Niestety jak na razie niema filmu , gdyż matryca liter jest na razie wykonana z arkuszu papieru . Próbowałem to sfilmować , ale efekt jest mizerny , litery podświetlone zlewają się w jedną całość . Póki nie zagra wszystko to szkoda zamawiać wycięcia z folii .

    Dodano po 7 [godziny] 56 [minuty]:

    Posługuje się może ktoś kompilatorem gcc np. MinGW prosiłbym o kontakt na maila .
  • #18
    valdi2003
    Level 15  
    Witam ,
    Wracam do tematu . Zegar skończony i przetestowany . Podziękowania dla autora za pomoc . Kilka krótkich filmów z pracy zegara wykonane telefonem .












    Jedna z dwóch gier Tetris









    Na dłuższy film zapraszam do oglądnięcia https://drive.google.com/open?id=1m-RRni-fTIlGgUioTMOwD3g0uDQEDeyi
    Dokonane zmiany . W matryc liter dodałem jeszcze jedno zero , gdyż wyświetlanie godziny zero ( północ ) nie bardzo wyglądało . Teraz jest wyświetlane ZERO ZERO ZERO itd . Dodałem też symbol *C dla temperatury , która wyświetlana jest w pełnych stopniach , ponieważ literowo nie mieściła się w polu matrycy .
    Zegar tekstowy na procesorze STM32
    Powstała nowa płytka bazowa , gdyż zrezygnowałem z amplifiera pam8403 , który był umieszczony na poprzedniej płytce . W czasie testowania doszedłem do wniosku że jest on zbędny . Moc dźwięku z DF-Playera jest wystarczająca . Dodałem natomiast drugie gniazdo głośnikowe , gdyby ktoś chciał zamontować dwa głośniku . Wystarczy odpowiednio połączyć zwory na płytce oznaczone jako SJ1 i SJ3 . Tyle odnośnie zmian . Zamieszczam też opis montażu , niektóre wątki w opisie zaczerpnięte są ze strony autora . Niestety nie wszystko udało się przetłumaczyć , gdyż w tabelach użyte są skróty dla których nie znalazłem tłumaczenia .
    Opis montażu :

    Płytka bazowa
    Zegar tekstowy na procesorze STM32
    Elementy:
    Płytka STM32F103C8T6
    Zegar tekstowy na procesorze STM32
    USB konwerter
    Zegar tekstowy na procesorze STM32
    Programator ST-Link-V2
    Zegar tekstowy na procesorze STM32
    Płytka ESP-12F
    Zegar tekstowy na procesorze STM32
    Płytka RTC-2331
    Zegar tekstowy na procesorze STM32
    Płytka zasilacza 3,3V
    Zegar tekstowy na procesorze STM32
    Taśma led WS2812B 60 diod na metr w ilości 400 led + opcjonalnie Ambilight 60 led
    Zegar tekstowy na procesorze STM32
    Zegar tekstowy na procesorze STM32
    Opcjonalnie odbiornik DCF Pollin
    Zegar tekstowy na procesorze STM32
    Opcjonalnie fotorezystor LDR07
    Opcjonalnie odbiornik podczerwieni 38KHz
    Odpowiedniej mocy zasilacz 5V

    Wszystkie te elementy + wymienione w listingu montujemy na płytce bazowe.

    Uwagi do montażu:
    Płytkę RTC montujemy w ten sposób , aby bateria była u góry i dla uniknięcia niepotrzebnych niespodzianek wylutowywujemy rezystor połączony z diodą , chyba że ktoś chce zamiast zwykłej baterii użyć litowej , ale wtedy Moduł RTC musi być podłączony do napięcia 5V . Rezystory oznaczone * montujemy wówczas gdy nie chcemy używać danych modułów resztę elementów powiązanych z modułem nie montujemy .

    Montaż pasków led .
    Taśmę tniemy na odcinki po 20 sztuk ( dotyczy to matrycy 20 x20 ). Najlepiej montować je na blasze aluminiowej o grubości 1 mm i odpowiedniej wielkości u mnie jest to rozmiar 350 x 350 mm . Następnie naklejamy. Odległość pasków licząc od środka do środka wynosi 16,8 mm . Naklejanie odbywa się w ten sposób . Zaczynamy od górnego paska patrząc na kierunek , strzałki muszą być skierowane w prawą stronę następny pasek naklejamy odwrotnie , czyli strzałki skierowane są w lewą stronę i tak montujemy na przemian do końca . Diody muszą się pokrywać z kratownicą obudowy . Gdy uporaliśmy się z naklejaniem przystępujemy do łączenia poszczególnych pasków .Zaczynamy od góry z prawej strony i łączymy tak :
    GND z GND, DOUT z DIN i 5V z 5V
    i tak do końca . Zegar tekstowy na procesorze STM32
    Przechodzimy na lewą stronę i łączymy następująco :
    Przewód zasilający lutujemy zaczynając od pierwszego paska i tak GND z GND i 5V z 5V . Resztę przewodów zasilających lutujemy co drugi pasek . Teraz pozostało nam jeszcze połączyć punkty DIN i DOUT . Łączenie zaczynamy od drugiego paska i tak lutujemy , aż wszystkie kawałki będą połączone . Punkt DIN na pierwszym pasku i punkt DOUT na ostatnim muszą pozostać wolne .
    Zegar tekstowy na procesorze STM32
    Ostatni etap łączenia . Diodę stanu , czyli dodatkową pojedynczą diodę łączymy DI z gniazdem na płytce bazowej oznaczonej jako WS2812 i oczywiście nie zapominając połączyć GND z GND i 5V z 5V . DOUT łączymy z DI na pierwszym pasku led . Jeżeli będzie używany Ambilight
    dodatkowe boczne diody w ilości 20 , 30 lub 60 sztuk , to punkt DOUT na ostatnim pasku matrycy łączymy z DI na pierwszym pasku Ambilight patrząc od strony montażu będzie to pasek na lewym boku obudowy . Resztę pasków łączymy odpowiednio DI z DO , GND z GND i 5V z 5V zgodnie z ruchem wskazówek zegara . Proszę nie zapomnieć że jesteśmy cały czas po stronie montażu , czyli po obróceniu całości będzie to bok prawy .

    Programowanie:

    Do zaprogramowania STM32 będziemy potrzebowali oprogramowania STM32 ST-Link Utility , które pobieramy http://www.st.com/en/development-tools/st-link-v2.html .
    Podłączamy programator ST-Link V2 według opisu
    St-Link v2 "VCC" z "3.3" lub "3.3V" z płyty STM32F103C
    St-Link v2 "SWDIO" z "DIO" lub "SWDIO" z płyty STM32F103C
    St-Link v2 "SWCLK" z "CLK" lub "SWCLK" z płyty STM32F103C
    St-Link v2 "GND" z "GND" STM32F103C
    Należy dokładnie sprawdzić połączenia , gdyż programatory posiadają różne wyprowadzenia .
    Zworę na płycie STM32F103C przestawiamy na pozycję „1” oznaczenie na zdjęciu na czerwono .
    Następnie podłączamy programator do komputera i otwieramy program STM32 ST-Link Utility.
    Zegar tekstowy na procesorze STM32
    Klikamy na okno File następnie Open File i otwieramy odpowiedni plik.
    Zegar tekstowy na procesorze STM32
    Następnie klikamy na okno Target w którym klikamy na Connect i jak program zgłosi że połączył się z procesorem , to klikamy ponownie Target , a następnie Program&Verifi .
    Zegar tekstowy na procesorze STM32
    Zegar tekstowy na procesorze STM32
    Gdy ukaże się okno dialogowe przyciskamy start . Rozpocznie się wgrywanie programu do procesora . Gdy wszystko przebiegnie pomyślnie to ukaże się nam komunikat
    Zegar tekstowy na procesorze STM32
    Klikamy na Target i rozłączamy połączenie naciskając na Disconnect . Mamy zaprogramowany procesor STM32 .
    Przechodzimy do zaprogramowania ESP-12F .
    Będzie nam potrzebny konwerter USB i odpowiedni program , który pobieramy https://github.com/nodemcu/nodemcu-flasher następnie łączymy konwerter z wejściem UART na płytce bazowej . Połączenie wygląda tak : zwieramy piny 2 i 3 gniazda oznaczonego na płytce bazowej jako PROG-ESP . Następnie łączymy konwerter USB z gniazdem na płytce bazowej oznaczonego jako URAT 1:1 . UWAGA : połączenia TX dokonujemy dopiero jak błyśnie dioda na ESP . Gdy mamy podłączone przewody naciskamy jednocześnie przyciski RESET na płytce STM32 i przycisk USER na płytce bazowej . Puszczamy przycisk RESET i po 2 sekundach USER .
    Ustawienia programu Flash powinny wyglądać tak
    Zegar tekstowy na procesorze STM32
    Gdy wszystko przebiegło pomyślnie ustawiamy zworę na złączu PROG-ESP na tryb RUN czyli piny 1 i 2 . Usuwamy zworę na płytce STM32 i podłączamy środkowy pin tego złącza z gniazdem na płytce bazowej oznaczonego jako BOOT0 .
    Zegar tekstowy na procesorze STM32
    Gdy mamy już wszystko zmontowane i zaprogramowane podłączamy zasilanie matrycy , czyli wpinamy wtyk IDE do gniazda i podłączamy zasilanie . W komputerze wyszukujemy nowej sieci będzie miała nazwę wordclock czasami może mieć nazwę ("ESPxxxx" albo "AI-Thinker_xxxxxx" )
    Klucz sieciowy to 1234567890 , gdy się połączymy otwieramy przeglądarkę i wpisujemy adres strony internetowej http://192.168.4.1/ . Zaraz po pojawieniu się interfejsu internetowego wybierz pozycję menu "Sieć", wybierz "Klient sieci WLAN" i wprowadź identyfikator SSID ("AP") oraz klucz routera WLAN i potwierdź wpis przyciskiem "Zapisz". ESP8266 moduł -WLAN zostaną ponownie skonfigurowane jako klient sieci bezprzewodowej. Jeśli to się udało, nowy adres IP pojawi się na wyświetlaczu. Strona przeglądarki staje się nieważna. Możesz teraz ponownie podłączyć komputer do poprzedniej bramy WLAN i użyć nowego adresu IP poniżej.
    Jeśli w miejscu, w którym ma działać zegar, nie ma WLAN, moduł WLAN ESP8266 może nadal działać jako punkt dostępowy ("AP"), dzięki czemu można go zdalnie sterować za pośrednictwem sieci WLAN. W takim przypadku nie należy wybierać "Klient WLAN", ale w "AP", ustawić odpowiedni identyfikator SSID i klucz o długości co najmniej 10 znaków. Następnie możesz połączyć się z komputerem / telefonem / tabletem w nowej sieci bezprzewodowej, aby zdalnie sterować zegarem przez przeglądarkę lub aplikację na Androida. Oczywiście dostęp do zewnętrznego serwera czasu nie jest już możliwy.
    Łączenie się za pomocą przycisku WPS . Naciskamy przycisk WPS na płytce bazowej i przycisk na routerze . Dioda led WLAN zacznie migać , a na wyświetlaczu pojawi się napis adresu IP . Jeśli ESP8266 jest już w trybie AP, WPS można również uruchomić w przeglądarce, klikając przycisk "WPS" na karcie Sieć .
    Klient WLAN
    Każde kolejne uruchomienie wykorzystuje tylko ustawienie "Klient WLAN". Gdy moduł ESP8266 WLAN połączy się z żądanym punktem dostępu ("AP"), wyświetlacz LED pokazuje nowy adres IP modułu w przewijanym tekście.
    Interfejs Web

    Main

    Oprócz danych wyjściowych zainstalowanej wersji oprogramowania, można również sprawdzić, między innymi, czy EEPROM został wykryty. Zostanie wydane "online" lub "offline". Jeśli nie masz połączenia z internetem, możesz ręcznie wprowadzić datę i godzinę na stronie głównej. Dodatkowo można tutaj określić tekst oznaczony jako ticker, który jest następnie wyprowadzany na wyświetlaczu. Przyciski "Power on" lub "Power off" mogą być używane do włączania i wyłączania wyświetlacza LED. Przyciski zasilania najpierw włączają lub wyłączają funkcję Ambilight. Można go jednak włączać i wyłączać osobno za pomocą odpowiednich przycisków. Działają one jednak tylko wtedy, gdy sam zegar jest w stanie "włączony". W przeciwnym razie zostaną one zignorowane. Po kliknięciu "Learn IR remote control" można uczyć pilota na podczerwień.
    Zegar tekstowy na procesorze STM32

    Network

    Tutaj wyświetlany jest aktualny adres IP i wersja oprogramowania modułu ESP8266. W tym miejscu można również określić połączenie z bramą lub routerem WLAN. W takim przypadku wybierz żądany punkt dostępu w wierszu "Klient sieci WLAN", a następnie wprowadź poprawny klucz. Ważne: jeśli klucz zawiera międzynarodowe znaki specjalne, takie jak umlauty, aplikacja WLAN może się nie udać, ponieważ interfejs sieciowy używa innego zestawu znaków niż punkt dostępu. W takim przypadku należy zmienić klucz w punkcie dostępu lub wybrać możliwość połączenia za pomocą WPS. Po ustawieniu, ustalane jest pożądane połączenie i prawdopodobnie nowy adres IP pojawia się na wyświetlaczu LED jako pasek. Nowością jest alternatywna możliwość integracji modułu ESP8266 z siecią poprzez WPS. W tym celu najpierw naciśnij przycisk WPS na routerze ( miga dioda WLAN), a następnie przycisk WPS na tarczy - lub przycisk WPS w interfejsie internetowym. Tutaj możesz także skonfigurować serwer czasu i strefę czasową , zobacz odpowiedni rozdział . Za pomocą przycisku "Pobierz czas netto" bieżący czas można pobrać ad hoc ze skonfigurowanego serwera czasu. Jednak zazwyczaj nie jest to konieczne, ponieważ dzieje się to automatycznie co 3800 sekund.
    Zegar tekstowy na procesorze STM32

    Temperature

    Wyświetlana jest aktualna temperatura RTC i DS18xx (jeśli jest dostępna). Z powodu samonagrzewania się czujników mierzy się zwykle zbyt wysokie wartości. Z drugiej strony pomaga montaż DS18xx, na radiatorze. Jeśli nie jest to możliwe lub nie jest pożądane, można tutaj wprowadzić korektę w przyrostach co 0,5 ° C zarówno dla RTC, jak i DS18xx. Na przykład wpisanie "5" spowoduje odjęcie o 2.5 ° C od pomiaru. Wartości korekcyjne należy wybrać najwcześniej po kilku minutach, aby RTC / DS18xx osiągnęły końcową temperaturę roboczą. Po naciśnięciu przycisku "Wyświetlanie temperatury" aktualna temperatura jest wyświetlana na wyświetlaczu LED w postaci paska czasowego (WordClock12h) lub jako wyświetlacz słowny (Word-Clock24h). Ten ekran może również być automatyczny w określonym przedziale czasu, patrz wyświetlacz .
    Zegar tekstowy na procesorze STM32

    Weather

    Aby móc wyprowadzać dane pogodowe na zegar, potrzebny jest tak zwany identyfikator APPID (zwany także ID API), który można uzyskać bezpłatnie , rejestrując się na stronie http://openweathermap.org . Najprostszym sposobem ich znalezienia jest wpis w menu "Cena". Tam możesz wygenerować identyfikator API w darmowej wersji.
    APPID jest następnie wprowadzany tutaj. Ponadto konieczne jest:
    albo wskazanie miejsca
    lub określenie współrzędnych geograficznych (długość / szerokość)
    Zwłaszcza w dużych miastach warto podać dokładne współrzędne miejsca zamieszkania, ponieważ pogoda może już być lokalnie inna. Jeśli określono zarówno położenie, jak i współrzędne geograficzne, współrzędne mają priorytet. Możliwe też, że w mniejszych miejscowościach samo miejsce na openweathermap.org jest nieznane. W razie wątpliwości lepiej wybrać opcję współrzędnych. Podczas określania miejsca ważne jest, aby określić miasto w swoim własnym języku, np. "Koeln" lub "Muenchen". Specyfikacja np. "Kolonia" nie jest skuteczna, ponieważ jest to małe miejsce we Włoszech ;-)
    Jeśli nie znasz współrzędnych geograficznych żądanej lokalizacji, możesz określić je za pomocą Google Maps w przeglądarce. Kliknij prawym przyciskiem myszy na swoją lokalizację, a następnie "Co tu jest?" następnie wyświetla się pożądane współrzędne. Pierwsza liczba ( około 50) to szerokość geograficzna, a druga liczba (rzędu 7) to długość geograficzna. Liczby należy wprowadzać z kropką dziesiętną .
    Ostatnie kliknięcie przycisku "Pobierz pogodę" powie stronie openweathermap.org aktualną pogodę z wybranej lokalizacji. Dane pogodowe (temperatura i warunki pogodowe) są następnie wyświetlane jako pasek na wyświetlaczu. Ten ekran może następnie również odbywać się automatycznie w regulowanym przedziale czasu (patrz nakładki ).
    Zegar tekstowy na procesorze STM32

    LDR

    Po włączeniu opcji "Automatyczna jasność" włącza się automatyczna regulacja jasności, a rozszerzone menu staje się widoczne.
    Strona wyświetla aktualną wartość, którą ADC mierzy na LDR, ale tylko wtedy, gdy dokonano kalibracji wartości minimalnej i maksymalnej. Aby to zrobić, naciśnij raz przycisk minimum w zaciemnionym pomieszczeniu, raz przycisk maksymalny o maksymalnej jasności pokoju i zapisz za każdym razem, naciskając przycisk Zapisz. Automatyczna regulacja jasności wykorzystuje następnie te minimalne / maksymalne wartości do pomiaru jasności w celu porównania. W ten sposób można w pełni wykorzystać zakres jasności w automatycznym sterowaniu .
    Uwaga: Nie ma sensu trzymanie latarki bezpośrednio przed LDR podczas maksymalnego pomiaru. Ponieważ LDR zwykle znajduje się za przednim panelem, taka jasność nigdy nie jest osiągnięta w praktyce. Konsekwencją byłoby to, że diody LED zegara zaświeciłyby zbyt ciemno.
    Uwaga 2: Wyświetlana wartość LDR jest ograniczona do wartości minimalnej i maksymalnej. Jeśli są to 0, wartość LDR jest również wyświetlana jako 0. Następnie należy go skalibrować zgodnie z opisem.
    Zegar tekstowy na procesorze STM32

    Brightness

    Tutaj jest16 istniejących poziomów jasności można dostosować do warunków. W zależności od przeźroczystości przedniego panela można go tutaj ponownie ustawić.
    Domyślnie poziomy jasności są tutaj wybrane tak, aby zawsze ustawiona była pewna podstawowa jasność. Jeśli niższe poziomy jasności będą zbyt jasne, można to zmienić, przesuwając odpowiednie elementy sterujące w lewo.
    Zegar tekstowy na procesorze STM32

    Ambilight Brightness

    W przypadku Ambilight jest 16 istniejących poziomów jasności można również dostosować do okoliczności.
    Ponieważ zwykle nie używa się dyfuzora, zaleca się wybranie poziomów jasności pokazanych obok.
    Zegar tekstowy na procesorze STM32

    Display

    W opcji "Tryb wyświetlania" można wybrać między innymi różne warianty językowe uwzględniające regionalne różnice w wykorzystaniu czasu. Wyświetlanie "Jest" można tutaj włączyć lub wyłączyć.
    Podstawową jasność można regulować za pomocą suwaka "Jasność". Zostanie ono dezaktywowane, jeśli włączona jest automatyczna kontrola jasności. Rzeczywiste kolory wyświetlacza można następnie regulować za pomocą suwaków "R", "G" i "B". Są one jednak wyświetlane tylko wtedy, gdy animacja "Tęcza" nie jest ustawiona. Animacja tęczy steruje samymi kolorami.
    Wybierając opóźnienie znacznika, można sprawdzić prędkość "wiadomości na tickecie". 3 jest tutaj wartością domyślną. Niższe wartości powodują wyższą prędkość (do poziomu nieczytelności), wyższe wartości opóźniają prędkość znacznika.
    Jeżeli dla Ambilight „z wyświetlacza Color”, następnie ustawienia jasności i kolorów są wykorzystywane do Ambilight, co oznacza, że ​​kolory działają synchronicznie.
    Ponownie znajdują się przyciski do włączania i wyłączania wyświetlacza LED. Użycie przycisku „wyświetlacz test” wszystkie diody są włączone w połowie jasności (subiektywna) (wymaga około 1/4 maksymalnie możliwości poboru prądu) i koloru, aby sprawdzić działanie wszystkich diod .
    Zegar tekstowy na procesorze STM32

    Overlays

    Nakładki mogą być wyświetlane w regularnych odstępach czasu. Ważne są tutaj przedziały czasowe. Jeśli ustawione na 1, nakładka będzie wyświetlana co minutę, zawsze w hh: mm: 30.00. Na przykład, jeśli wybierzesz "5", nakładka będzie wyświetlana tylko co 5 minut.
    Obecnie dostępne są następujące nakładki:
    Ikona - wyświetla piktogram
    Data - wyświetl aktualną datę
    Temperatura - wyświetlanie aktualnej temperatury
    Ikona pogody - wyświetlanie piktogramu odpowiedniego do aktualnej pogody
    Pogoda Ikona FC - Wyświetlanie piktogramu pasującego do prognozy pogody (FC = Prognoza)
    Weather Ticker - Krótki raport pogodowy jako bieżący tekst (Ticker)
    Weather FC Ticker - Krótki raport meteorologiczny jako tekst bieżący (ticker) dla jutrzejszej pogody (FC = Forecast)
    Ticker - wyświetlanie stałego tekstu przewijania (ticker)
    DFPlayer – Odtwarza utwory MP3 za pomocą Folder and Track
    Ponieważ ikony są dostępne:
    Serce - pokazuje serce
    Xmas Tree - jodły
    Fajerwerki - pokaz fajerwerków, szczególnie odpowiedni na sylwestra
    1. Adwent – Jest wyświetlana przez 7 dni od pierwszego dnia Adwentu
    2. Adwent – Jest wyświetlana przez 7 dni od drugiego dnia Adwentu
    3. Adwent –Jest wyświetlana przez 7 dni od trzeciego dnia Adwentu
    4. Adwent – Jest wyświetlana przez 7 dni od pczwartego dnia Adwentu
    Blue Star - Blue Star Display (tylko WC24h)
    Ikony te znajdują się w ESP8266 spiffs i mogą zostać zmienione poprzez edycję pliku wc12h-icon.txt lub zmienione wc24h-icon.txt lub sami.
    W kolumnie "Czas trwania (s)" można określić, ile sekund ma zostać wyświetlona ikona (piktogram). Ten zakres można zmienić w przedziale 5 do 9 sekund.
    Jeśli są wypełniane różne interwały wyświetlania, dla wyświetlania jednoczesnego obowiązuje następująca reguła: Piktogram, który ma się pojawiać rzadziej, ma wyższy priorytet. W przypadku nakładek, które powinny być wyświetlane w dowolnym dniu, możesz zostawić Kod daty i dni kalendarzowe MM i DD pusty. Jednak po wprowadzeniu kodu daty lub daty kalendarza nakładki kalendarza będą miały pierwszeństwo przed tymi, które nie mają daty kalendarzowej - jeśli będą używać tego samego przedziału wyświetlania.
    Ponadto można również wprowadzić w dniach dane dotyczące używanych danych kalendarza, tj. Liczbę dni, przez które nakładka jest ważna. Należy zauważyć, że przeniesienie okresu kalendarzowego do następnego roku kalendarzowego (np. "22,12 za 30 dni") jest obecnie klasyfikowane jako okres wadliwy. W takim przypadku nakładka nie będzie wyświetlana. Od wersji 2.8.1 uwzględniane są również przelewy do następnego roku kalendarzowego. Do tego czasu możesz zrobić dwa wpisy: pierwszy ważny do 31.12, drugi z 1.1. przez X dni.
    Jako mobilne wakacje możesz wybrać:
    Różany poniedziałek (ostatni poniedziałek karnawału w tradycji niemieckiej )
    Wielkanoc
    1 do 4 dni Adwentu
    Prosty przykład do wyjaśnienia przedziałów wyświetlania:
    Interwał wyświetlania temperatury = 10
    Ikona "Serce" wyświetla interwał = 1
    Ikona "Interwał wyświetlania drzewa Jodły" 5
    Następnie wyniki:
    09:01 do 09:04: Serce
    09:05 zegar: Jodła
    09:06 do 09:09: Serce
    09:10 zegar: Temperatura
    09:11 do 09:14: Serce
    09:15 zegar: Jodła
    itp. Nakładki są w wyświetlane 30 sekund po pełnej minucie. Należy unikać takich samych odstępów, jeśli są podane bez daty kalendarzowej. Ponieważ wtedy konsekwentnie wyświetlana jest tylko pierwsza z dwóch zdefiniowanych nakładek.
    Dla przykładu pokazanego tutaj:
    Ikona "Advent1" jest wyświetlana co minutę od pierwszego dnia Adwentu przez 7 dni.
    ....
    Ikona "Advent4" jest wyświetlana co minutę od 4 dnia Adwentu przez 7 dni.
    Ikona "Jodła" jest wyświetlana co minutę od Wigilii do drugiego dnia Bożego Narodzenia.
    Ikona "Fajerwerki" jest wyświetlana w wieczór sylwestrowy.
    Tag "Happy Birthday" będzie wyświetlany co minutę 02.02. każdego roku - na jeden dzień.
    Jeśli żadne z powyższych danych kalendarza nie ma zastosowania, bieżąca data jest wyświetlana co minutę.
    Ikona pogody jest wyświetlana co sekundę, co daje wyższy priorytet co drugą minutę niż jakakolwiek poprzednia nakładka.
    Raport pogody jako przewijany tekst pojawia się co 5 minut i ma wyższy priorytet niż wszystkie wcześniej wymienione nakładki.
    Zegar tekstowy na procesorze STM32

    Animations

    Animacje są zawsze wykonywane, gdy wyświetlacz się zmienia, na przykład, gdy zegar się zmienia. Tutaj możesz wybrać żądaną animację, a także ustawić odpowiednią prędkość.
    Dostępne są następujące animacje:
    Brak - brak animacji
    Fade - powolne zanikanie liter
    Roll - Rolowanie słów od lewej / prawej / w górę / w dół
    Explode -Eksplozja - słowa wędrują szybko od centrum do miejsca wyświetlania w kształcie gwiazdy
    Snake - Wąż "zjada" ostatnie wyświetlane słowa
    Teletype - słowa są wyprowadzane z "prędkością maszyny do pisania"
    Cube -Kostka - Litera "spada" z zewnątrz do wewnątrz, aby wyczyścić wyświetlacz
    Matrix - Animacja matrycy z filmu o tej samej nazwie - w bieżącym kolorze wyświetlania
    Zielony Matrix - animacja Matrix z filmu o tej samej nazwie - w kolorze zielonym, który jest niezależny od aktualnego koloru wyświetlacza
    Drop - litery starych słów wypadają z wyświetlacza, litery nowych słów spadają z góry .
    Squeeze - słowa są "ściśnięte"
    Flicker -Migotanie - słowa "migają", a następnie pojawia się nowy napis .
    Szczególną cechą jest animacja "Losowe". Tutaj wybiera się inną animację za każdym razem przy użyciu generatora liczb losowych. Jeśli zadeklarujesz animację jako ulubioną, będzie ona używana przez losową animację "Losowe". W przeciwnym razie zostanie zignorowany przez Random.
    Prędkość można regulować w 15 krokach. Klikając przycisk "Domyślne", prędkość jest ustawiona na rozsądną wartość standardową.
    Jako dodatkową animację kolorów możesz wybrać i skonfigurować "Rainbow". Następnie wyświetlacz płynnie zmienia kolory diod LED.
    Zegar tekstowy na procesorze STM32

    Ambilight

    Tutaj możesz ustawić oddzielną animację dla Ambilight.
    Tryb Ambilight Clock wykorzystuje 20, 30 lub 60 diod LED Ambilight jako wyświetlacz sekundowy. Za pomocą "#LEDs" możesz ustawić ile diód LED Ambilight znajduje się w "kręgu". Ma to sens dla 20, 30 lub 60 led . Dodatkowo można ustawić za pomocą "Offset of second = 0" diodę LED, która jest zamontowana w środku powyżej jako druga 0.
    Przykład: Jeśli Ambilight zaczyna się od 60 diod LED w lewym dolnym rogu i jest zgodna z ruchem wskazówek zegara, wówczas druga dioda LED będzie miała numer 22. W tym miejscu należy wprowadzić tę liczbę.
    Tryb Ambilight "Clock2" odpowiada trybowi "Clock". W tym miejscu pokazane jest jednak powiększanie / zmniejszanie pełnego okręgu.
    W trybie Ambilight Rainbow, diody LED Ambilight powoli (przez kilka minut) przechodzą przez wszystkie kolory tęczy. To działa niezależnie od animacji kolorów "Tęcza" wyświetlacza.
    Jeśli na stronie wyświetlacza zostanie ustawione, że kolory Ambilight nie powinny być zsynchronizowane, to tutaj można również wybrać niezależnie od wyświetlacza osobną jasność i inną wartość RGB.
    Zegar tekstowy na procesorze STM32

    Timers

    Przy pomocy do ośmiu timerów można ustawić, kiedy zegar powinien być wyłączony lub włączony. Ustawienie można ustawić w zależności od dni tygodnia.
    W przykładzie po prawej stronie zegar jest wyłączany o 22:30 wieczorem w tygodniu. Zostanie włączony ponownie o godzinie 07:00. Po śniadaniu zegar wyłączy się o godzinie 08:00, a następnie ponownie o godzinie 17:00 wieczorem.
    W weekend wygląda to inaczej: tutaj zegar jest dłuższy wieczorem, a mianowicie do godziny 23:30. Rano, znów będzie o 9:00.
    Zależności Timer Matrycy i Timer Ambilight:
    Zegar tekstowy na procesorze STM32
    W związku z tym obowiązuje zasada specjalna: jeśli timer ma wyłączyć wyświetlacz, oba są wyłączone.
    Wszystkie inne zdarzenia są niezależne. Jeśli chcesz wyłączyć Ambilight osobno, powinieneś użyć Ambi-Timer. W każdym razie
    zapewnia to, że Ambilight nie świeci się przez całą noc.
    Zobacz także: Zegary Ambilight
    Zegar tekstowy na procesorze STM32

    Ambilight Timers

    Tutaj można ustawić czasomierze specjalnie dla Ambilight, na przykład, aby wyłączyć Ambilight osobno w nocy. Zmiana czasów, gdy sam zegar jest wyłączony, jest ignorowana. W przeciwnym razie obowiązują te same uwagi, co w poprzednim rozdziale.
    Zależności Timer matrycy i Timer Ambilight :
    Zegar tekstowy na procesorze STM32
    Dlatego obowiązuje specjalna reguła: Jeśli timer ma wyłączyć wyświetlacz, funkcja Ambilight jest również wyłączona.
    Zobacz także: Zegary
    Zegar tekstowy na procesorze STM32

    DFPlayer

    Tutaj utwory MP3 można skonfigurować do odtwarzania w określonych momentach lub wydarzeniach za pomocą odtwarzacza mini-DF.
    (. FAT16 lub systemu plików FAT32, max 32GB microSD (HC) -Karta) na karcie SD muszą być inwestowane w trzech podkatalogów:
    Folder "01" - Tryb dzwonka: Tutaj przechowywane są pliki MP3, które mają być odtwarzane co godzinę lub kwadrans.
    Folder "02" - Speak-Mode: Tutaj możesz zapisać pliki MP3, które "odczytują" słowa wyświetlane na zegarku.
    Folder "03" - Alarm: Zapisane tutaj pliki MP3 są odtwarzane po wprowadzonych godzinach alarmu.
    Folder "01"
    "Moda Bell"
    000.mp3 - gra o 00:00 (północ)
    001.mp3 - gra o 01:00 i 13:00
    002.mp3 - gra o 02:00 i 14:00
    ...
    012.mp3 - rozgrywany jest o godzinie 12:00
    013.mp3 - odtwarza przy xx: 15 co godzinę, jeśli aktywowano xx: 15
    014.mp3 - gra przy xx: 30 co godzinę, jeśli aktywowano xx: 30
    015.mp3 - odtwarza o wartości xx: 45 co godzinę, jeśli aktywowano xx: 45
    Na przykład mogą to być nagrania BigBen lub komunikaty czasowe.
    W podanych okresach spoczynku (Milczenia uciszyć Start Stop, w przykładzie 22:01 do 7:00) Odtwarzanie plików MP3 jest tłumione.
    Folder "02"
    "Tryb mówienia"
    Gdy włączony jest tryb mówienia, słowa są odczytywane na głos na wyświetlaczu. Jak często ustawia się "Cykl mówienia", np. 1 = co minutę, 5 = co 5 minut. W zależności od tego, który "język" ustawiłeś dla wyświetlacza, odczytywany jest czas - na przykład "Jest dziewięć dziewiątej dziewiątej" (tryb Ossi). "To od kwadransa do dziewiątki" (tryb Wessi).
    W tym celu każde możliwe słowo musi być obecne na wyświetlaczu jako plik MP3.
    Tabela układu wyświetlania dla WC24h i WC12h niestety nie przetłumaczona , gdyż występują tam skróty językowe i nie udało mi się znaleźć tłumaczenia dla nich .
    Zegar tekstowy na procesorze STM32
    Przykładowe pliki dla katalogu 02 - zarówno dla WC12h, jak i WC24h: Plik: WordClock24-mp3.zip .
    Żądany folder należy skopiować na kartę SD, a następnie zmienić nazwę 02-WC12h lub 02-WC24h na 02. Pliki MP3 zostały utworzone za pomocą programu Balabolka .
    (Mały błąd w folderze WC24: Plik 60.mp3 musi zostać przemianowany na 060.mp3).
    Ponownie, czas oczekiwania (od Silence Start do Silence Stop) jest tłumiony podczas odtwarzania plików MP3.
    Folder "03"
    „Budzik”
    Niezależnie od wyżej wymienionych trybów i okresów odpoczynku można ustawić do ośmiu czasów alarmu (budzik).
    Zostanie odtworzony plik MP3 określony na stronie internetowej w tabeli wymienionej na liście. W tym przykładzie plik 001.mp3 jest odtwarzany w katalogu 03 od poniedziałku do piątku rano o godzinie 06:30. Wymienione powyżej okresy odpoczynku są tutaj wyjątkowo nieistotne .
    Ostatni utwór można odtworzyć, klikając tutaj. Aby wybrać tutaj, należy podkatalog, np. "03" i numer utworu, np. "4", aby odtworzyć "004.mp3".
    Zegar tekstowy na procesorze STM32

    SPIFFS

    Tutaj wyprowadzane są kluczowe dane o systemie plików SPIFFS w ESP8266. Jest to wirtualny system plików w pamięci flash ESP8266.
    Od wersji 2.9.0 tabele wyświetlające muszą być ładowane do SPIFFS w ESP8266. Dopóki nie są one ładowane, minuty LED lub dioda statusu świecą na niebiesko i nic nie jest wyświetlane na wyświetlaczu.
    Jeżeli prawo plik indeksu parametrów systemu w obrazie nie pokazano rację, spiffs musi być sformatowany za pomocą „Format ESP8266 spiffs”.
    Ważne : Musisz załadować dokładnie jeden z następujących plików do SPIFFS w ESP8266.
    Są dostępne
    dla WC12h:
    wc12h-tables-en.txt - niemiecki układ
    wc12h-tables-ch1.txt - Swiss layout wariant 1
    wc12h-tables-ch2.txt - Swiss layout wariant 2
    wc12h-tables-en1.txt - angielski wariant układu 1
    wc12h-tables-en2.txt - angielski wariant układu 2
    wc12h-tables-fr.txt - francuski układ
    wc12h-tables-se.txt - szwedzki layout
    dla WC24h:
    wc24h-tables-en.txt - niemiecki układ
    wc24h-tables-pl.txt – układ polski ( tablica 18x18 )
    wc24h-tables-pl2.txt – układ polski (tablica 20x20 )
    Żądany plik można pobrać z serwera aktualizacji lub przesłać z lokalnego komputera.
    Aby wyświetlić ikony i ikony pogody, dwa pliki muszą być zainstalowane w SPIFFS karty ESP8266:
    WordClock24h :
    wc24h-icon.txt
    wc24h-weather.txt
    WordClock12h :
    wc12h-icon.txt
    wc12h-weather.txt
    Można je zainstalować przez proste pobranie z serwera aktualizacji lub przez przesłanie z lokalnego komputera. Ikony można zmieniać i rozszerzać za pomocą edytora tekstowego. W takim przypadku musisz wybrać przesyłanie z lokalnego komputera.
    Wkrótce nastąpi dokumentacja formatu plików ICON.
    Zegar tekstowy na procesorze STM32

    Update

    Aktualizacje dla ESP8266, a także dla STM32 mogą być odtwarzane przez WLAN. Wymaga to połączenia z Internetem. W przypadku aktualizacji OTA ("Over the Air") ESP8266 ESP-12F jest obowiązkowe. W przypadku poprzednio używanego ESP-01 nie można zaimportować aktualizacji OTA. Jednak stare tarcze z ESP-01 można przekonwerterować do ESP-12F: konwersja z ESP-01 na ESP-12F
    W każdym przypadku wyświetlana jest używana i dostępna wersja oprogramowania układowego. Jeśli są one takie same, aktualizacja nie jest konieczna.
    Nowy : Klikając na „Format ESP8266 spiffs” obszar pamięci flash może gdzie ESP8266 przechowuje obrazy aktualizacji zarówno ESP8266 i dla STM32 być sformatowany. Może to być konieczne, jeśli obrazy są pobierane tylko częściowo.
    Jeśli oba oprogramowanie układowe ESP i STM32 różnią się, zawsze należy najpierw zaktualizować ESP8266, a następnie STM32. Kliknij przycisk "Aktualizuj oprogramowanie układowe ESP", aby rozpocząć aktualizację. Zajmuje to około 30 sekund.
    Następnie STM32 może być aktualizowany. W tym celu należy najpierw wybrać odpowiednią wersję oprogramowania (plik HEX). Jakie oprogramowanie firmowe WordClock STM32, które ma być używane dla każdego sprzętu, zostało wyjaśnione tutaj: Warianty WordClock . Od wersji 2.6.0 samo oprogramowanie określa nazwę odpowiedniego pliku HEX na podstawie konfiguracji sprzętowej, a następnie proponuje go automatycznie.
    Kliknięcie przycisku "Flash STM32" powoduje, że STM32 jest najpierw wprowadzany do trybu bootloadera, po czym jest przeprogramowywany. STM32 pozostaje w trybie Boot Loader do momentu naciśnięcia przycisku "Reset STM32".
    Błąd aktualizacji OTA: w niektórych przypadkach aktualizacja OTA napotkała błąd wskazujący na problem z systemem plików zawartym w ESP. Ten system plików jest zwykle tworzony automatycznie, gdy oprogramowanie miga do modułu ESP i może być następnie użyty, na przykład, jako bufor do aktualizacji OTA z ESP i STM32. Zanurzony w OTA logowania błąd takie jak błąd: nie można otworzyć pliku na, a następnie, w razie potrzeby, pomaga pisać i testować istniejący program w nowszej wersji oprogramowania z innego programu w module ESP. Alternatywnie, można sformatować obszar pamięci flash ESP8266 klikając na „Format ESP8266 spiffs” na stronie „spiffs” i aktualizacja OTA następnie ponownie uruchomić.
    Jeśli bieżąca wersja ESP8266 Flash narzędzia ściąganięta z( http://espressif.com/en/support/download/other-tools ) stwarza problemy, można, pobrać ze strony program, https://github.com/nodemcu/nodemcu- flasher . Tam, wybierz „Config” plik BIN , a następnie wybierz zakładka „Operation” odpowiedni port COM i kliknij „Flash”.
    Zegar tekstowy na procesorze STM32

    Local Update

    Podczas gdy normalna aktualizacja jest przeprowadzana za pośrednictwem hosta w Internecie, lokalna aktualizacja pozwala na miganie STM32 z lokalnego komputera. Lokalne flashowanie ESP8266 nie jest jeszcze możliwe, ale jest planowane na późniejszą wersję. W przeciwnym razie obowiązują te same uwagi, co w poprzednim rozdziale "Aktualizacja".
    Bardziej szczegółowe informacje można uzyskać na stronach :
    https://www.mikrocontroller.net/articles/WordClock_mit_WS2812
    https://www.mikrocontroller.net/articles/Tutorial_-_Aufbau_WordClock_mit_WS2812
    https://www.mikrocontroller.net/topic/385955?page=single
    Zegar tekstowy na procesorze STM32
    Opis montażu zawarty jest też w archiwum w formacie pdf . Wsad do zegara umieszczony jest w archiwum pod nazwą "Wsad-Tablica 20x20 litery polskie" . Jedna uwaga dla tych co chcieliby wykonać zegar , proszę nie ściągać plików z strony autora , gdyż nie będą one działały z tym projektem zegara . Autor zapewnił że od wersji 3.0 będzie można już bezpośrednio aktualizować pliki dla języka polskiego dla tablic 18x18 i 20x20 z jego strony internetowej .
    Uzupełnienie opisu o współpracę zegara z pilotem na podczerwień i telefonu opartym na systemie Android .

    IRMP
    Przez pierwsze 3 sekundy dioda LED stanu świeci się na biało, sygnalizując, że można teraz programować pilota na podczerwień. Jeśli w tym czasie zostanie odebrany prawidłowy kod IR, dioda LED stanu zmieni kolor na czerwony na jedną sekundę (zwolnij przycisk na pilocie) I przejdzie do procedury uczenia. Jeśli nie zostanie odebrany żaden sygnał IR, program rozpocznie się jak zwykle. Procedurę uczenia można również uruchomić za pomocą interfejsu internetowego (menu „Główne”).
    Zostaniesz poproszony przez napis na wyświetlaczu LED o naciśnięcie następujących klawiszy pilota:
    Zegar tekstowy na procesorze STM32
    Po skonfigurowaniu przycisków pilota można ustawić czas, tryb wyświetlania oraz kolory .
    Użyte są tylko najpopularniejsze protokoły IR, a mianowicie:
        SIRCS ( Sony )
        NEC ( wielu producentów )
        SAMSUNG
        MATSUSHITA
        KASEIKYO
    IRMP „rozumie” do 40 protokołów. Jeśli potrzebujesz więcej - jak RC5 lub RC6 - możesz je odblokować w irmp / irmp-config.h. W przypadku problemów zaleca się przeczytanie artykułu IRMP na stronie https://www.mikrocontroller.net/articles/IRMP
    Odpowiedni 24 przyciskowy pilot zdalnego sterowania na podczerwień .
    Zegar tekstowy na procesorze STM32
    Pilot zdalnego sterowania może być odpowiednio oznaczony jedną z następujących etykiet
    Plik: Pilot zdalnego sterowania ZW.pdf
    Plik: Pilot zdalnego sterowania ZW2.pdf
    (różnią się układem przycisku zasilania i zapisywania). Wystarczy wydrukować na folii samoprzylepnej, wyciąć i przykleić. Dolny rząd jest nadal otwarty dla innych dodatkowych opcji (np. Ambilight itp.).
    Jeśli ma być włączony i wyłączony tylko wyświetlacz, można użyć jednokanałowych pilotów na podczerwień.
    Przykładami odpowiednich pilotów zdalnego sterowania są:
    FB1 używa kodu NEC i można go zaprogramować przy użyciu bieżącego oprogramowania.
    Zegar tekstowy na procesorze STM32
    FB2 Dwukanałowy pilot zdalnego sterowania ( Sony Code) można zaprogramować za pomocą bieżącego oprogramowania.
    Drugim przyciskiem można wyświetlić „temperaturę”.
    Zegar tekstowy na procesorze STM32
    Aby zaprogramować, klawisz na pilocie jest naciskany do czasu pojawienia się napisu "Thank you", który pojawia się jako pasek na końcu procedury nauczania.

    TELEFON ( opragramowanie Android )
    Jeśli moduł ESP8266 jest prawidłowo podłączony i skonfigurowany, zegarem można zdalnie sterować za pomocą aplikacji na Androida.
    Obecnie można dokonać następujących ustawień:
       Włącz / wyłącz zegar
        Ręczne ustawianie daty / godziny za pomocą menu -> Synchronizuj
        Wyświetlanie temperatury WordClock
        Regulacja kolorów ( Nowy: teraz także RGBW )
        Ręczne ustawienie podstawowej jasności
        Automatyczna kontrola jasności za pomocą włączania / wyłączania LDR
        Ustawianie trybu wyświetlania
        Dostosowanie animacji kolorów, np. „Tęcza” (nowa)
        Ustawianie animacji (crossfading, przewijanie, eksplozja itp.)
    Można skonfigurować do 4 profili, a tym samym kontrolować do 4 różnych zegarów tekstowych . Możesz zmienić profil za pomocą przycisku „Załaduj”, zapisać profil za pomocą przycisku „Zapisz”.
    Zegar tekstowy na procesorze STM32
    Zanim będziesz mógł wysyłać dane za pomocą aplikacji, musisz ustawić adres IP, który dostał moduł ESP8266 w aplikacji. Odbywa się to poprzez punkt menu „Ustawienia”. W przypadku starszych wersji Androida należy najpierw nacisnąć specjalny przycisk menu , natomiast w nowszych wersjach Androida można to zrobić za pomocą przycisku menu z trzema kropkami - patrz zdjęcie w prawym górnym rogu. Adres IP jest następnie przypisywany do aktualnie wybranego profilu.
    Zegar tekstowy na procesorze STM32
    Pod elementami menu możesz teraz znaleźć wpisy „Tetris” i „Snake”. Jest to rodzaj „Gamepad”, z którym można grać na zegarze WCtris - klon Tetrisa - lub klasyczny Snake.
    Zegar tekstowy na procesorze STM32
    Uwagi końcowe :
    Odbiornik sygnału DCF według mnie jest elementem zbytecznym , gdyż zegar posiada bardzo stabilny układ RTC DS-3231 , poza tym czas można z synchronizować za pomocą telefonu , lub serwera czasu .
    Drugim elementem jest komunikacja za pomocą pilota na podczerwień tu występują konflikty z odbiornikami RTV . Funkcja ta raczej do używania w pomieszczeniach gdzie niema odbiorników RTV tym bardziej że funkcje te są dostępne z poziomu telefonu .
    Życzę powodzenia w budowie zegara .
  • #21
    Sas_AS
    Level 16  
    Cieszę się, że nie odpuściłeś i uporałeś się z poprawnym wyświetlaniem godzin w języku ojczystym. Świetna dokumentacja krok po kroku jak zbudować taką konstrukcję samemu. Zegar prezentuje się ładnie i estetycznie. Idealnie byłoby ukryć czy zamaskować gdzieś ten kabelek zasilania, a jeśli to nie możliwe to chociaż tą czarną wtyczkę zmienić, ukryć, opatulić koszulką termokurczliwą lub przemalować na biało ;)
  • #22
    valdi2003
    Level 15  
    Sas_AS wrote:
    Idealnie byłoby ukryć czy zamaskować gdzieś ten kabelek zasilania, a jeśli to nie możliwe to chociaż tą czarną wtyczkę zmienić, ukryć, opatulić koszulką termokurczliwą lub przemalować na biało ;)
    Zgadzam się z Tobą . Zdjęcia robione były w czasie testów . Ostateczny wygląd zegara jest taki Zegar tekstowy na procesorze STM32
    Prośba do moderatora o przeniesienie projektu do odpowiedniego działu .