logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[ATMEGA128] ENC28J60 - interfejs w stylu socketów BSD

zdebel 15 Maj 2010 15:55 1615 8
REKLAMA
  • #1 8078504
    zdebel
    Poziom 15  
    Czy ktoś może popełnił stos z interfejsem w stylu socketów BSD na wyżej wymieniony układ? Stos z tuxgraphics jest bardzo prymitywny, tak jak sam autor mówi nadaje się on głównie do wysyłania prostej strony bez jakiejkolwiek bardziej skomplikowanej interakcji. Port uIP 0.9 jest w miarę ok, ale jak np. stworzyć dajmy na to klienta IRC-a za jego pomocą? Wszystko tam się odbywa na zasadzie automatu stanów. Nie mogę znaleźć rozwiązania, które umożliwiałoby mi po prostu:

    
    socket=connect()
    buff=read(socket)
    write(socket,buff)
    


    Czy ktoś z forumowiczów popełnił może taki stos i chciałby się nim podzielić, czy czeka mnie trochę roboty :D?
  • REKLAMA
  • #2 8078601
    tmf
    VIP Zasłużony dla elektroda
    Ze względu na ograniczone zasoby każdy stos na ATMege jest ograniczony. To bardziej zabawka, która ma pokazać, że się da, niż rozwiązanie nadające się do czegokolwiek. Za tą samą cenę kupisz AVR32 z serii UC3 z wbudowanym kontrolerem ethernetu, a co więcej - uruchomisz na tym przeportowany stos TCP/IP z linuxa. Albo wrecz odpalisz całego linuxa wraz klientem IRC.
  • #3 8078796
    zdebel
    Poziom 15  
    Ja wiem, że na armie/avr32/ mogę, ale mi chodzi o typowo jedno stabilne połączenie. Interesuje mnie czy ktoś się natknął na stos z takim interfejsem, bo jeżeli nie to będę musiał go po prostu napisać, a tak mógłbym trochę pracy zaoszczędzić sobie.
  • REKLAMA
  • #4 8079866
    michalko12
    Specjalista - Mikrokontrolery
    Poczytaj o uIP i lwIP
  • #5 8079922
    zdebel
    Poziom 15  
    Właśnie bawię się uIP i niestety nie ma on takiego interfejsu, 'program' jest automatem stanów, a nie bardzo potrafię sobie wyobrazić zaprogramowanie jakiegoś protokołu wyższej warstwy typu irc, klient gg itp. w ten sposób.
  • REKLAMA
  • #7 8126396
    zdebel
    Poziom 15  
    Najnowszy uIP w wersji 1.0 ma dość ciekawe protosockety, niestety pojawia się problem z gubieniem danych przy zbyt szybkim ich napływie (mała ilość, rzędu 1-2kB ale napływające szybko). Na chwilę obecną nie udaje mi się zmusić stosu aby poczekał przed nadpisywaniem bufora. IwIP wygląda zachęcająco, zobacze czy da się go przystosować do avr :)
  • REKLAMA
  • #8 8127095
    nenpa8lo
    Poziom 17  
    Jeżeli dobrze pamiętam lwIP w wersji domyślnej to 40kB kodu i najlepiej żebyś miał RTOSa na procku, ale bez też się da.
  • #9 8127618
    markosik20
    Poziom 33  
    nenpa8lo napisał:
    Jeżeli dobrze pamiętam lwIP w wersji domyślnej to 40kB kodu


    40kB Flash'a to jeszcze nie tak dużo...ale 10kB RAM'u to już dużo :wink:.
REKLAMA