AVR + ENC28J60

Bawiłem się trochę modułami GSM, przyjrzałem się też Arduino z Ethernet Shieldem. W obydwu przypadkach obsługa TCP/IP jest już zaimplementowana sprzętowo i nie trzeba się nią przejmować pisząc program. Zastanawia mnie jednak kwestia popularnych układów ENC28J60, wykorzystywanych niekiedy w projektach widywanych w Sieci. W ich przypadku TCP/IP musi obsłużyć sam mikrosterownik.

1) Jakie jest absolutne sprzętowe minimum, to znaczy która Atmega poradzi sobie z takim zadaniem, zostawiając jeszcze rozsądną ilość zasobów na resztę programu? A może to już nie jest zabawa dla AVR-ów, tylko trzeba myśleć o jakimś ARM-ie? 2) Czy istnieje jakiś prosty, otwarty i ogólnodostępny "gotowiec", który można by w łatwy sposób włączyć do własnego kodu?
Reply to
Atlantis
Loading thread data ...

a co to za pytanie, ubiegasz się o grant?

Reply to
Ministerstwo Propagandy

A to zależy ile to "rozsądna". Na stm32 - 4kB ram i 16kB (chyba, może

32?) flash postawiliśmy z kumplem serwer http pozwalający na wyświetlanie statycznej zawartości (zapakowanej do FLASH z content-encoding: gzip) - kilka asciiporn i obrazek "diody" do wyświetlania. Do tego strona dynamiczna (POST) pozwalająca na zapalanie/gaszenie diodek i odczyt przycisków oraz strona powodująca wyświetlenie przewijanego tekstu na matrycy 4x4 diody.

A może to już nie jest zabawa dla AVR-ów,

Contiki OS -> uIP. Ma nawet ipv6. Bardziej rozbudowane LwIP.

Reply to
Michoo

W dniu 2013-03-17 19:51, Michoo pisze:

Hmm... Powiedzmy, że przy wykorzystaniu czegoś w rodzaju Atmegi 32, albo

328 chciałbym mieć przynajmniej połowę flasha na właściwy program i inne zasoby. Wykonalne? Co do RAM-u na zmienne to sam nie wiem, może lepiej zapytam na ile mógłbym liczyć? ;)

Czyli jednak to raczej zabawa w stawianie systemu na uC? W sposób podobny do Arduino z Ethernet Shieldem też by się dało?

Reply to
Atlantis

Na uiOP i bez OS to sie zgodze. Ale np. dla FreeRTOS i lwIP potrzeba min. 64kB RAMu.

Aha juz to widze. Pokaz mi rozsadna konfiguracje LwIP aby zadowolil sie powiedzmy chociaz 20kB RAMu. Generalnie moje doswiadczenia sa takie ze bez OSa i 96 - 128KB RAMu to bawienie sie w TCP/IP to rzezba a nie normalne pisanie oprogramowania.

Pozdrawiam

Marek

Reply to
Marek Borowski

W dniu 17.03.2013 19:08, Atlantis pisze:

W EP chyba z zeszłego roku było sporo na temat połączenia PIC + ENC, skoro tam to działało na 8-bitowym procku to myślę, że jak znajdziesz coś o podobnych właściwościach spośród AVR-ów to też zadziała. Zaleta PIC(k)ów jest taka że Microchip udostępnia za darmochę stos TCP/IP i jest jeszcze do tego jakiś magiczny programik, którym można zrobić proste strony www z guzikami/lampkami/suwakami, które potem wrzucasz na uC.

Z pobieżnego przeglądu "gógli" widzę, że ludziki dają radę na takich prostakach jak atmega32, więc to chyba nie jest jakiś nadludzki wysiłek. W końcu ethernet i tcp/ip to nie nowa technologia, pamięta czasy znacznie prostszych procków i jakoś dawali radę.

Reply to
Jakub Rakus

Na uIP i bez systemu.

Coś za coś.

LwIP odpalałem już na microblaze (64MB ram afair), więc to trochę inna liga, ale spokojnie pójdzie już na zestawie jakiś większy arm + 4M sramu. Powiedzmy od 16..32 MB ramu można się nie przejmować i postawić linuxa czy jakieś bsd.

Wg tego:

formatting link
to 40k z czego 8k to bufory.

Jeżeli robisz coś prostego - interface do sterowania/odczytu danych to uIP wystarcza.

Reply to
Michoo

On 2013-03-17 19:08, Atlantis wrote: [...]

AVR wystarczy. Tutaj masz np. zabytkową wersję Ethernuta:

formatting link
Ja z kolei tak z 7-8 lat temu odpaliłem Nut/OS-a z małym serwerkiem HTTP na H8/3068 który miał w środku 16k RAM i 384k Flasha. I w zasadzie nie miałem problemów z RAM-em. :-D

Jak na AVR-ka to możesz spróbować Nut/OS-a z w/w stronki. Pewnie driver do ENC28J60 będziesz musiał napisać (chyba że masz już gotowca którego da się łatwo ożenić z Nut/OS). Możesz też zerknąć na XMK

formatting link
oraz uIP i/lub lwIP.

Reply to
JDX

Dnia Sun, 17 Mar 2013 19:08:58 +0100, Atlantis napisał(a):

W EdW 9/2008 był projekt eksperymentalnego łącza audio po ethernecie, na MEGA32 i ENC, z wykorzystaniem protokołu UDP.

Reply to
badworm

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.