ENC28J60 i AVR - parę pytań.

Witam!

A wiec czas zacząć zabawę z ethernetem. Pomyślałem że najlepiej będzie zacząć od zrobienia praktycznego projektu ale o małych wymaganiach wyłącznie ćwiczebnie.

Założenia:

a) kontroler ethernet: ENC28J60 wygląda o tyle dobrze, że jest w dip a jako eksperyment znacznie lepiej mi się to poskłada na uniwersalnej

b) AVR - nie wiem jaki, pewnie 2kB SRAM to minimum. Zastanawiem się nad AtMega644P bo jest DIP i ma dwa UARTY. AVR dlatego że mam z nimi doświadczenie co pozwoli zająć się implementacją protokołu a nie walczyć z narzędziami. Niestety 644P cięzko coś dostać. A potrzebuje do aplikacji 2xUART sprzętowy (wysokie prędkości).

c) obsługa arp w wersji minimalnej i udp. tcp nie jest mi potrzebny.

Teraz pytania:

1) czy ENC28J60 to dobry wybór? Po przejrzeniu pdfa jestem troche zniechęcony ilością rejestrów i "stawianiu" go po resecie. Czy to norma czy on ma taki poziom kompilkacji wyjątkowo? I jeśli nie ENC28J60 to jakie inne cudo w DIP?

2) ile trzeba orientacyjnie pamięci SRAM żeby spokojnie implementować arp+udp zakładając długość przeciętnej ramki udp na ok. 50 bajtów? Nie chodzi o szacunek bo ten sobie mogę zrobić sam, ale o podejcie praktyczne. 2kB wystarczy? Kontroler nie ma dużych wymagań pamięciowych poza ethernetem, zapewne 200B na główny algorytm wystarczy.

3) nie doszukałem się tej informacji w pdfie do ENC28J60 więc nie wiem: czy ENC28J60 ma zaszyty MAC czy mam sobie go sam "nadać" (tak, wiem że oficjalnie nie mogę, ale jak mówie, to zabawka ćwiczebna).

4) czy mogę stosować dowolny trafo (np. wypruty z routera) czy też muszę jakieś magiczne? W ofercie Kamami przy jednym z trafo zaznaczone jest że pracuje z ENC28J60. Nie mam doświadczeń i nie wiem czy trafa mają różne parametry.

Reply to
Sebastian Bialy
Loading thread data ...

Ja już wybrałem i jestem zadowolony. Jest biblioteka Microchipa napisana w C, która ma wiele funkcji obsługujących ENC. Jest również implementacja stosu TCP/IP - niestety zastrzeżona tylko dla procesorów tej firmy.

Wystarczy. Dane trafiają od razu do ENC, w procesorze wystarczy pamietać dane połączenia. Ja na ATmega32 uzyskałem 4 jednoczesne połączenia TCP/IP - 3xModbus i

1xHTTP. Ograniczeniem jest raczej szybkość procesora niż pamięć.

Możesz nadać.

Chyba tak - ja kupiłem gniazdo z trafo w Gammie i hulnęło bez zająknięcia.

Reply to
Bogdan G

Czy to coś za friko z microchipa da się wprost kompilować na AVR ? I czy obsługuje arp i udp ?

Na szczęscie nie musze (a nawet było by to szkodliwe) żebym używał TCP. UDP jest ok w tym zastosowaniu. Więc zakładam, że będę miał mniej pracy.

Swoją drogą: jak debugowałeś kod ? Zastanawiam się czy nie było by głupie podpięcie tego scalaka pod LPT i developing na pececie. Po skończeniu w zasadzie można wprost wrzucić na AVR. W końcu to tylko SPI wiec powinno się dać emulować na LPT.

Tzn muszę czy mogę :) Chodzi o to czy przychodzi z zaszytym MAC fabrycznie z możliwością zmiany, czy raczej sam o to muszę zadbać żeby go nadać.

Ale jakieś specjalne, czy pierwsze lepsze? Mam zero doświadczeń i nie wiem czy nie ma przypadkiem paru typów.

Reply to
Sebastian Bialy

OK, ale i tak jesli odwala robotę związaną z grzebaniem w rejestrach to sporo pracy odpada.

Zastanowie się jednak nad LPT może będzie wygodniej.

Nie, dzięki. Kupie ten dedykowany trafo bo jest zintegrowany z gniazdem i z diodami a takiego własnie szukam. Pytanie było raczej takie ogólne - czy ma znaczenie typ trafa.

Reply to
Sebastian Bialy

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.