eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaTaktowanie ATMegi z ENC28J60
Ilość wypowiedzi w tym wątku: 48

  • 21. Data: 2014-01-05 00:43:37
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Atlantis <m...@w...pl>

    W dniu 2014-01-05 00:28, Marek pisze:

    > Zaraz, w prototypie używasz 0603? Czy zrobiłeś już płytkę docelowa bez
    > wcześniejszego testu układu na prototypie w plytce stykowej? :)

    Zaprojektowałem prostą płytkę prototypową, jako bazę do dalszych
    eksperymentów. Jest na niej ENC28J60 i ATMega328P. Wyjścia portów
    wyprowadzone w formie goldpinów. Wcześniejsze montowanie tego na płytce
    stykowej byłoby dość kłopotliwe (gniazdko RJ45, rezystory 49 om 1%,
    które mam tylko w wersji SMD) i moim zdaniem niepotrzebne. To na dobrą
    sprawę tylko dwa układy spięte magistralą SPI + zasilanie + parę
    gniazdek i goldpinów.


    > Jednak chyba coś z kwarcem masz....

    Drugi kwarc (tego samego typu, kupiony w tym samym sklepie, zapewne z
    tej samej serii produkcyjnej) także nie działa. Spróbuję jeszcze z
    kondensatorami, tylko niestety w tej chwili nie mam nieco
    mniejszych/większych pojemności w odpowiednim rozmiarze.

    Jeśli to nie pomorze, to poszukam innych kwarców...


  • 22. Data: 2014-01-05 01:38:34
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: JDX <j...@o...pl>

    On 2014-01-05 00:43, Atlantis wrote:
    [...]
    > Drugi kwarc (tego samego typu, kupiony w tym samym sklepie, zapewne z
    > tej samej serii produkcyjnej) także nie działa. Spróbuję jeszcze z
    > kondensatorami, tylko niestety w tej chwili nie mam nieco
    > mniejszych/większych pojemności w odpowiednim rozmiarze.
    >
    > Jeśli to nie pomorze, to poszukam innych kwarców...
    A generatora[*] nie da się popędzić tej kości (i ewentualnie procesora)?
    Przynajmniej w ramach testu.

    [*] Np. http://tnij.org/huw1x1x


  • 23. Data: 2014-01-05 12:30:57
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Atlantis <m...@w...pl>

    W dniu 2014-01-04 19:40, Jacek Maciejewski pisze:

    > Na 95% tak :) Popracuj nad generatorem. Może kwarc do d... może dzielnik
    > niedobrany... wszystko może być nawet to że podłączenie sondy gasi drgania.

    Udało mi się dorwać kwarc z innej serii. ATMega ruszyła zaraz po jego
    wlutowaniu, programator znów ją widzi.
    Teraz czeka mnie próba odpalenia stosu TCP na tym wynalazku. ;)

    Wielkie dzięki za pomoc.


  • 24. Data: 2014-01-05 16:42:38
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Marek <f...@f...com>

    On Sun, 05 Jan 2014 12:30:57 +0100, Atlantis <m...@w...pl>
    wrote:
    > Teraz czeka mnie próba odpalenia stosu TCP na tym wynalazku. ;)

    Podeślij jaką udało Co się uzyskac prędkość w kilobajtach/sek
    przesyłając dane po tcpip z układu do PC i przy jakiej F zegara mcu.

    --
    Marek


  • 25. Data: 2014-01-05 21:05:44
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Atlantis <m...@w...pl>

    W dniu 2014-01-05 16:42, Marek pisze:

    > Podeślij jaką udało Co się uzyskac prędkość w kilobajtach/sek
    > przesyłając dane po tcpip z układu do PC i przy jakiej F zegara mcu.

    Dobrze, tylko najpierw muszę wgryźć się w bibliotekę i sposób
    komunikacji po TCP/IP. Ta płytka to projekt edukacyjny. Do tej pory
    miałem tylko do czynienia z prostymi przykładami zastosowań sieciowych,
    zrealizowanych na Arduino z Ethernet Shieldem.


  • 26. Data: 2014-01-06 10:47:14
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Marek <f...@f...com>

    On Sun, 05 Jan 2014 21:05:44 +0100, Atlantis <m...@w...pl>
    wrote:
    > Dobrze, tylko najpierw muszę wgryźć się w bibliotekę i sposób
    > komunikacji po TCP/IP. Ta płytka to projekt edukacyjny. Do tej pory

    Interesuje mnie w tej bibliotece ile gniazd tcp może być naraz
    otwartych a co za tym idze ile połączeń jednoczesnych mcu może
    przyjąć od łączących się klientów. Mógłbyś podać link gdzie opisane
    jedt co ta biblioteka ma zaimplementowane z tcp/ip (czy ma udp,
    dhcpd, czy ma resolver itp)?

    --
    Marek


  • 27. Data: 2014-01-06 10:54:19
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Atlantis <m...@w...pl>

    W dniu 2014-01-06 10:47, Marek pisze:

    > Interesuje mnie w tej bibliotece ile gniazd tcp może być naraz otwartych
    > a co za tym idze ile połączeń jednoczesnych mcu może przyjąć od
    > łączących się klientów. Mógłbyś podać link gdzie opisane jedt co ta
    > biblioteka ma zaimplementowane z tcp/ip (czy ma udp, dhcpd, czy ma
    > resolver itp)?

    http://tuxgraphics.org/electronics/200905/embedded-t
    cp-ip-stack.shtml

    Z tego co widzę jest to trochę inaczej rozwiązane:

    "Microcontrollers are, as the name already suggests, small. If you
    implement a TCP/IP stack then you are limited by the available
    processing power and especially the available RAM that such chip have.
    The stack has to be as small as possible and you have to decided how you
    spend the available memory. Most stack implementations introduced
    therefore a very low limit on the number of parallel sessions. Typical
    values are 2-3 parallel web browser connections. The tuxgraphics stack
    takes a different approach. There is no hard-coded limit. Instead we
    limit the amount of data that a web page can hold to one IP packet."

    Opis z powyższego linku został przygotowany, gdy stos był w wersji 3.
    Teraz doszli już do 5.

    Tutaj masz poszczególne wersje do ściągnięcia, wraz z wypisanymi zmianami:

    http://tuxgraphics.org/common/src2/article09051/

    Na stronie są podane przykłady funkcjonalnych urządzeń, zbudowanych w
    oparciu o tak małe MCU jak ATMega 88!


  • 28. Data: 2014-01-06 14:44:10
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Marek <f...@f...com>

    On Mon, 06 Jan 2014 10:54:19 +0100, Atlantis <m...@w...pl>
    wrote:
    >
    http://tuxgraphics.org/electronics/200905/embedded-t
    cp-ip-stack.shtml

    Bardzo ładne, podoba mi się, że jest taki minimalistyczny, w wolnej
    chwili przeportuje go sobie na picka bo jest bardziej kompaktowy niż
    ten od microchipa (za stary jestem i zbyt dużo czasu poświęciłem
    pickom aby uczyć się atmegi). Natomiast ciekawy jestem czy ta
    minimalistycznosc Ci wystarczy a konkretnie chodzi mi o
    zahardcodowany serwer www (dalej będę używał skrótu "httpd") bez
    typowego document root. U mnie użycie tcp (nie)stety mocno
    ewoluowało.
    Jak na początku testowałem tcp to właśnie w takiej konfiguracji,
    gdzie httpd odpowiada szablonem prostej strony zaprogramowanym we
    flash. Podczas testów doszedłem do wniosku, że jest to dość uciążliwe
    rozwiązanie, bo każda zmiana w szablonie (dodanie nowej informacji,
    przycisku itp.) wymaga programowania układu (wgrania nowego szablonu,
    który jest częścią całego kodu we flash). Strona serwowana przez mcu
    miała być wyświetlana na telefonie i być w miarę miła dla oka a to
    wymaga bardziej złożonego kodu. Najwygodniej dla zarządzania tym
    kodem strony mieć go w plikach (index.html, css oraz potrzebne pliki
    graficzne buttonow). Pierwszym krokiem było zrobienie na szybko coś w
    rodzaju VFS, niezbędne pliki były konwertowane w tablicę, która była
    częścią kodu i do której httpd "sięgał" serwując żądania http (do
    plików). Było to wygodniejsze bo mogłem plik html normalnie edytować
    na PC a później skryptem przekonwertowac go na tablicę VFS i wgrać
    całość do mcu. Oczywiście ciągle pozostała niewdzięczna czynność
    wgrywania całości kodu przy każdej zmianie w html.
    To spowodowało, że zdecydowałem się dodać obsługę karty SD + fat na
    której są po prostu pliki źródłowe strony. Przy tym kroku
    zdecydowałem się też na zmianę mcu na trochę większy, bo dodanie SD i
    fat przekroczyłoby rozmiar dostępnej pamięci.
    Ale na tym nie koniec, natura lenia dała znać o sobie, sugerując, że
    przecież upierdliwe jest wyciąganie karty, wkładanie jej do czytnika,
    później czytnik do PC, wgranie nowej wersji "strony", odmontowanie
    czytnika, włożenie karty z powrotem do układu. Dodałem do httpd
    obsługę uploadu plików, aby w ten sposób je aktualizować (bez
    wyciągania karty). Już myślałem, że to będzie wreszcie koniec
    mieszania i może w końcu zrobię porządną płytkę do tego układu.
    Przypomniało mi się, że ten układ oprócz serwowania danych przez www
    ma wysyłać przez IR dane do wyświetlacza LCD wiszącego na przeciwnej
    ścianie. Szukając wolnego pina w mcu dla diody nadawczej IR okazało
    się, że nie ma, wszystko użyte (użyłem pic32 w wersji dip28 bo jest
    wygodny w prototypowaniu). Wyszło na to, że gdybym pozbył się karty
    SD i użył USB (mass storage/pendrive) to zwolniłby się potrzebny pin.
    Dodatkowo pendrive jest o niebo wygodniejszy niż karta SD.
    Jak to działa można sobie obejrzeć, "serwer" jest dostępny tutaj
    (szablon mobilny):
    http://83.5.7.21:8080

    Można nawet się telnetnąć (user & pass dowolne).

    --
    Marek


  • 29. Data: 2014-01-06 15:45:21
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Atlantis <m...@w...pl>

    W dniu 2014-01-06 14:44, Marek pisze:

    > Bardzo ładne, podoba mi się, że jest taki minimalistyczny, w wolnej
    > chwili przeportuje go sobie na picka bo jest bardziej kompaktowy niż ten
    > od microchipa (za stary jestem i zbyt dużo czasu poświęciłem pickom aby

    Przykład z serwerem www (wyświetlanie komunikatu w przeglądarce,
    zgłaszanie błędu 401 i odpowiadanie na pingi) kompiluje się do pliku
    *.hex o rozmiarze nieco mniejszym niż 9kB. To pozostawia sporo miejsca
    we Flashu ATMEgi328. W tym kontekście niezrozumiałe są dla mnie zarzuty
    zwolenników układu W5100, krytykujących ENC28J60 za brak sprzętowej
    obsługi stosu.


    > uczyć się atmegi). Natomiast ciekawy jestem czy ta minimalistycznosc Ci
    > wystarczy a konkretnie chodzi mi o zahardcodowany serwer www (dalej będę
    > używał skrótu "httpd") bez typowego document root. U mnie użycie tcp
    > (nie)stety mocno ewoluowało.

    Ja mam trochę inne podejście do tego zagadnienia. Docelowo planuję
    uruchomić na ATMedze klienta HTTP, który będzie wysyłał informacje do
    serwera pracującego na Raspberry Pi. Dzięki temu wyświetlaniem ładnej
    strony będzie mógł się zająć lighttpd albo nginx. Zadaniem MCU będzie
    zbieranie danych. W ten sposób planuję zrobić prostą, sieciową stację
    pogodową.

    Innym zagadnieniem, które chciałbym rozgryźć jest wysyłanie i odbieranie
    danych z Twittera. Do tego też potrzebuję jedynie klienta.


  • 30. Data: 2014-01-07 00:16:04
    Temat: Re: Taktowanie ATMegi z ENC28J60
    Od: Marek <f...@f...com>

    On Mon, 06 Jan 2014 15:45:21 +0100, Atlantis <m...@w...pl>
    wrote:
    > we Flashu ATMEgi328. W tym kontekście niezrozumiałe są dla mnie
    zarzuty
    > zwolenników układu W5100, krytykujących ENC28J60 za brak sprzętowej
    > obsługi stosu.

    Zauważ, że skompilowałeś mocno okrojoną bibliotekę, implementująca
    absolutne minimum do zestawienia tcp. Gdy chce się uruchomić w miarę
    wydajny (mogący obsłużyć kilka równoległych sesji) serwer tcp, na
    dodatek potrzebny jest np. ntp do synch. czasu czy nawet resolver to
    implementacja stosu gwałtownie spuchnie z 9 do kilkudziesięciu kB.
    Oprócz rozmiaru szybkość też staje się wymaganiem, stąd hardwerowa
    implementacja w dedykowanym układzie nie jest taką głupia. Wcześniej
    pisałem: zmiana w kodzie (5% całości firmwaru) robiącym coś poza tcp
    wymaga wgrania całości. Z dedykowanym układem na stos mcu mogłyby być
    prostrzy a firmare mniejszy i mniej skomplikowany.

    --
    Marek

strony : 1 . 2 . [ 3 ] . 4 . 5


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: