eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika › Dziwne zachowanie ENC28J60 po softresecie ATmegi
Ilość wypowiedzi w tym wątku: 36

  • 1. Data: 2014-07-07 18:24:33
    Temat: Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: Atlantis <m...@w...pl>

    Wprowadzam właśnie niewielkie zmiany do softu w jednym z moich
    projektów. Jedno z usprawnień umożliwia zapisywanie konfiguracji (m.in
    numer IP) w pamięci EEPROM i przywracanie ustawień fabrycznych z flasha.
    Aby dało się to robić wygodnie, potrzebuję sposobu zdalnego resetowania.
    Skorzystałem z popularnego sposobu - watchdog ustawiony na najkrótszy
    czas i pętla nieskończona.

    Niestety, coś nie działa tak, jak powinno.
    ATmega najwyraźniej się resetuje, ale ENC28J60 nie chce działać poprawnie.

    Najpierw zaraz po resecie dioda połączenia na gniazdku RJ45 (ta, która
    powinna świecić cały czas po włożeniu kabla Ethernetowego) zaczęła
    szybko migać. Oczywiście urządzenie nie odpowiadało na pakiety UDP.
    Dodanie instrukcji opóźnienia na początku programu zlikwidowało miganie,
    ale nie przywróciło łączności.

    Próbowałem też resetować ENC28J60 w przypadku wykrycia resetu przez
    watchdoga. Próbowałem rozwiązania zarówno z resetem przez stan niski na
    odpowiednim pinie, jak również przez SPI. Pomogło tyle, że układ
    najwyraźniej "jakoś" się zainicjował, gdyż migała zielona dioda w
    odpowiedzi na jakieś pakiety z sieci. Niestety ciągle nie przychodziły
    odpowiedzi. Co ciekawe ta instrukcja blokowała układ cały czas, bez
    względu na to czy był resetowany przez WD, czy przez odłączenie
    zasilania, chociaż reset wykonywałem wewnątrz instrukcji sprawdzajacej
    stan pinu odpowiadającego za eset watchdog wewnątrz MCUSR.

    Ktoś wie co może być powodem takiego dziwnego zachowania?

    Nie uśmiecha mi się odpinanie urządzenia od prądu po każdej zmianie
    ustawień.
    Poza tym można podejrzewać, że tak samo układ zachowania się po
    normalnym restarcie przez watchdog. A przecież nie o to chodzi -
    watchdog ma chronić przez zawieszeniami, a nie zawieszać układ. ;)


  • 2. Data: 2014-07-07 20:48:25
    Temat: [OT] Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: feldmarszałek tusk <N...@g...pl>

    dziwne rzeczy dzieją się ostatnio z tymi wszystkimi naszymi
    projektami... do tej pory myślałem, że to przypadek choć miałem
    świadomość o totalnym sukcesie platformy europejskiej... ale widzę, że
    Wy też macie jakieś "numery" wałęsy... teraz myślę, że to jednak problem
    wpływów zewnętrznych...


  • 3. Data: 2014-07-07 21:44:51
    Temat: Re: [OT] Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: Włodzimierz Wojtiuk <"WBodzimierz Wojtiuk">

    On 2014-07-07 20:48, feldmarszałek tusk wrote:
    > dziwne rzeczy dzieją się ostatnio z tymi wszystkimi naszymi
    > projektami...

    To są jeszcze inne trolle, które coś projektują?

    Włodek ;-)


  • 4. Data: 2014-07-08 01:38:08
    Temat: Re: Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: Marek <f...@f...com>

    On Mon, 07 Jul 2014 18:24:33 +0200, Atlantis <m...@w...pl>
    wrote:
    > Próbowałem też resetować ENC28J60 w przypadku wykrycia resetu przez
    > watchdoga. Próbowałem rozwiązania zarówno z resetem przez stan
    niski na

    Nie rozumiem, to ten soft do encj nie robi mu reset przy starcie i
    musiałeś to dodać? Przecież reset przez wdg czy reset po poweron z
    pkt widzenia softu to inicjalizacja...
    Miałem podobne problemy z encj, okazało się że pin Vdd nie był
    przylutowany do pada na płytce, tylko dotykał. Jak się gmerało przy
    płytce (np. trąciło kabel eth) to encj świrował., co ciekawe led
    linkon (zielona) paliła się tylko minimalnie słabiej niż jak Vdd
    stykał "prawidłowo".

    --
    Marek


  • 5. Data: 2014-07-08 06:00:45
    Temat: Re: Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: Atlantis <m...@w...pl>

    W dniu 2014-07-08 01:38, Marek pisze:

    > Nie rozumiem, to ten soft do encj nie robi mu reset przy starcie i
    > musiałeś to dodać? Przecież reset przez wdg czy reset po poweron z pkt
    > widzenia softu to inicjalizacja...

    Właśnie to jest najdziwniejsze. Procedura inicjująca pracę ENC28J60
    zawiera fragment odpowiedzialny za soft reset przez SPI. Przecież po
    zresetowaniu układu przez watchdoga wsztko leci od nowa i praca układu
    jest ponownie inicjowana, wykonuje się też reset.
    Nie wiem więc skąd wzięło się to miganie i dlaczego zniknęło po dodaniu
    funkcji opóźniającej na początku main(). Nie wiem dlaczego pomimo
    wszystkich zabiegów po zdalnym resecie tracę łączność z układem...


    > Miałem podobne problemy z encj, okazało się że pin Vdd nie był
    > przylutowany do pada na płytce, tylko dotykał. Jak się gmerało przy
    > płytce (np. trąciło kabel eth) to encj świrował., co ciekawe led linkon
    > (zielona) paliła się tylko minimalnie słabiej niż jak Vdd stykał
    > "prawidłowo".

    To na pewno nie to. Układ działał całkowicie poprawnie przez miesiąc lub
    dwa, zanim zabrałem się za testowanie nowych funkcji programowych.
    Zmiany są powtarzalne i zachodzą wraz z wprowadzeniem poprawek w kodzie.


  • 6. Data: 2014-07-08 17:27:20
    Temat: Re: Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: Adam Górski <gorskiamalpa@wpkropkapl>

    W dniu 2014-07-08 06:00, Atlantis pisze:
    > W dniu 2014-07-08 01:38, Marek pisze:
    >
    >> Nie rozumiem, to ten soft do encj nie robi mu reset przy starcie i
    >> musiałeś to dodać? Przecież reset przez wdg czy reset po poweron z pkt
    >> widzenia softu to inicjalizacja...
    >
    > Właśnie to jest najdziwniejsze. Procedura inicjująca pracę ENC28J60
    > zawiera fragment odpowiedzialny za soft reset przez SPI. Przecież po
    > zresetowaniu układu przez watchdoga wsztko leci od nowa i praca układu
    > jest ponownie inicjowana, wykonuje się też reset.
    > Nie wiem więc skąd wzięło się to miganie i dlaczego zniknęło po dodaniu
    > funkcji opóźniającej na początku main(). Nie wiem dlaczego pomimo
    > wszystkich zabiegów po zdalnym resecie tracę łączność z układem...

    Jak długo trzymasz reset aktywny ?


    Adam


    ---
    Ta wiadomość e-mail jest wolna od wirusów i złośliwego oprogramowania, ponieważ
    ochrona avast! Antivirus jest aktywna.
    http://www.avast.com


  • 7. Data: 2014-07-08 18:50:57
    Temat: Re: [OT] Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: AlexY <a...@i...pl>

    Użytkownik Włodzimierz Wojtiuk napisał:
    > On 2014-07-07 20:48, feldmarszałek tusk wrote:
    >> dziwne rzeczy dzieją się ostatnio z tymi wszystkimi naszymi
    >> projektami...
    >
    > To są jeszcze inne trolle, które coś projektują?

    Myślisz że ten troll cokolwiek zaprojektował?


    --
    AlexY
    http://faq.enter.net.pl/simple-polish.html
    http://www.pg.gda.pl/~agatek/netq.html


  • 8. Data: 2014-07-08 19:58:45
    Temat: Re: Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: Atlantis <m...@w...pl>

    W dniu 2014-07-08 17:27, Adam Górski pisze:

    > Jak długo trzymasz reset aktywny ?

    Hmm... Kilkadziesiąt ms?
    A jak długo powinienem? Istnieje możliwość, że trzymam za długo?


  • 9. Data: 2014-07-08 20:07:47
    Temat: Re: [OT] Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: feldmarszałek tusk <N...@g...pl>

    jasne, że nic, wszystko ukradł... skąd ty to powcu znasz nie?


  • 10. Data: 2014-07-08 20:40:04
    Temat: Re: Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Od: Atlantis <m...@w...pl>

    BTW czy reset ENC28J60 w procedurze inicjującej pracę układu jest
    przeprowadzony prawidłowo?

    #define ENC28J60_SOFT_RESET 0xFF
    (...)
    enc28j60WriteOp(ENC28J60_SOFT_RESET, 0, ENC28J60_SOFT_RESET);
    _delay_loop_2(0); // 20ms

strony : [ 1 ] . 2 ... 4


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: