-
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