Forum: Mikrocontroller und Digitale Elektronik Ethernet


von Timo (Gast)


Lesenswert?

Moin Moin

Ich (als fortgeschrittener Anfänger) habe mit großem Interesse die 
Postings zum Thema Netzwerk und Ethernet gelesen. Kann mir mal bitte 
jemand erklären, warum die meisten Leute den AVR immer in Kombination 
mit einem Controller für Ethernet verwenden ? Ist es mit einem Atmel 
90Sxxxx technisch nicht auch möglich Datenpakete zu verschicken und zu 
empfangen? Ich meine das man nicht das komplette TCP/IP Protokoll in 
maximal 8KB Speicher bekommt ist wohl klar aber reicht das nicht zum 
senden von „Hallo Welt“ oder einem ping aus?
Es währe nett, wenn Ihr (für mich) mal ein bisschen Licht ins Dunkele 
bringt ;-)
MFG
Timo Ottersberg

von Rainer (Gast)


Lesenswert?

Der Ethernet-Controller kümmert sich ja nicht um das TCP sondern nur um 
die untersten Layer, also das eigentliche Ethernet (MAC-Adressen, 
CSMA/CD usw). Du brauchst also ZUSÄTZLICH zu dem Ethernet-Controller 
einen eigenen Controller (zB AVR), der das TCP (der was dann auch immer) 
implementiert (BTW, ein funktionsfähiges TCP ist in einem AVR auf jeden 
Fall zu machen, 8k sollten leicht reichen).

von mikki merten (Gast)


Lesenswert?

@TIMO
Schau dir am besten einmal das Datenblatt eines Ethernet-Controllers an, 
welche Funktionen dieser für den Hardware-Layer enthält. Diese lassen 
sich sinnvollerweise nicht in Software mit einem AVR nachbilden. Die 
meisten preiswerten Controller verfügen schon über 16k SRAM im Gegensatz 
zu den bescheidenen 4K eines MEGA 128. Für den Protokollstack eignen 
sich die AVRs ab 8515 aufwärts recht gut.

von Timo (Gast)


Lesenswert?

Danke für die schnellen Antworten

Nun wird mir schon einiges klar. Könnt Ihr mir noch mal einen 
billigen/einfachen Controller empfehlen? (mit Bezugsquelle)  Also die 
Controller für mehr als 25€ sind mir eigentlich schon zu teuer.

von Rainer (Gast)


Lesenswert?

Hmm... Der ideale Controller ist eigentlich meiner Ansicht nach der 
CS8900A, ist aber eher schwer zu bekommen (als Privatperson). Eine 
andere Möglichkeit ist ein RT8029-Chip den du auf etlichen 
Netzwerkkarten findest - billge bei ebay kaufen und Chip runterlöten :).
Wenn du nicht unbedingt einen AVR verwenden willst dann schau dir mal 
den DS80C400 an (http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3609): 
integrierter 10/100MBit MAC und meines Wissens nach auch ein frei 
verfügbarer Stack!

von Timo (Gast)


Lesenswert?

Moin nochmal

@Rainer
Also die Lösung mit derm RTL8029 gefällt mir gut. Ich habe sogar noch 
eine Netzwerkkarte mit dem Chip liegen. Nur ich denke, dass ich es wohl 
kaum schaffen werde die 100 Pins abzulöten und ohne fehler wieder 
aufzulöten.

@all
Hat schon jemand erfahrung mit dem IPC@CHIP?
http://www.bcl.de
Der gefällt mir (bis auf den Preis 66€ + MWSt) ganz gut. Vor allem 
scheint mir die Programmierung und der Anschluss von anderen Geräten 
recht einfach zu sein. Ich kopiere hir mal ein paar Daten rein.
• 186-20MHz 16 Bit CPU
• 512 Kbytes RAM, 512 Kbytes Flash
• RTOS mit Flash Datensystem
• Software download via Serial Port oder Ethernet
• TCP/IP, PPP, HTTP, FTP, Telnet, POP3, SMTP und DHCP
• Ethernet 10BaseT mit PHY
• 2 schnelle Serial Ports mit TTL-RS232 RXD, TXD, CTS, RTS
• I²C Bus, Watchdog
• 2 Timer Ausgänge, 2 Timer Eingänge

von Rainer (Gast)


Lesenswert?

IPC@Chip ist ganz nett, wollte ich mal für ein Projekt einsetzen - das 
Problem, dass wir dann hatten war der zu kleine Adressraum (lächerlich 
klein, nur 256 Byte oder so, soweit ich mich erinnern kann).

von Peter D. (peda)


Lesenswert?

Ich benutze den LAN91C96.

Der kann nämlich ohne jede weitere Hardware direkt an einen AT90S8515 
oder AT89C52 angeschlossen werden, da er ein internes Adreßlatch hat. Er 
benötigt also nur 11 Pins (AD0..AD7, /RD, /WR, ALE).

Er hat 6kB RAM Puffer intern.


Peter

von TheCrasher (Gast)


Lesenswert?

Hi Folks,

Wo wir gerade so schön beim Thema Ethernet mit AVR's sind. Hälts jemand 
für möglich mit einem (oder meinetwegen mit hundert) AVR('s) nen 
Hardwarerouter für nen DSL Anschluss zu basteln? Würde mich extrem 
reizen (Stichwort: Was die Industrie kann können wir schon lange ;o) ). 
Thx für jede (hilfreiche) Antwort ;o).

TheCrasher

von Timo (Gast)


Lesenswert?

Moin Leute

Also die erste Hürde währe genommen.  Ich habe den RTL8029 mit 100 Pins 
in ca. 45 min von der Platine entfernt. Doch nun geht’s ja erst richtig 
los. Leider finde ich außer dem Datenblatt nichts im Internet. Evtl. 
könnt Ihr mir ja mal ein paar Links, Schaltpläne, Bilder oder ähnliches 
zukommen lassen.
Thx  :-)

von Martin (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Timo!

Wer suchet, der findet!

Obiges Zip findet sich auf der Herstellerseite des RTL8029.

http://www.realtek.com.tw/  unter "Products"

Viel Spass beim Löten.

von Martin (Gast)


Lesenswert?

Ich habe vergessen zu erwähnen,dass es da auch Anwendungsbeispiele 
gibt!!

von Thorsten (Gast)


Lesenswert?

Hi,

ich löte SMD ICs mit einem Heißluftfön aus, klappt wunderbar


mfg
Thorsten

von Timo Ottersberg (Gast)


Lesenswert?

Na gut habe ich mir halt ein bisschen mehr arbeit gemacht. Wenn der Chip 
das überlebt ist das wirklich ne gute Idee. Aber hat noch jemand nen 
Tipp für mich wie mann den wieder auflötet ? Ich habe mir so gedacht, 
dass ich alle Leiterbahnen verzinne und anschließend den Chip aufsetze 
und jedes Bein noch einmal kurz warm mache.

Danke nochmal für die vielen Tipps und anregungen
Timo

von Gralf (Gast)


Lesenswert?

@TheCrasher
Warum soviel Mühe machen? Schon mal was von Fli4L gehört? www.fli4l.de
Das ist ein Software-Router und alles, was man sonst noch so braucht 
(Print-Server etc.) unter Linux.
Das besondere ist, daß das ganze auf eine Diskette paßt und auf einem 
alten Rechner läuft (für DSL ein 486er ohne Festplatte/CD-ROM/Monitor). 
Für die Linux-Fremden gibt es auch einen Wizard unter Windows, der dann 
die Konfiguration übernimmt.

@alle
Was mich aber interessieren würde: Kann man einen FTP-Server in einen 
AVR integrieren? So könnte man z.B. bei einen Stand-alone-MP3-Player 
leichter Software aufspielen.

von TheCrasher (Gast)


Lesenswert?

Natürlich kenn ich Fli4l.. mal ganz davon abgesehen das ich das auch 
ohne diese "Ding" hinkriegen würde.. weil ich rein zufällig schon 
massenhaft Masquerading Router für Freunde unter Linux eingerichtet hab. 
Aber diese Dinger haben ALLE ein paar ganz bestimmte Nachteile:

1.) Meine Eltern haben kein Peil wie man nen Linux Router ordungsgemäß 
runterfährt (Den dürft ich dann alles 2 Woche neu installieren)
2.) Son Rechner frißt recht viel Strom (Den ICH dann wohl bezahlen 
müsste)
3.) Ist das Ding aus, komm ich nicht ins I-Net (Und meine Sis würde das 
Ding Garantier immer genau dann runterfahren wenn ich von ner 80GB Datei 
noch 2K bräuche!)
und zu guter Letzt:
4.) Son Softwarerouter ist deutlich langsamer als ein Hardwarerouter

Das alles und die Frage ob sowas zu realisieren wäre vor allem hat mich 
auf die Idee gebracht!
Ich bin zur Zeit die Schaltpläne am entwickeln und schreib danach die 
Software. Wenn ich fertig bin poste ich mal den ganzen Kram ;o).


MFG TheCrasher

von Jochen (Gast)


Lesenswert?

@TheCrasher:

Zu 1.):
Wenn Du schon massenhaft Router eingerichtet hast, dann weisst Du 
sicherlich auch, dass man dann alle Dateisysteme schon aus Sicherheits 
gründen readonly mountet und für /var die Ramdisk nutzt. Da kann dann 
nix kaputtgehen, auch wenn man das Ding im Minutentakt ausschaltet.
Im übrigen gibt es für Linux schon seit Ewigkeiten 
Journaling-Dateisysteme, so dass selbst, wenn ein Stümper einen Router 
so einrichtet, dass alle Dateisysteme writeable sind, auch nix passiert 
und im schlimmsten Fall irgendwelche temporären Dateien flöten sind.
Aber das sollte Dir ja bekannt sein, es sei denn, Du machst nur 
klickibunti bei SuSE oder RedHat...

Zu 2.):
Der Stromverbrauch ist in der Tat ein bisschen höher. Dafür kann die 
Kiste dann auch wesentlich mehr. Insbesondere so schicke Sachen wie 
Netfilter, etc. Mit so nem kleinen MC kannst Du so Sachen wie 
anständiges ICQ, FTP, etc. über NAT vergessen...

Zu 3.):
Einfach der Schwester ein paar auf die Ohren geben. Im übrigen 
beherrschen alle vernünftigen Server Resume, so dass das auch keinen 
jucken dürfte.

Zu 4.):
Fast alle auf dem Markt befindlichen Router sind Softwarerouter, so auch 
das von Dir vorgeschlagene Projekt.
Schliesslich läuft da ein Programm.
Ausserdem sind ein 100MBit-LAN plus eine 100MBit-DMZ für einen 386er 
unter Linux kein Problem...

von Rainer (Gast)


Lesenswert?

Kleine Anmerkung noch zu Jochens Kommentar, obwohl ich ihm 100%ig 
zustimme...

ad 1: Wieso denn bitte runterfahren? Mein Linux-Router (=auch Webserver, 
FTP usw; K6 mit 200MHz) läuft seit über 200 Tagen hinter einer USW 
absolut problemlos!

ad 2: Wer das Geld für nen DSL-Internet-Anschluss und dann noch für 
Elektronik-Projekte (die zB in der Platinen-Herstellung und bei 
Messgeräten ziemlich teuer werden können) hat, dem sollte es auf ein 
bisschen Strom mehr oder weniger auch nicht mehr ankommen... Außerdem 
frisst ein 486er auch nicht wirklich so viel, und wenns wirklich drauf 
ankommen sollte, dann kannst du dir nen Low-Power-Industrie-PC zulegen - 
kommt dir wahrschienlich immer noch nicht viel teurer als die PLatine + 
AVRs + Ethernet-Chips usw..

ad 3: Resuming ist echt cool :).. Außerdem haben (zumindest bei mir) 
Leute, die keinen Plan haben, die Finger von dem Zeug zu lassen. Noch 
dazu hat der PC weder Monitor noch Tastatur oder sogar Maus und steht 
irgendwo hinter einigen Ordnern unterm Tisch, also kommt uach keiner auf 
die Idee ihn einfach abzuschalten (was aber ja dank ext3 kein Problem 
sein sollte).

ad 4: Dein beschriebenes Projekt ist wie von Jochen richtig gesagt auch 
ein Softwarerouter, und noch dazu mit Sicherheit weit langsamer, als 
Linux dass auf nem 386er lösen würde! Hardwareseitiges TCP zu 
implementieren wär zwar sicherlich echt cool - dennoch würde dein dann 
wahrscheinlich notwendiges Riesen-FPGA immer noch die ganze Zeit auf den 
Ethernet-Chip warten müssen, denn die sind auch nicht unbedingt 
besonders schnell.
Außerdem sollte man bei momentanen DSLs (also mit Geschwindigkeiten von 
max 1.5MBit) weder hier noch dort Probleme kriegen.

Rainer.

von Dirk (Gast)


Lesenswert?

Hi,

µC SMD ausloeten und einloeten mit Hand ist kinderleicht....

Ausloeten: man nehme sich loetzinn und saugt alle beine Kraftig ein. So 
das eine Loetzinn mauer den chip umgibt... dann den loetkobeln immer 
durchs loetzinn ziehen also alle vier seiten.... man nehme sich ein 
Zahnmedizinsiches Tool und schwups ist der µC runta.... den rest loetzin 
mit entloetsauglitze sauber machen....


Aufloeten: Man kaufe sich Flux (einige Sagen Flax = Flussmittel, klebt 
wie sau :) )und dann haste den µC innerhalb von ca 2 min per Hand 
aufgeloetet :)

von Marko B. (Gast)


Lesenswert?

Zum SMD-Auslöten nehm ich immer die Herdplatte. Geht sehr schnell und 
problemlos; wenn man aufpaßt, dann passiert auch der Platine nix. Ist 
auch schonender für die Bauteile.

von TheCrasher (Gast)


Lesenswert?

Hi Leutz,

Danke erst mal Jochen & Reiner. Was ihr das sagt ist mir alles kalr 
wie'n Klärchen und auch super einleuchtend.. wenns da nicht ein problem 
gäbe... meine Eltern (JaJa ich weiß.. zieh doch aus.. bla bla bla.. 
studieren gibts nicht umsonst ;o) ). Meine Mum hat so ne Art aversion 
gegen Computer.. zumindest ein bisschen.. deshalb darf ich den Router 
nicht laufen lassen! Und mein Dad kommt mir dann auch mit dem 
Stromproblem (Ganz egal wie wenig unterschied das macht)! Und wenn ich 
den Router wie ich schon sagte immer ausschalte... dann macht meine Sis 
das mit 800%tiger laufend aus wenns mir grad gar nich passt (Egal ob mir 
jetzt en Download abbricht oder net, das nervt wie die Socke weil der 
Server im Keller steht und ja net per Remote angeschaltet werden kann 
(oder geht das irgendwie?))! Mein Problem bleibt also. Ach so was das 
ausschalten & kaputt angeht.. er mag nicht kaputt gehen.. aber der 
scannt jedesmal die platte wieder durch! Und das dauert (Auch wenn mans 
verhindern kann ich weiß, ich weiß)! Deshalb (und weil ich posen will 
natürlich ;o) ) wollt ich das mal probieren! Kennt einer von euch nen 
guten DSL Modemchip?

Thx for help!

TheCrasher

von Basti (Gast)


Lesenswert?

Also das mit dem remote anschalten des PCs könntest du doch über PowerUp 
on LAN realisieren!? Es sei denn dein server untestützt es nicht. Um 
einen eigenen Router zu bauen wäre doch die einfachste Lösung die. Da 
die Sache mit dem Softwarerouter soweit geklärt ist würde ich einen 
einen Embedded PC (MINI ITX, One Board Controller) mit Ethernetanschluss 
nehmen.

Hat mehrere Vorteile:
1. Relativ günstig im Vergleich zur Eintwicklung eines
   board (VIA's Mini ITX mit 800 MHz ca 150Eur[sogar intel
   compatibler befehlssatz :)) ]])
2. Du brauchst Dir "keine" gedanken über die Hardware machen
3. Software gibt es reichlich im Internet z.B Fli4l

Falls es Dir ein derartiges Projekt aber zu einfach ist kannst Du ja 
immer noch mit einer Low Level Programmierung
beginnen. (Zur Not gibt es Oneboard Controller ja auch mit anderen 
Prozessor Designs AVR PIC (selbst auf einem kleinen
PIC 12C580 ist es möglich ein tcp/ip stack aufzubauen. Bei einem PIC der 
16Reihe passt sogar noch TFTP, WEB und SMTP drauf. www.microchip.com)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.