eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaDziwne zachowanie ENC28J60 po softresecie ATmegi › Dziwne zachowanie ENC28J60 po softresecie ATmegi
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!wsisiz.edu.pl!.POSTED!not-for-mail
    From: Atlantis <m...@w...pl>
    Newsgroups: pl.misc.elektronika
    Subject: Dziwne zachowanie ENC28J60 po softresecie ATmegi
    Date: Mon, 07 Jul 2014 18:24:33 +0200
    Organization: http://www.wit.edu.pl
    Lines: 33
    Message-ID: <lpehk4$m28$1@portraits.wsisiz.edu.pl>
    NNTP-Posting-Host: atd253.neoplus.adsl.tpnet.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    X-Trace: portraits.wsisiz.edu.pl 1404750276 22600 83.26.241.253 (7 Jul 2014 16:24:36
    GMT)
    X-Complaints-To: a...@w...edu.pl
    NNTP-Posting-Date: Mon, 7 Jul 2014 16:24:36 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101
    Thunderbird/24.6.0
    X-Enigmail-Version: 1.6
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:667468
    [ ukryj nagłówki ]

    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. ;)

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

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: