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

Wybór mikrokontrolera do projektu z rtl8019(as) i uIP-AVR: AT90S8515 czy ATmega32?

alexo134 20 Mar 2005 01:59 3993 10
REKLAMA
  • #1 1330956
    alexo134
    Poziom 2  
    Posty: 3
    Witam!

    Mam zamiar wykonać urządzenie zapalające diody, sterowane przez sieć ethernet (najlepiej z wykorzystaniem prorokołu IP)

    Wybrałem ten moduł:
    http://www.propox.com/products/t_91.htm

    Zainteresowało mnie również oprogramowanie:
    http://www.laskater.com/projects/uipAVR.htm

    Teraz mam problem z wybraniem mikrokontrolera - żeby kosztował mniej niż 30zł i miał ISP (bo mam już ten programator).
    Bawiłem się troche kompilatorem ImageCraft (tam ładnie pokazuje ile zostało miejsca) i takie wnioski:
    uIP-AVR v0.6 mieści się na AT90S8515 (zajęte 80%)
    uIP-AVR v0.9 mieści się dopiero na ATmega32 (zajęte 50%)

    którego wyboru dokanać?
    Jestem początkujący więc nie wiem jakie mogą byc problemy podczas
    zabawy z tym.
    Wolałby użyć wersji 0.9 - bo można zmieniać IP w trakcie działania
    Czy ATmega32 to dobry wybór (czy jest jakaś alternatywa z atmela?)
    Potrzebuje poprostu opini kogoś z doświadczeniem - bo sam niewiele wiem.

    Z góry dzięki za jakiekolwiek info![/url]

    Dodano po 12 [minuty]:

    dodam jeszcze że połączenie mikrokontrolera z rtl8019 będzie realizowane bezpośrednio przez 3 porty

    pozdrawiam!
  • REKLAMA
  • #2 1332304
    mzielin
    Poziom 22  
    Posty: 483
    Pomógł: 31
    Ocena: 16
    www.ethernut.de
  • REKLAMA
  • #3 1332648
    alexo134
    Poziom 2  
    Posty: 3
    mzielin napisał:
    www.ethernut.de


    No ale jak tak to oglądnąłem to na pierwszy rzut oka minimum to Atmega128 albo 103
  • #4 1334230
    mzielin
    Poziom 22  
    Posty: 483
    Pomógł: 31
    Ocena: 16
    Obecnie różnica w cenie nie jest duża, a dostajesz w pełni funkcjonalny RTOS, coraz bardziej rozbudowaną bibliotekę modułów dodatkowych, ponadto coraz więcej konstrukcji przyswaja sobię tą architekturę, np: czeski Charon I, lub Charon II. Na początek mimo wszystko polecam. Natomiast uIP to tylko sam stos IP. Obsługę serwera lub innych usług sam musisz napisać ;) . Zresztą w ethernut zaimplementowany jest właśnie on.
  • REKLAMA
  • #5 1337206
    alexo134
    Poziom 2  
    Posty: 3
    Ale z czy z tym ATmega32 + ethernut będzie tak prosto?
    a) nie mam zamiaru używaż dodatkowej zewnętrznej pamięci
    b) nie widze konfiguracji ethernut'a do podpięcia bezpośrednio przez porty, a tylko poprzez magistrale(czy to jest jakaś różnica?), gdyż w dokumentacji tego modułu co będe używał (MMlan2) pisze że w przypadku magistrali trzeba ustawienia rtl'a ładować za jakiejś pamięci eeprom (a to już pewnie dodatkowe koszty)
    c)czy dla mojej jednorazowej potrzeby uIP nie wsytarczy? chyba że z nim są jakieś problemy? (zauważyłem że można go skofigurować do komunikacji bezpośrednio przez 3 porty - do wyboru między magistralą)
  • #6 1531326
    craig
    Poziom 11  
    Posty: 7
    Witam

    Robiłem ostatnio serwer temperatury na at90s8515 i rtl8019as (dokładnie mmlan2) i mam pełną obsługę wysyłania i odbierania pakietów arp, icmp i możliwość rozszerzenia. Kod zajmuje 20.4% (1672 bajty) i jest cały czas ulepszany. Jest na licencji GPL, więc mogę się podzielić:)

    Pozdrawiam
  • #7 1531482
    delibert
    Poziom 13  
    Posty: 37
    Pomógł: 5
    alexo134 napisał:
    Ale z czy z tym ATmega32 + ethernut będzie tak prosto?

    Nie będzie prosto, ethernut nie będzie funkcjonował bez zewnętrznej pamięci RAM.

    Cytat:
    c)czy dla mojej jednorazowej potrzeby uIP nie wsytarczy? chyba że z nim są jakieś problemy? (zauważyłem że można go skofigurować do komunikacji bezpośrednio przez 3 porty - do wyboru między magistralą)
    Według mnie wystarczy. Twoim podstawowym problemem jest wybór metody komunikacji z urządzeniem. Raczej na pewno bedzie to połączenie przy użyciu protokołu TCP, z czym uIP bez problemu sobie poradzi. Ty musisz zaimplementować protokół warstwy aplikacji np. telnet lub http. Taka metafora (trudne słowo): połączenie TCP jest "rurą" do przenoszenia informacji, tak jak kabel w przypadku RS232. Cokolwiek wyślesz to "wyleci" po drugiej stronie, to Ty musisz określić zasady przesyłania danych lub zdecydować się na implementację istniejących protokołów.
  • REKLAMA
  • #8 1531489
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    craig napisał:
    Kod zajmuje 20.4% (1672 bajty) i jest cały czas ulepszany. Jest na licencji GPL, więc mogę się podzielić :)
    Ależ chętnie popodziwiamy... ;) Dodaj w załączniku w jakimś zipku, może się uda mi nawet przerobić na asm... :shock: ;)
    Pozdrawiam, Daniel
  • #9 1540650
    craig
    Poziom 11  
    Posty: 7
    to już jest w asm;)

    213.134.170.2/~offtza/avr/Serwer.zip
    Tylko niestety nie zawsze jest serwer włączony (w nocy może być problem;) ), więc trzeba polować od ca 8.00 do ca 00.00

    Pozdrawiam
  • #10 2444290
    zolciak
    Poziom 15  
    Posty: 163
    Pomógł: 6
    Ocena: 9
    Hmm, temat ciekawy. @craig, mógł bym poprosić source : zolciakk(_at_)wp.pl
    Dzieki.
  • #11 2444325
    craig
    Poziom 11  
    Posty: 7
    Nic nikomu nie wysyłam. Można sobie co najwyżej ściągnąć z http://213.134.191.134/~offtza/projekty.php wersję dla ICMP albo UDP w zależności od tego, która jest potrzebna. Ewentualna pomoc techniczna ma maila: offtza(at)gazeta(dot)pl Trwają jeszcze prace nad protokołem TCP z modbusem. Ale to dopiero za jakieś dwa miesiące...

    Pozdrawiam

    ps: Ten serwer chodzi non-stop, więc nie powinno być problemu;-)

Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczy wyboru mikrokontrolera do projektu sterowania diodami przez sieć Ethernet z wykorzystaniem modułu RTL8019AS (MMlan2) i stosu TCP/IP uIP-AVR. Rozważane są mikrokontrolery Atmel AT90S8515 oraz ATmega32, z ograniczeniem kosztu do 30 zł i obsługą ISP. Wersja uIP-AVR 0.6 mieści się na AT90S8515 (80% zajętości pamięci), natomiast nowsza 0.9 wymaga ATmega32 (50% zajętości). Użytkownik preferuje wersję 0.9 ze względu na możliwość zmiany IP w trakcie działania. Wskazano, że ethernut (wymagający mikrokontrolera Atmega128 lub Atmega103 oraz zewnętrznej pamięci RAM) oferuje pełny RTOS i rozbudowaną bibliotekę, ale jest bardziej skomplikowany i droższy. Użytkownik pyta o możliwość użycia ethernut bez zewnętrznej pamięci i o różnice w komunikacji przez magistralę versus porty bezpośrednie. W odpowiedziach podkreślono, że ethernut bez zewnętrznej pamięci RAM nie będzie działał, a uIP-AVR wystarczy do podstawowej komunikacji TCP, choć wymaga samodzielnej implementacji protokołów warstwy aplikacji (np. HTTP, Telnet). Przykładowy projekt serwera temperatury na AT90S8515 i RTL8019AS z uIP-AVR jest dostępny, zajmuje około 20% pamięci i obsługuje ARP, ICMP. Kod jest udostępniany na licencji GPL. Podsumowując, dla prostych zastosowań i ograniczonego budżetu AT90S8515 z uIP-AVR 0.6 jest wystarczający, natomiast dla większej funkcjonalności i wygody lepszy jest ATmega32 z uIP-AVR 0.9. Ethernut wymaga mocniejszego mikrokontrolera i dodatkowej pamięci, co zwiększa koszty i złożoność.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA