Ethernet till AtMega1284 (var:Ethernet till en AtMega168)

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
H.O
Inlägg: 5912
Blev medlem: 19 mars 2007, 10:11:27
Ort: Ronneby

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av H.O »

Jag kör W5100 med en PIC18 och trots att jag är ethernet-rookie så har jag fått den att fungera. Jag är dock inte i stånd att bedömma hur den är prestandamässigt i förhållande till en mjukvarustack. Jag kör SPI mellan W5100 och PIC'en så flaskhalsen är garanterat där i mitt fall. Som du sa, kul chip!
Användarvisningsbild
jesper
Inlägg: 722
Blev medlem: 12 juni 2006, 16:04:08
Ort: Laem Mae Phim, Thailand

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av jesper »

Eller Texas/Luminary LM3S6965. Har inbyggd PHY.
Lätt som en plätt med lwIP.
Deja vu?
Användarvisningsbild
AndLi
Inlägg: 18251
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av AndLi »

jesper: det är bra att du påminner :) listpris verkar vara ca 11USD i 100 tal.

H.o: Jag tror spi kommer bli flaskhalsen, om jag förstog databladet rätt finns det inget sätt att läsa ut en hel buffer utan man måste hålla på och skicka läskommando för varje byte, så för att läsa ut 8 bitar behövs det 24 klockpulser, och min spi klocka verkar vara 70ns / 14.28MHz, vilket då skulle betyda 581 kByte/s. Vilket väll iof lär hålla de flesta 8bitars µC upptagna, om de ens kan generera en 14MHz spi klocka från början.

Jag tror jag behöver ca 100-150 kBit/s
Användarvisningsbild
jesper
Inlägg: 722
Blev medlem: 12 juni 2006, 16:04:08
Ort: Laem Mae Phim, Thailand

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av jesper »

Det finns en lite billigare variant, LM3S6100, ca $8 vid 100.
Inga direkt billiga kretsar kanske, men å andra sidan är det oftast den enda som behövs då PHY är inbyggd.

Föreslog denna sist du frågade, då det verkade vara bråttom.

Hur länge har du hållit på att försöka labba fram en lösning? Och hur funkar det?
Att lägga in en lwIP stack i en LM3S krets tar endast marginelt längre än själva nedladdningen.

Tid är pengar. (Om inte man inte bara gör det för att lära sig eller för skojs skull).
H.O
Inlägg: 5912
Blev medlem: 19 mars 2007, 10:11:27
Ort: Ronneby

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av H.O »

Angående W5100:
Det är riktigt, i SPI mode måste varje byte som ska läsas eller skrivas addreseras individuellt. Dessutom måste du lägga till en OP-kod (läs/skriv) så det går åt 32 klockpulser per byte.

Det finns något dom kallar Indirect Bus Interface Mode där man, om jag förstår det rätt, klockar in en startadress (via databussen (inte adressbussen)) och sedan läser (eller skriver) data sekventiellt. Detta borde vara betydligt snabbare än SPI men med det kostar fler I/O, dock inte lika många som Direct Interface vilket av naturliga skäl också är det snabbaste.

W5100-specen säger just minimum 70 ns för SPI-klockan så fortare än ~14 MHz eller ~430 kByte/s är inte aktuellt med SPI oavsett vilken CPU du har.
Användarvisningsbild
AndLi
Inlägg: 18251
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av AndLi »

Heltid sen jag starta tråden.... :)

Nä, några strötimmar här och några strötimmar där, när någon sticker ett utvecklingskit under näsan provar jag väll det under några timmar.
Det handlar mer om 10% / labprojekt/ petproject än en tids/penga pressad produktutveckling, så det är nog än så länge mer läro/skoj än något annat.

Enda som faktiskt har gett mig en fungerande tcp koppling hittils är silabs cp2201...

ho: stämmer såklart, hade för mig det bara var en addresbyte. Vad jag tyckte var lite synd på SPI versionen var att IRQ linan inte användas? Hade ju varit smidigt att veta att något hänt utan att behöva polla hela tiden.. Annars verkar det behövas 4 i/o för SPI , 14 för indirect och 27 för direct, så det gäller att ha gott om i/o...
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av blueint »

Ser att det nämts lite olika ethernet chips förutom dom på EF-wikin, så hur bra är dessa?

* Silabs CP2201

* LPC2368

* LM3S6965

* Silabs C8051F120

* Microchip ENC624J600

* LM3S6100

Hårdvaru TCP/IP:
* Wiznet 5100 (4 socket)

Hur bra är dom olika mjukvaru TCP/IP stackarna?
* lwIP
* uIP
Användarvisningsbild
AndLi
Inlägg: 18251
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av AndLi »

C8051F120 är en vanlig µC inget ethernet chip...
H.O
Inlägg: 5912
Blev medlem: 19 mars 2007, 10:11:27
Ort: Ronneby

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av H.O »

AndLi,
Jag har inte provat/verifierat men vad jag förstår så ska /INT-pinnen fungera oavsett mode. Det finns en app-note för SPI och där står /INT-pinnen listad som optional så min uppfattning är att den ska fungera.

En nackdel med W5100 är att den inte är direkt prototyp-vänligt - 0.2mm ben på 0.4mm pitch, det gick att montera den med vanlig lödkolv men det var lite pilligt och inget jag vill göra speciellt ofta....

Såg just att det finns en W5200 som också har SPI (till skillnad mot W5300) men 32k buffert-minne, 8 sockets och SPI klockfrekvens på upp till 80 MHz.
limpan4all
Inlägg: 8444
Blev medlem: 15 april 2006, 18:57:29
Ort: Typ Nyköping

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av limpan4all »

Om du tittar i denna tråd så kanske du får mera matnyttigt.
http://elektronikforumet.com/forum/view ... it=MEGA128

Så jag rekommenderar starkt Davicom DM9000 den kommer att funka mycket bra mot AtMEGEA1284.
Användarvisningsbild
AndLi
Inlägg: 18251
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av AndLi »

Den förkompilerade CMX stacken från Silabs kollar att man faktiskt kör mot ett Silabs chip, och F380 är för nytt för att passera den testen... Ryktet säger att det ska fixas, kan man kompilera stacken från källkod funkar den mot en F380...

Fick en stund över att prova W5100 idag, och lysdioderna för ethstatus tänds (vilket typ kräver ström och rätt spänning på resetpinnen ) men jag kan bara skicka ner en sekvens av READ/WRITE ADDR ADDR DATA över SPI. Första gången gör den precis som den ska, klockar ut 0,1,2,3 om man gör en WRITE och 0,1,2,data om man gör en write. Men försöker man sen sig på en lösning/skrivning i något annat (eller samma) register igen är MISO pinnen helt still. Div delayer och olika snabba klockor är också provade. Drar man i resetpinnen och provar ett nytt register funkar det precis som det ska igen..

Lite magiskt tycker jag, eftersom jag såklart tycker att jag gör allt rätt, höjer och sänker ChipSelect osv, men något är bevisligen fel :( Får kolla lite fler exempelkoder tror jag, kanske rent av sno någons kod :)
H.O
Inlägg: 5912
Blev medlem: 19 mars 2007, 10:11:27
Ort: Ronneby

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av H.O »

Har du testat att, som första operation köra en soft-reset (skriv $80 till mode-registret)?
Släpper du /CS pinnen mellan de individuella försöken att läsa/skriva eller håller du den låg? Nu var det ett tag sedan jag läste databladet så jag vet inte om man bör/ska/måste släppa den men jag gör det i min kod och det har fungerat fint.

/Henrik.
Användarvisningsbild
AndLi
Inlägg: 18251
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av AndLi »

Yepp, soft reset är det första jag gör, och den gör som den ska(=MISO ändras, räknas upp) , men försöker jag sen läsa tillbaka den, eller skicka en softreset till ligger MISO hög hela tiden.

/CS går hög mellan varje 4 tecken alltså efter en sekvens av R/W ADDR ADDR DATA.

CLK ligger låg mellan alla tecken och MOSI ligger på vad den råkar vara, timeingen mellan alla omslag tycker jag ser ut att vara rätt, började med klockan på 10MHz och sen 5MHz. Tycker inte det borde vara problemet då de första 4 teckena klockas in rätt.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av blueint »

Finns det inget kod- eller timingexempel att använda som referens?
Användarvisningsbild
AndLi
Inlägg: 18251
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Ethernet till AtMega1284 (var:Ethernet till en AtMega168

Inlägg av AndLi »

Jodå, det finns ganska många som använt chipet för atmegor på nätet, och databladet har ganska tydlig bild på hur timingen ska vara, iof hittar jag inga minimum tider mellan två olika registerskrivningar..
Skriv svar