logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

ENC28J60 ATmega8 SNTP - Zegar z czasem internetowym

michalko12 12 Gru 2009 01:12 17169 19
REKLAMA
  • ENC28J60 ATmega8 SNTP - Zegar z czasem internetowym

    Układ wykonałem głównie dla sprawdzenia kontrolera ENC28j60. Funkcją tego układ jest pobranie czasu z serwera czasu za pomocą protokołu SNTP i wyświetlenie go na wyświetlaczu LCD 2x20. Układ komunikuje się z dowolnym serwerem SNTP/NTP poprzez stos protokołów ARP/IP/UDP/SNTP, dodatkowo zaimplementowany jest protokół ICMP/ECHO czyli tzw Ping. Do komunikacji wykorzystywany jest port 123 protokołu UDP.

    Na wyświetlaczu wyświetlane są:

    - godzina
    - data
    - dzień tygodnia
    - strefa czasowa (CET/czas zimowy i CEST/czas letni przełączane w ustawieniach)
    - czas ostatniej aktualizacji czasu
    - ustawienia zegara
    - wersja programu

    W ustawieniach można zmienić następujące parametry:

    - adres IP zegara
    - maskę sieci
    - adres IP bramy
    - adres IP serwera czasu
    - adres MAC zegara
    - okres aktualizacji od 1 do 65535 sekund lub ręcznie
    - strefa czasowa CET/CEST

    Wszystkie ustawienia pamiętane są po odłączeniu zasilania.

    Do sterowania zegara wykorzystane są 4 przyciski P1, P2, P3, P4

    Funkcje przycisków.
    - Dla głównego ekranu
    	P1 - Menu ustawień
    	P2 - Podgląd czasu ostatniej aktualizacji
    	P3 - Ręczne wymuszenie aktualizacji czasu
    	P4 - wersja oprogramowania

    - Dla ekranu ustawień
    	P1 - Wybór następnego parametru
    	P2 - W zależności od ustawianego parametru
    		Adresy IP i MAC -  Następna pozycja
    		Okres aktualizacji - P3 i P4 x100
    	P3 - +1 / +100
    	P4 - -1 / -100

    Po wyjściu z menu nastepuje zapis ustawień do pamięci EEPROM oraz aktualizacja czasu.


    ENC28J60 ATmega8 SNTP - Zegar z czasem internetowym ENC28J60 ATmega8 SNTP - Zegar z czasem internetowym ENC28J60 ATmega8 SNTP - Zegar z czasem internetowym



    Załączniki:
    • SNTPClock_v1.23.zip (8.34 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • SNTP Clock.pdf (14.78 KB) Musisz być zalogowany, aby pobrać ten załącznik.

    Fajne? Ranking DIY
    O autorze
    michalko12
    Specjalista - Mikrokontrolery
    Offline 
    Specjalizuje się w: uc
    michalko12 napisał 3394 postów o ocenie 321, pomógł 462 razy. Jest z nami od 2004 roku.
  • REKLAMA
  • #2 7377121
    ghost666
    Tłumacz Redaktor
    Posty: 11961
    Pomógł: 157
    Ocena: 10267
    Fajnie jakbyś zamieścił listing programu. Ten kontroler wydaje się być wielce interesujący - już od dawna czeka abym go wykorzystał, jednakże... jakoś nie mogę się zabrać ;). Umieszczony kod programu na pewno pomógł by wielu osobom zmotywować się do wejścia w świat sieci, wraz ze swoimi mikrokontrolerami.
  • #3 7377806
    sledzik1984
    Poziom 14  
    Posty: 113
    Pomógł: 5
    Ocena: 8
    Ja bym poprosił o sam wsad do procesora... Chętnie bym postawił sobie taki zegareczek na biurku :)
  • REKLAMA
  • #4 7377898
    michalko12
    Specjalista - Mikrokontrolery
    Posty: 3394
    Pomógł: 462
    Ocena: 321
    ghost666 napisał:
    Fajnie jakbyś zamieścił listing programu. Ten kontroler wydaje się być wielce interesujący - już od dawna czeka abym go wykorzystał, jednakże... jakoś nie mogę się zabrać ;). Umieszczony kod programu na pewno pomógł by wielu osobom zmotywować się do wejścia w świat sieci, wraz ze swoimi mikrokontrolerami.


    Źródeł nie będę umieszczał, mogę udostępnić jedynie jakieś konkretne fragmenty jeśli ktoś będzie wiedział o co pyta, ewentualnie wyjaśnić zagadnienia związane z ENC28J60 i stosem . Co prawda program powstał w 4 wieczory, ale wiedza była gromadzona znacznie dłużej.

    Dodano po 9 [minuty]:

    sledzik1984 napisał:
    Ja bym poprosił o sam wsad do procesora... Chętnie bym postawił sobie taki zegareczek na biurku :)


    Ze wsadem nie ma problemu tylko dorobię jakieś prostą zmianę parametrów - MAC, IP, Maska, Brama, IP serwera, Interwał , czas CET/CEST. Teraz jest wszystko na stale w programie. Nie ma już za dużo miejsca w programie wiec najprawdopodobniej dane będą pobierane z EEPROM, oprócz zmiany czas CET/CEST. Jak będą chętni to program można rozwijać na inne procesory.
  • #5 7378281
    slaweek_22
    Poziom 16  
    Posty: 233
    Pomógł: 5
    Ocena: 14
    ghost666 napisał:
    Fajnie jakbyś zamieścił listing programu. Ten kontroler wydaje się być wielce interesujący - już od dawna czeka abym go wykorzystał, jednakże... jakoś nie mogę się zabrać ;). Umieszczony kod programu na pewno pomógł by wielu osobom zmotywować się do wejścia w świat sieci, wraz ze swoimi mikrokontrolerami.



    Jeśli chodzi o listingi to microchip na swojej oficjalnej stronie udostępnia cały stos tcp/ip i kody źródłowe dla tego modułu.
  • #6 7378344
    jrk13
    Poziom 15  
    Posty: 87
    Pomógł: 10
    Ocena: 21
    ENC28J60 akceptuje poziomy 5V czy to jakiś błąd na schemacie ?
  • #7 7378389
    michalko12
    Specjalista - Mikrokontrolery
    Posty: 3394
    Pomógł: 462
    Ocena: 321
    jrk13 napisał:
    ENC28J60 akceptuje poziomy 5V czy to jakiś błąd na schemacie ?


    Odpowiedź jest na pierwszej stronie noty katalogowej.
  • #8 7378562
    mirekk36
    Poziom 42  
    Posty: 9195
    Pomógł: 964
    Ocena: 2289
    Fajny zegareczek oczywiście i fajnie zrobiona płyteczka. Gdzie kupiłeś ENCxxx w wresji SMD ??? ja się wkurzyłem jak kupowałem bo były dostępne tylko wersji DIP ;)

    A dla wszystkich, którzy chcą kod źródłowy takiego zegareczka tak żeby można było go nazwet zmieniać wg własnych potrzeb to proszę:

    http://tuxgraphics.com/electronics/200710/avr-ntp-clock.shtml

    (w powyższym linku jest wszyściutko dokładnie z detalami opisane i na podstawie takich artykułów jak na tej stronce każdy szybko w w przysłowiowe 5min postawi sobie dowolny projekcik działający w sieci czy w necie)

    a na tej stronce wiele innych nie mniej ciekawych projektów w oparciu o AVR oraz przyjemny scalaczek ENC
    http://tuxgraphics.com/electronics/
  • #9 7378667
    michalko12
    Specjalista - Mikrokontrolery
    Posty: 3394
    Pomógł: 462
    Ocena: 321
    mirekk36 napisał:
    Fajny zegareczek oczywiście i fajnie zrobiona płyteczka. Gdzie kupiłeś ENCxxx w wresji SMD ??? ja się wkurzyłem jak kupowałem bo były dostępne tylko wersji DIP ;)


    Są w TME i Kamami (po cenie z kosmosu)
    W TME w bardzo przyzwoitej cenie są też ENC424J600-I/PT i raczej bardziej tymi układami trzeba się interesować niż ENC28J60.
  • #10 7378733
    mirekk36
    Poziom 42  
    Posty: 9195
    Pomógł: 964
    Ocena: 2289
    Pewnie, że ENC424J600 jest młodszym i lepszym bratem starszego ENC28J60 ale w końcu dla tego staruszka są już w sieci gotowe biblioteki i stosy TCP - z których nic tylko korzystać ;) ... a jak widać do takich prostych zadań spokojnie ten układzik będzie jeszcze długo spełniał swoją rolę
  • REKLAMA
  • #11 7386239
    michalko12
    Specjalista - Mikrokontrolery
    Posty: 3394
    Pomógł: 462
    Ocena: 321
    Dla chętnych w załącznikach wsad oraz aktualny schemat.
  • #12 7391846
    ginger78
    Poziom 21  
    Posty: 521
    Pomógł: 13
    Ocena: 33
    michalko12 napisał:

    Źródeł nie będę umieszczał, mogę udostępnić jedynie jakieś konkretne fragmenty jeśli ktoś będzie wiedział o co pyta, ewentualnie wyjaśnić zagadnienia związane z ENC28J60 i stosem . Co prawda program powstał w 4 wieczory, ale wiedza była gromadzona znacznie dłużej.


    Kolego michalko12, w takim razie po co w ogóle umieszczasz ten swój "skomplikowany" zegar na elce?
  • #13 7391905
    mirekk36
    Poziom 42  
    Posty: 9195
    Pomógł: 964
    Ocena: 2289
    ginger78 napisał:
    michalko12 napisał:

    Źródeł nie będę umieszczał, mogę udostępnić jedynie jakieś konkretne fragmenty jeśli ktoś będzie wiedział o co pyta, ewentualnie wyjaśnić zagadnienia związane z ENC28J60 i stosem . Co prawda program powstał w 4 wieczory, ale wiedza była gromadzona znacznie dłużej.


    Kolego michalko12, w takim razie po co w ogóle umieszczasz ten swój "skomplikowany" zegar na elce?


    Ty się tak nie żołądkuj kolego bo zawału dostaniesz albo wrzodów żołądka. A gdzieś ty widział, żeby było napisane - że tobie się wszystko należy od autorów projektów DIY ???

    Może tak w końcu troszkę własnej inwencji twórczej???? skoro czytać nie za bardzo umiesz jak widzę - bo wyżej umiściłem link do takiego zegara i to z otwartymi źródłami ! ..... na jego podstawie każdy nawet ty może sobie zrobić taki zegarek albo dowolnie go zmodyfikować. Jeszcze raz w takim razie podam usłużnie link wielce niezadowolonemu i mającemu focha

    http://tuxgraphics.com/electronics/200710/avr-ntp-clock.shtml
  • #14 7391945
    ginger78
    Poziom 21  
    Posty: 521
    Pomógł: 13
    Ocena: 33
    @mirekk36
    Linki widziałem. Serdecznie Ci dziękuję. Dziwi mnie natomiast postawa autora projektu. Oczywiście każdy może sobie zrobić taki zegarek, znaleźć kody źródłowe czy po prostu samemu napisać. Wobec tego po co autor umieszcza taki projekt na stronie głównej?
  • #15 7391967
    mirekk36
    Poziom 42  
    Posty: 9195
    Pomógł: 964
    Ocena: 2289
    ginger78 napisał:
    @mirekk36
    Wobec tego po co autor umieszcza taki projekt na stronie głównej?


    Po to, żeby innym dać natchnienie do zrobienia podobnej rzeczy, po to żeby inni zobaczyli że jest możliwe we własnym zakresie w prosty sposób zrobienie czegoś takiego, po to żeby pokazać fajną i zgrabną konstrukcję, po to żeby pochwalić się swoim pomysłem - a jest czym ;) ..... po to żeby pokazać schemat - a reszta to już czysta inwencja twórcza. Ale jak widać dodatkowo wrzucił autor nawet gotowy wsad .... więc i tego mało??? sorrki ale na prawdę nie rozumiem takich postaw. Tym bardziej, że autor jest gotów podyskutować na temat swoich rozwiązań programistycznych i pomóc tym, którzy pójdą w jego ślady a będą chcieli zrobić własną wersję takiego urządzonka.
  • #16 7392069
    michalko12
    Specjalista - Mikrokontrolery
    Posty: 3394
    Pomógł: 462
    Ocena: 321
    ginger78 napisał:

    Dziwi mnie natomiast postawa autora projektu.

    A mnie dziwi twoja postawa, bo chyba nie znasz zasad tego forum.


    ginger78 napisał:

    Oczywiście każdy może sobie zrobić taki zegarek, znaleźć kody źródłowe czy po prostu samemu napisać.

    Wiec po prostu sobie napisz, a nie czekasz na gotowca, po drugie masz podane linki do podobnych rozwiązań na których możesz się wzorować.


    ginger78 napisał:

    Wobec tego po co autor umieszcza taki projekt na stronie głównej?

    Nie ja decyduje o tym czy taki projekt znajdzie się na stronie głównej czy nie, z takimi pytaniami kieruj się do administratora tego forum.
  • REKLAMA
  • #17 7399211
    michalko12
    Specjalista - Mikrokontrolery
    Posty: 3394
    Pomógł: 462
    Ocena: 321
    W załączniku nowy wsad. Dodałem kilka poprawek.
  • #18 7399648
    wdogli
    Poziom 18  
    Posty: 340
    Pomógł: 8
    Ocena: 9
    A ja mam pytanie co do płytek. Sam je robiłeś czy wykonała ci je jakaś firma?? Robiłeś jakiś prototyp czy od razu wykonywałeś płytki w firmie?? Poza tym ile kosztuje wykonanie takiej płytki na zamówienie wg projektu?/
    Pozdrawiam
  • #19 7401823
    michalko12
    Specjalista - Mikrokontrolery
    Posty: 3394
    Pomógł: 462
    Ocena: 321
    Ciężko byłby samemu zrobić metalizację otworów. Żadnych prototypów nie robiłem,
    nie bardzo mam czas i chęci do robienia takich płytek. Płytki zamawiałem w znanej tu
    płytkarni Link. Naprawdę nie są drodzy i jakość jest w porządku.
    Do czego mogę się przyczepić to niechętni są do opisywania na maile.
    Na ich stronie masz cennik co i za ile.
  • #20 8816984
    DVDM14
    Poziom 35  
    Posty: 2949
    Pomógł: 315
    Ocena: 553
    Mam takie pytanie: czy zegar ten (oczywiście na wsadzie z załącznika) obsługuje protokół DHCP?

Podsumowanie tematu

LABEL_AI_GENERATED
Układ oparty na kontrolerze ENC28J60 został zaprojektowany do pobierania czasu z serwera SNTP i wyświetlania go na wyświetlaczu LCD 2x20. Umożliwia komunikację z serwerami SNTP/NTP przez protokoły ARP/IP/UDP/SNTP oraz ICMP/ECHO (Ping). Użytkownicy mogą zmieniać ustawienia, takie jak adres IP, maska sieci, adres MAC, oraz interwał aktualizacji czasu. W dyskusji poruszono również kwestie dostępności komponentów, w tym ENC28J60 i ENC424J600, oraz udostępniono linki do źródeł kodu i schematów. Uczestnicy forum wyrazili zainteresowanie wsadem do procesora oraz możliwością modyfikacji projektu.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA