Forum: Mikrocontroller und Digitale Elektronik Software Ethernet?


von K. A. (flashbanger)


Lesenswert?

Hallo

Ich hab mal eine Frage. Ich will eine Ethernet-kompatible Schaltung 
bauen. Die aufgaben sollen sein.

Webserver(muss nicht schnell sein)
Telnetserver(muss auch nicht schnell sein)

Ich hab zwar noch eine ISA-Bus Netzwekkarte nur ist die mir zu groß und 
ich will den Chip nicht ablöten. Einen fertigen Chip will ich auch nicht 
verwenden, da ich gehört habe man könnte Ethernet auch durch Software 
erzeugen. Ich hab keine großen anforderungen. Full-Duplex brauch ich 
nicht und 10Mbit sind schon mehr als genug. Daher ein paar Fragen.


Gibt es unter 10Mbit noch etwas?? Vllt 1Mbit. Verstehen 10/100Mbit 
geräte ein solches 1Mbit Netzwerk?

Was passiert wenn ich ein Halb-duplex Gerät an einen Hub/switch 
anschließe? Ist es foll funktionsfähig?(außer dass ich nicht 
gleichzeitig senden und empfangen kann).

Kann man mein gerät so einstellen, dass es unter einer bestimmten 
http-Adresse gefunden wird(ohne die IP zu wissen), also so wie die 
Fritzbox

http://fritz.box/


Was ist mit der MAC-Adresse? gibt es Bereiche, die frei zu nutzen sind? 
Ich hab gehört,dass manche firmen einen bestimmten Bereich reserviert 
haben.


MfG Flashbanger


Ach ja ich hatte vor einen ATMEGA-8@16Mhz zu benutzen.

von Falk B. (falk)


Lesenswert?

@ Jalmar Tschakert (flashbanger)

>Webserver(muss nicht schnell sein)
>Telnetserver(muss auch nicht schnell sein)

Gibt tonnenweise im Netz. Ethernut& Co.

>ich will den Chip nicht ablöten. Einen fertigen Chip will ich auch nicht
>verwenden, da ich gehört habe man könnte Ethernet auch durch Software
>erzeugen.

Kaum. Ein Tranceiver ist immer notwendig. Wie dieser hier.

http://shop.mikrocontroller.net/csc_articles.php?VID=iZJeNFxMrZDXoM8x&saSearch[category]=Ethernet

>Gibt es unter 10Mbit noch etwas??

Nein.

>Was passiert wenn ich ein Halb-duplex Gerät an einen Hub/switch
>anschließe? Ist es foll funktionsfähig?(außer dass ich nicht
>gleichzeitig senden und empfangen kann).

ja.

>Kann man mein gerät so einstellen, dass es unter einer bestimmten
>http-Adresse gefunden wird(ohne die IP zu wissen), also so wie die
>Fritzbox

Dann braucht du doch TCP-IP. Das ist reine Software, aufbauen auf 
Ethernet Hard- und Software.

>Was ist mit der MAC-Adresse?

Die "Anschrift" deines Ethernet-Trancivers, weltweit einmalig für jeden 
IC.

> gibt es Bereiche, die frei zu nutzen sind?

ja.

>Ich hab gehört,dass manche firmen einen bestimmten Bereich reserviert
>haben.

Ja.

MFG
Falk

von K. A. (flashbanger)


Lesenswert?

Ist ein Transceiver nicht so etwas ähnliches wie ein Max232??? wenn ich 
mir so eine Netzwekkarte angugge, dann gibt es immer einen Chip und 
einen kleinen schwarzen kasten, bei mit z.B

20F001N
YCL 9535 G X

ICh will keine 32€ für einen Netzwekzugang ausgeben.

Einen Netzwekchip will ich auch nicht verwenden, weil die Teuer und so 
klein sind, dass ich sie sie sofort kaputt löte.

MfG Flashbanger

von Bernd S. (mms)


Lesenswert?

von Realtek gibt es Ethernet ICs die ebenfalls gern verwendet werden - 
kosten auch keine 32Euronen...

>Ist ein Transceiver nicht so etwas ähnliches wie ein Max232???

ein "Transceiver" hat die Aufgabe besitzt die OSI Schicht 1 (PHY) und / 
die MAC Schicht (wenn µController keine eigene besitzt) und muss deren 
Aufgaben erfüllen...

google mal nach OSI Model...

Bernd

von Robert S. (razer) Benutzerseite


Lesenswert?

Jalmar Tschakert wrote:
> Ist ein Transceiver nicht so etwas ähnliches wie ein Max232??? wenn ich
> mir so eine Netzwekkarte angugge, dann gibt es immer einen Chip und
> einen kleinen schwarzen kasten, bei mit z.B

Das sind Übertrager. Ich habe gerade einen Webserver mit dem WIZ810J 
Modul von Wiznet gezeichnet. Siehe: 
http://www.circuitcellar.com/wiznet/sample.html Die Platine lass ich 
industriell fertigen. Bei Interesse melden. Hier der Link zu meinem 
Projekt: Beitrag "WIZ810 (WIZ5100) an XMEM Interface (AVR)"

Gruß Robert

von Falk B. (falk)


Lesenswert?

@ Jalmar Tschakert (flashbanger)

>Ist ein Transceiver nicht so etwas ähnliches wie ein Max232???

Nicht nur, der kann noch viel mehr.

>ICh will keine 32€ für einen Netzwekzugang ausgeben.

Da wirst du wohl schwer drum herum kommen. Wenn es mit MEGA8 + bissel 
Software ginge, hätte es wahrscheinlich schon jemand gemacht.

>Einen Netzwekchip will ich auch nicht verwenden, weil die Teuer und so
>klein sind, dass ich sie sie sofort kaputt löte.

Dann fang mit einfachen Sachen an! Ausserdem kann der IC im Link 
gesteckt werden.

MFG
Falk

von Pyro (Gast)


Lesenswert?

http://fritz.box/
Das ist eine URL die von dem DNS Server im Router in eine IP umgewandelt 
wird.

von Jonas G. (jonny)


Lesenswert?

Der ENC26J20 wäre ja auch als DIP zu kaufen...
Habe ich auch in Verwendung

Siehe hier das Ergebnis:
http://fileserver.selfip.com/

Jonas

von K. A. (flashbanger)


Lesenswert?

Das Ethernetprotokoll ist in Wikipedia so beschrieben.




http://upload.wikimedia.org/wikipedia/de/f/fa/Etherframe.png



Es soll mit ca. 10Mhz arbeiten. Das sollte der AVR doch packen. wenns 
sein muss benutz ich 2 AVR's einen zum senen/empfangen den anderen für 
die hauptaufgaben.


MfG Flashbanger

von Falk B. (falk)


Lesenswert?

@ Jalmar Tschakert (flashbanger)

>Das Ethernetprotokoll ist in Wikipedia so beschrieben.

Schön für Wikipedia.

>Es soll mit ca. 10Mhz arbeiten. Das sollte der AVR doch packen.

Du redest wie du es verstehst. Und du verstehst nicht die Bohne. Es gibt 
einen "kleinen" Unterschied zwischen Datenrate (Ethernet 10 Mbit/s, 
durch Manchesterkodierung 20 Mbit/s) und Taktfreqeunz eines 
Mikrocontrollers.

>sein muss benutz ich 2 AVR's einen zum senen/empfangen den anderen für
>die hauptaufgaben.

Warum? Es wird doch nur Halbduplex gefordert.
Es gibt im Netz eine USB-Anbindung nur mit AVR, dort werden 1,5 Mbit/s 
gebraucht. Das ist das höchste der Gefühle, was dort machbar ist.

MfG
Falk

P.S. Aber ich will nicht ausschliessen, dass es mit cleverer 
Schaltungstechnik und wenig ICs auch ein Ethernet machbar sind (externes 
Schieberegister etc.). Wobei der Empfang der Knackpunkt sein dürfte 
(Machesterdekoder und Taktrückgewinnung).

von Andreas K. (a-k)


Lesenswert?

Falk Brunner wrote:

> Es gibt im Netz eine USB-Anbindung nur mit AVR, dort werden 1,5 Mbit/s
> gebraucht. Das ist das höchste der Gefühle, was dort machbar ist.

10Mbps UDP geht auch, sofern man nur senden will:
http://www.cesko.host.sk/IgorPlugUDP/IgorPlug-UDP%20(AVR)_eng.htm

von Falk B. (falk)


Lesenswert?

Andreas Kaiser wrote:

> 10Mbps UDP geht auch, sofern man nur senden will:
> http://www.cesko.host.sk/IgorPlugUDP/IgorPlug-UDP%20(AVR)_eng.htm

Device supports only transmitting

Sagte ich das nicht bereits?

Aber ziemlich clever gemacht, wenn gleich auch Brute Force.

Mfg
Falk

von K. A. (flashbanger)


Lesenswert?

Gut hab in der Schublade noch eine ISA-Karte gefunden. Sie hat einen 
RTL8019AS-Chip. Sie ist von der Firma Mirconet und hat einen Netware 
aufkleber. Leider ist sie ein bissel groß, aber mit einer risercard 
sollte sie platzsparender versteckt werden können.


Naja mein Linux PC streikt zurzeit.


Aber mal eine Frage an die Freaks:

Wann wird einer es mal schaffen eine PCI karte zu benutzen??? Von den 
Dingern hab ich noch Millionen(leicht übertrieben). Von den ISA's nur 3!

MfG Flashbanger

von Wegstabenverbuchsler (Gast)


Lesenswert?

warum nimmst du nicht das hier diskutierte?

Beitrag "Kostenlos: TCP/IP-Modul mit Ethernet-Anschluss"

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

> Wann wird einer es mal schaffen eine PCI karte zu benutzen?

Kein Problem.  Mit 'ner 4-Lagen-Leiterplatte und einem ASIC oder FPGA
bist du sofort dabei.  OK, "sofort" ist relativ, du darfst dich sicher
erstmal intensiv mit der PCI-Spezifikation rumschlagen...

Um einen Logicanalyzer mit einer Auflösung im Bereich einiger
Nanosekunden wirst du vermutlich für die Entwicklungsarbeit nicht
herum kommen.  Das einmal für gut befundene erzeugte Layout ist
dann übrigens auch nicht mehr einfach von jedem abzuändern.

Anders ausgedrückt: PCI ist nunmal nicht als ,,Bastelbus'' konzipiert
worden und daher auch nicht als ein solcher verwendbar.  Dieser Bus
hat nur im Zusammenhang mit einer Massenproduktion wirklich Sinn.
Erst dann rentieren sich die vergleichsweise hohen Kosten für die
Einarbeitung, die Werkzeuge und die benötigte Elektronik.

von Andreas K. (a-k)


Lesenswert?

Es gibt Microcontroller der 32bit Klasse mit integriertem 
PCI-Bus-Master. Da kann man das machen - muss es aber nicht mehr, weil 
Ethernet schon drin.

von Andreas L. (andi84)


Lesenswert?

Kleiner Tip: ENC28J60 - klein, einfach und billig. Man muss nur ein paar 
Bugs umschiffen, aber das haben ja die, die den Stack geschrieben haben 
schon erledigt (großteils jedenfalls)

von K. A. (flashbanger)


Lesenswert?

Was meint ihr ist schwerer?? Einen PCI Bus zu erstellen und dann eine 
PCI netzwerkkarte benutzen oder das Ethernet direkt in software zu 
erstellen/empfangen?

Ist halt die Frage, wie schaff ich es mit einem 16Mhz schnellen AVR 
einen 10Mhz Takt zu empfangen/aufzuzeichnen. Dazu müsste ich die 
Serielle Übertragung auf eine Parrallele übertragung übertragen. Gibt es 
IC's, die so eine art staudamm bauen können? like this


Ich hab einen AVR, der mit 10Mhz einen Bus abfragt. Das ergebnis gibt er 
an 8 Ports aus(den 1.Bit am ersten dann den nächsten am 2 etc.) Der IC 
soll parralel an diesen Port hängen. Wenn er jetzt auf der 1 leitung ein 
signal bekommt soll er dieses Speichern, wenn er auf der 2. leitung ein 
signal bekommt soll er es auch speichern. Wenn er dann auf einer 
zusätzlichen 9.leitung einen Impuls bekommt soll er die Bit's wieder 
loslassen, und zwar gleichzeitig.

Also wie ein Staudamm.

So könnte ich den Stream in einem Ram buffern und dann auslesen und 
analysieren.

Versteht das jemand?

MfG Flashbanger

von Falk B. (falk)


Lesenswert?

@ Jalmar Tschakert (flashbanger)

>Was meint ihr ist schwerer?? Einen PCI Bus zu erstellen und dann eine
>PCI netzwerkkarte benutzen oder das Ethernet direkt in software zu
>erstellen/empfangen?

Ersteres ist ziemlich aufwändig, zweites nahezu unmöglich.

>IC's, die so eine art staudamm bauen können? like this

Staudamm? Nimm einen fertigen Tranceiver und gut. Dann schafft das auch 
ein 1 MHz AVR.

>Versteht das jemand?

Nicht wirklich. Lerne erstmal die Grundlagen, dann merkst du auch, warum 
dein "Ansatz" nicht funktioniert.

MFg
Falk

P.S. Man könnte vielleicht mit einem kleinen CPLD einen Mini-LowCost 
Ethernettranceiver bauen. Aber dazu braucht es auch ne MENGE KnowHow!

von Manuel (Gast)


Lesenswert?

Schau dir das mal an:

http://www.fpga4fun.com/10BASE-T0.html

da wird einiges erklärt und du verstehst vielleicht warum es nicht (so 
einfach) funktionieren kann mit deinem AVR - Wenn ich es auch nicht für 
völlig unmöglich halte (zumindest nicht mit ein paar AVR).

Gruß
  Manuel

von K. A. (flashbanger)


Lesenswert?

genau da ist das problem.

Gugg mal bei reichelt....findest du da einen transceiver? oder einen 
ethernet-controller? oder einen LAN-Chip? Nein. Ich will nicht 200 
komponenten bei 200 verschiedenen händlern bestellen. Im Ausland will 
ich gar nicht bestellen. Wenn ich nacher für ein bauteil 5-10€ ausgebe 
und das dann mit dem lötkolben kaputt mache dann hock ich da und hab 
5-10€ für ein bissel plastik-rauch ausgegeben. Ein AVR kostet 1,55€ da 
kann ich ruhig mal einen himmeln.

Außerdem um so weniger komponenten ich brauch umso billiger wird es und 
um so weniger muss ich fuddeln und löten. Und noch etwas: Ein 
software-Ethernet kann jedem nützlich sein. Die ethernetchips sind 
teurer als die µC's Und die meißten Menschen brauchen kein 
Full-Dualplex. Irgendwo hab ich gelesen, das ein AVR die meisten befehle 
während eines Taktes erledigen kann.

Mit staudamm meine ich ein bauteil, welchen den zustand einer leitung so 
lange halten kann bis er ein "los-lass-impluls" bekommt. Loslassen soll 
er die zustände dann aber parralel.

8. |  |  |  |  |  |  |
|  7. |  |  |  |  |  |
|  |  6. |  |  |  |  |
|  |  |  5. |  |  |  |
|  |  |  |  4. |  |  |
|  |  |  |  |  3. |  |
|  |  |  |  |  |  2. |
|  |  |  |  |  |  |  1.
##########################
#          IC            #--------loslassimpuls
##########################
8. 7. 6. 5. 4. 3. 2. 1.
|  |  |  |  |  |  |  |


der soll so  funktionieren. Oben kommen die Bit's zeitlich versetz rein 
und sollen nach dem loslassimpuls gleichzeitig als Byte rauskommen

MfG Flashbanger

von Claude (Gast)


Lesenswert?

" http://www.cesko.host.sk/IgorPlugUDP/IgorPlug-UDP%20(AVR)_eng.htm "

Zwar kein Webserver, kein RX und kein TCP/IP aber vielleicht kannst Du 
dir ja davon was abschauen.

von K. A. (flashbanger)


Lesenswert?

1
Forbidden
2
3
You don't have permission to access /IgorPlugUDP/IgorPlug-UDP (AVR on this server

Schade
Mfg Falshbanger

von Claude (Gast)


Lesenswert?

Nimm mal den ganzen Link mit Copy&Paste , Sorry!

von Andreas K. (a-k)


Lesenswert?

> Ist halt die Frage, wie schaff ich es mit einem 16Mhz schnellen AVR
> einen 10Mhz Takt zu empfangen/aufzuzeichnen.

Überhaupt nicht. Das Maximum was hinsichtlich Ethernet aus einem AVR 
rauszuholen ist, hat Igor Cesko mit seinem UDP-Sender realisiert, mehr 
geht nicht.

Und wenn du dann vielleicht doch zum Schluss kommen solltest, dass ein 
PCI-Bus zu viel Aufwand ist: Den ENC28J60 gibt's mit allem Zubehör bei 
CSD und dort ist das Porto durchaus erträglich.

von K. A. (flashbanger)


Lesenswert?

Gut das Projekt kenn ich schon. Kan aber nur Senden, mir kommt es eher 
auf das  Empfangen an.

Ich habe aber gerade einen geistesbliz. Ich benutze einige IC's um das 
Serielle signal auf ein parralleles Signal umzuwandeln, um es in einem 
RAM buffern zu können.

Dazu brauch ich ein IC, welches eine leitung mit 8 anderen leitungen 
verbindet. wenn der IC einen Takt von einem 10Mhz quarz bekommt soll er 
daraufhin die serielle leitung mit Ausgang0 verbinden. bekommt er den 
nächsten Takt, dann mit Ausgang1 usw usw. wenn er bei Ausgang7 ist, soll 
er wieder bei ausgang0 anfangen, und ein "ich-bin jetzt wieder bei 
ausgang0" signal loschicken. Ein anderer IC soll diese zeilich 
getrennten Bit's alle gleichzeitig aussenden, und ein CLK-Signal 
ausgeben. nun sind aus den 10Mhz nur noch 1,25Mhz geworden. Entweder ich 
benutze jetzt einen µC um dieses auszuwerten oder es kommt in einen Ram 
und wird später analsysiert.

MfG Flashbanger

von Andreas K. (a-k)


Lesenswert?

Sicher. So geht es. Das IC was Du suchst ist, wie schon geschrieben 
wurde, mit etwas Glück ein CPLD, ansonsten ein FPGA. Alternativ kannst 
du versuchen, ein Ethernet-PHY ohne MAC mehr oder weniger direkt zu 
bedienen, vielleicht geht das sogar. Ist natürlich alles mehr Aufwand 
als der ENC. Und einen PHY hat Reichelt wahrscheinlich auch nicht.

von Andreas K. (a-k)


Lesenswert?

Kleiner Tip noch: 10Mbps raus wie bei Igor ist deshalb einfach, weil der 
Sender den Takt vorgibt. Rein ist etwas schwieriger, weil eben der 
Sender den Takt vorgibt, nicht der Empfänger. Also irgendwie musst du 
dann den AVR dazu kriegen, synchron zum Ethernet-Takt zu arbeiten. 
Brauchst also eine Taktrückgewinnung aus dem Ethernet-Signal - und wirst 
dabei vielleicht irgendwann merken, dass die Bitrate auf dem 10Mbps 
Ethernet tatsächlich 20Mbps beträgt. Wegen der schon erwähnten 
Manchester-Codierung).

Du kannst dir natürlich auch diesen ganzen Kram schenken, und das Signal 
hinreichend schnell abtasten, in einen Speicher schreiben und dann per 
Software analysieren um die Bits rauszupfriemeln. Hardwaremässig ist das 
wirklich einfach, dem Prinzip nach jedenfalls. Nur: Um das bei dem 20MHz 
Manchester-Signal einigermassen zu schaffen, solltest du dann schon mit 
einem 200MHz ADC abtasten.

von Simon K. (simon) Benutzerseite


Lesenswert?

Jalmar Tschakert wrote:
> ...


Weißt du überhaupt Ansatzweise, wie du das Signal vom Kabel aus in 
deinen ominösen "Staudamm" kriegen sollst?

Allein diese Strecke möchte ich erstmal von dir als Schaltung sehen. Und 
zwar mit Manchester Codierung und allem Drum und Dran.

Danach kann man ja mal über den Mikroprozessor reden ;)


Falls es dir immernoch nicht aufgefallen ist: Es ist schwachsinnig 
Ethernet empfangen zu wollen und dabei keinen Ethernet-PHY Chip zu 
verwenden.

Den ENC28J60 gibt's übrigens bei http://www.csd-electronics.de


Aber vielleicht sollte der Herr "Flashbanger" lieber wieder 
Counter-Strike spielen gehen ;)

von K. A. (flashbanger)


Lesenswert?

Hat da einer ein Problem mit counter-strike??????

Naja aber was soll den so ein Ethernet-Phy sein? Ich hab gerade eine 
Netzwerkkarte vor mit liegen. Da gibt es einen RTL8029 so einen großen 
schwarzen kasten, auf dem steht 5V-->9V einen 20F001N YCL, einen 
16PT-006A YCL
einen kleinen IC einen Winbond und einen ATMEL 610.

WAS davon ist der PHY???

Sollte es keinen PHY bei reichelt geben dann kauf ich mir für 2,50 eine 
0815 Netzwerkkarte und bau den raus.(Ich hab sogar noch 20-30 PCI dinger 
rumfliegen, einige sind kaputt, bzw haben keine Blenden mehr)

MfG Flashbanger(<---Problem mit dem Namen??)

von Manuel (Gast)


Lesenswert?

Also das "schwarze Ding" am schluß vor der Ethernet Buchse ist 
normalerweise der Übertrager der dein Device galvanisch vom Ethernet 
trennt. Bin mir gerade nicht sicher ob der noch zur PHY schicht zählt.

Dein RTL* ist wohl ein IC mit integriertem PCI/MAC/PHY ... das muss 
nicht alles extra auf einem Chip sein. Das kann man schon integrieren 
und wird vor allem bei Netzwerkkarten auch genau so gemacht.

Gruß,
  Manuel

von K. A. (flashbanger)


Lesenswert?

Ok durch Manchester kodierung verdoppelt sich die abtastrate. Doppelter 
takt würde mir 2Bytes für ein Reales Byte bringen. aber 2,5Mhz am 
Systembus sollte mit Buffer möglich sein.

Doch der Staudamm macht immernoch die meißten probleme.

MfG Flashbanger

von I_ H. (i_h)


Lesenswert?

Vergiss die Sache lieber gleich wieder. Um die Daten ordentlich einlesen 
zu können brauchst du, bei idealen Rechteckflanken, mindestens 40 
MSamples/sek. Einlesen kannst du das mit der Geschwindigkeit, wenn du 
den uC auf 40MHz takten kannst, aber ganz sicher nicht verarbeiten. Das 
mit dem asynchronen Takt kann man auch noch rausrechnen, aber wie gesagt 
- dazu hast du garkeine Zeit.
Dafür müsste der arme Avr schon mindestens auf 400MHz laufen, und selbst 
dann musst du hochoptimierte Asm Routinen schreiben.


Versuch es stattdessen lieber mal mit TokenRing, das gibt's auch mit 
4MBit. Ist jedenfalls nicht ganz so unrealistisch wie Ethernet, aber 
auch ganz sicher nicht leicht.

von K. A. (flashbanger)


Lesenswert?

Aber ich will doch gar net peer AVR einlesen. Sondern die Serielle 
verbindung(Ethernet) auf eine Parrallele verbindung umwandeln(RAM) ICh 
will quasi alle 1522Byte in den ramm schreiben und dann vom AVR 
auslesen. Als RAM hätte ich ein SIMM-RAM mit 1MB in der BAstelkiste. 
Sollte für ein paar Packete reichen.


Die einfachste sache wäre es wenn es einen bausten gäbe, der bei einem 
impuls eine Verbindung zwischen einem PIN und einem Anderen PIN 
herstellt. Dabei soll er den Ausgabepin wechseln und mach 8 Takten 
wieder beim 1.Ausgang anfangen. So könnte ich Ethernet nach Parralel 
wandeln und dann im ram ablegen.(brauchte eine ander komponente, die den 
Adressbus des Rams bei jedem byte erhört. Wenn ein packet empfangen 
wurde, schaltet sich der AVR ins spiel ein und ließt die daten aus dem 
RAM aus. Dann muss er die noch entschlüsseln....... .

Der AVR soll packet für packet entschlüsseln.

MfG Flashbanger

von Andreas K. (a-k)


Lesenswert?

Probiers mal eins nach dem anderen. Nachdem du ja einen Takt benötigst, 
der deine Daten ins RAM speichert, und der Takt naturgemäss synchron zu 
dem Ethernet-Daten sein muss: Entwickle doch erst einmal eine Schaltung, 
die aus dem Ethernet-Signal einen dazu synchronen 10MHz oder 20MHz Takt 
ableitet. Vorher hat das Ganze keinen Sinn, denn mit einem nicht 
synchronen Takt gleicher Grössenordnung das Signal irgendwo zu speichern 
ergibt keine irgendwie sinnigen Daten sondern nur Müll.

Und wenn du das geschafft hast, dann kommt nochmal vorbei für den Rest. 
Ok?

von Manuel (Gast)


Lesenswert?

"Die einfachste sache wäre es wenn es einen bausten gäbe, der bei einem
impuls eine Verbindung ..."

gibts... nennt sich PHY

von Manuel (Gast)


Lesenswert?

@I_ H.

die Daten werden natürlich nicht analog eingelesen. Es reicht ja wenn 
ich die eingehenden Daten binär auswerte.

Ändern tut sich das erst wieder mit 10GBaseT wo 4 bit auf einmal 
übertragen werden. Aber das wäre dann wirklich zu viel für den AVR :-)

von Simon K. (simon) Benutzerseite


Lesenswert?

Manuel wrote:
> "Die einfachste sache wäre es wenn es einen bausten gäbe, der bei einem
> impuls eine Verbindung ..."
>
> gibts... nennt sich PHY

Genau DAS, wollte ich auch antworten...

Ganz schön hartnäckig der ThreadOpener. Naja ich bin raus und les nur 
noch. (Nette Vorstellung hier. *Popcorn holt)

von Wegstabenverbuchsler (Gast)


Lesenswert?

Hier mal die Kernaussage des Threadstarters:

- Ich hab zwar noch eine ISA-Bus Netzwekkarte nur ist die mir zu groß

- ich will den Chip nicht ablöten.

- ICh will keine 32€ für einen Netzwekzugang ausgeben

- Einen Netzwekchip will ich auch nicht verwenden, weil die Teuer und so
klein sind, dass ich sie sie sofort kaputt löte.

- Gut hab in der Schublade noch eine ISA-Karte gefunden. Sie hat einen
RTL8019AS-Chip. [..] Leider ist sie ein bissel groß, aber mit einer 
risercard sollte sie platzsparender versteckt werden können.

- Ich will nicht 200 komponenten bei 200 verschiedenen händlern 
bestellen.

- Wenn ich nacher für ein bauteil 5-10€ ausgebe
und das dann mit dem lötkolben kaputt mache dann hock ich da und hab
5-10€ für ein bissel plastik-rauch ausgegeben. Ein AVR kostet 1,55€ da
kann ich ruhig mal einen himmeln.

> Außerdem um so weniger komponenten ich brauch umso billiger wird es und
um so weniger muss ich fuddeln und löten.

> Mit staudamm meine ich ein bauteil, welchen den zustand einer leitung so
lange halten kann bis er ein "los-lass-impluls" bekommt. Loslassen soll
er die zustände dann aber parralel.


irgendwie ist mir grade ganz schwindelig, weil ich deise Aussagen nicht 
unter einem Hut bekomme  ....

von Tom N. (tom-nachdenk)


Lesenswert?

Am Ende ist ein PCI-Interface für den AVR doch noch die einfachere 
Lösung. Immerhin erinnere ich mich in der ct mal was von einem PCI-IDE 
Controller gelesen zu haben, der mehr oder weniger aus TTL-Chips 
aufgebaut war. Natürlich meilenweit an der Spezifikation vorbei aber 
funktionierend. Irgendwie  hat Intel es wohl auch geschafft den 
Tulip-Ethernetchip auf EISA-Karten einzusetzen.

von I_ H. (i_h)


Lesenswert?

Wobei EISA ganz was anderes ist als ISA.

@Threadersteller

Ist dir schonmal die Idee gekommen, dass du trotzdem alle Bits einzeln 
verarbeiten musst? Also wenn du 8 Samples parallel einließt 
(digitalsamples), hast du bei 40MHz CPU Takt (die sowieso kein normaler 
Atmel erreicht) noch 39.5 MIPS übrig, um 40MBit zu verarbeiten.
Oder um es mal anschaulicher zu machen: Du musst mit (im besten Fall) 
einer Instruktion 1.012 Bits verarbeiten - "verarbeiten" enthält dabei 
die Punkte

- Taktrückgewinnung (Datenwust reduziert sich auf 1/2)
- Manchester Code decodieren (nochmal auf 1/2)
- Bits zu Bytes zusammenführen (das allein wär vll. in einem Takt 
möglich),
- die Daten irgendwohin schicken

Bei 40MHz CPU Takt, die du eh nicht erreichst. Und das 2mal 1/2 nutzt 
dir auch so ziemlich nix, du darfst dann in 4 Takten die letzten beiden 
Schritte, 2mal den 2. und 4mal den 1. Schritt durchführen.

Da versuch lieber die kritischen Teile vom Tranceiver mit diskreten 
Bauteilen aufzubauen, viel anders sind die kommerziellen ja auch nicht 
gebaut (alles in einem Gehäuse und halt mit FPGA).

Kannst ja mal mit einem PLL rumexperimentieren ob du damit den Takt 
hinbekommst (weis nicht wie das in den Tranceivern gelößt ist). Wenn du 
das hast, machst du dich am besten an 'ne Manchester Decodierung.
Die ersten Ethernetkarten haben auch keine integrierten Transceiver 
gehabt, es ist also durchaus möglich, aber sicher nicht kleiner als 'ne 
ISA Karte.

Alternativ kannst du selbige auch ansteuern, ISA dürfte 
bastlerfreundlicher sein als PCI, auf jeden Fall brauchst du nicht so 
viele Leitungen.

von Gast123 (Gast)


Lesenswert?

Ich versteh nicht ganz wieso ein DIP-Gehäuse zu klein ist und wie man 
daran was kaputt löten kann? Das kann doch jedes Grundschulkind löten. 
Ansonsten kriegt man den ja wohl auch kaum kaputt, es sei denn man hängt 
den mal an 230V oder so.

Es ist immer wieder interessant zu beobachten, wie stur Leute an ihrer 
Lösung festhalten, nur weil andere sagen, dass sie unmöglich ist.

von I_ H. (i_h)


Lesenswert?

Tokenring fällt übrigens auch raus, das gibt's zwar auch mit 4MBit, aber 
prinzipbedingt ist das immer Full Duplex. Ohne RAM für ein Frame geht da 
garnix.

von Chris (Gast)


Lesenswert?

tokenring netzwerke, gibts sowas überhaupt noch???

Und das:
8. |  |  |  |  |  |  |
|  7. |  |  |  |  |  |
|  |  6. |  |  |  |  |
|  |  |  5. |  |  |  |
|  |  |  |  4. |  |  |
|  |  |  |  |  3. |  |
|  |  |  |  |  |  2. |
|  |  |  |  |  |  |  1.
##########################
#          IC            #--------loslassimpuls
##########################
8. 7. 6. 5. 4. 3. 2. 1.
|  |  |  |  |  |  |  |

Kannst du doch in dem AVR machen, oder versteh ich da was falsch?
Könnte ja sein das ich bei den ganzen Kriterien was übersehen habe ^^
Pakete mit den "bits" empfangen, puffern und dann zusammen ins RAM 
schreiben ...

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Tom Nachdenk wrote:

> Irgendwie  hat Intel es wohl auch geschafft den
> Tulip-Ethernetchip auf EISA-Karten einzusetzen.

DEC meinst du, aber die haben den Tulip auch selbst entworfen.  Ich
hab mein EISA-Zeug schon lange verschenkt, aber mir dünkt, der hatte
dann wirklich ein komplett anderes Businterface.  Alles andere wäre
ja auch sinnlos gewesen.

von Falk B. (falk)


Lesenswert?

@ Andreas Kaiser (a-k)

>wirklich einfach, dem Prinzip nach jedenfalls. Nur: Um das bei dem 20MHz
>Manchester-Signal einigermassen zu schaffen, solltest du dann schon mit
>einem 200MHz ADC abtasten.

Wir wollen mal nicht übertreiben. USB Full Speed (12 Mbit/s) arbeitet 
mit 48 MHz Abtastung also vierfach. Bei Manchaster sollten da 4x20=80 
MHz reichen, vielleicht kann man sie selbsttaktende Eigenschaft nutzen 
und mit weniger auskommen.

@ Jalmar Tschakert (flashbanger)

>Ok durch Manchester kodierung verdoppelt sich die abtastrate. Doppelter
>takt würde mir 2Bytes für ein Reales Byte bringen. aber 2,5Mhz am
>Systembus sollte mit Buffer möglich sein.

Klar, du ist ja auch der grosse Hardwaredesigner der das mal so fix 
fachmännisch beurteilen kann. Die Fachbegriffe kommen ja bei dir wie aus 
dem FF.

http://de.wikipedia.org/wiki/Bullshit-Bingo

>Doch der Staudamm macht immernoch die meißten probleme.

Wenns mal nur der Staudamm wäre  . . . ;-)

@  Manuel (Gast)

>Ändern tut sich das erst wieder mit 10GBaseT wo 4 bit auf einmal

Ist da nicht ne Null zuviel? 1GBaseT gibts, aber ZEHN G? Das geht nur 
optisch oder über kurze Strecken <3m über GUTES Koax.

MFG
Falk

von Andreas L. (andi84)


Lesenswert?

www.csd-electronics.de

ENC28J60 im PDIP-Gehäuse (kann man zur Not ja auch sockeln): 5,95 Eur
MagJack Ethernetbuchse mit Übertragern und LEDs: 3,45 Eur
Quarz 25MHz: 0,35 Eur

Summe: 9,75 Eur

Zeitaufwand der Software/Hardware/Irgendwas Lösung - Sicher 2 Wochen 
Fulltimefrickeln (12h/Tag 7d/Week) - 168 Stunden. Dann geht dann mal 
überhaupt erst das Empfangen - wenn überhaupt. Und hier wirds ohne 
CPLD/FPGA vermutlich auch nix.

Beispielcode aus dem Netz laden, Portpins nachgucken oder anpassen, 
geht.
Eventuell gleich noch einen3,3V Spannungsregler mitbestellen.

MfG
Andreas

von Jörg S. (Gast)


Lesenswert?

Einen Sniffer zu bauen der alles abhört könnte man sich u.U. ja noch 
vorstellen, aber einen Webserver auf dieser komischen Softwarebasis? Das 
ist dann doch schon sehr unrealistisch. Allein schon CSMA/CD und 
vielleicht noch Autonegotiation, wie will man sowas damit realisieren?

von K. A. (flashbanger)


Lesenswert?

Gut dann schau ich mal bei reichelt nach hardware-LAN-controllern.

Mal eine ganz andere Frage.

Ich hab so einen USB-Power-Adapter um den IPOD unterwegs auzuladen. 
Liefert der eine geglättete Spannung oder muss ich noch 7050 etc 
dazubauen?

Wie siehts den mit LAN-Controllern aus? wird auch etwas aktuelleres als 
ein RTL8019 unterstütz??  Vllt mal ein RTL8139C? der is auf 
Netzwekkarten drauf kostet ca 2,50€.


MfG Flashbanger

von Andreas K. (a-k)


Lesenswert?

Hartnäckigkeit kann schon manchmal zielführend sein, machmal aber auch 
reichlich nervend für alle, die von jemandem immer wieder mit immer der 
gleichen Frage nach einem PCI-Bus für AVR traktiert werden.

Aber für die Konsequenzen mangelnder Flexibilität hinsichtlich des hier 
nun einmal ungeeigneten Lieferanten musst du nur selber büssen.

von Falk B. (falk)


Lesenswert?

@ Andreas Kaiser (a-k)

>Hartnäckigkeit kann schon manchmal zielführend sein, machmal aber auch
>reichlich nervend für alle, die von jemandem immer wieder mit immer der
>gleichen Frage nach einem PCI-Bus für AVR traktiert werden.

Vor allem weil der ENC28J60 im PDIP-Gehäuse für 5,95 Euro SOOOO teuer 
ist und SOOO schwer anzusteuern ist. Dagegen ist ne PCI-Bridge geradezu 
lächerlich . . . ;-)

>Aber für die Konsequenzen mangelnder Flexibilität

Schöne, politisch korrekte, Umschreibung für Starrsinn.

MFG
Falk

von K. A. (flashbanger)


Lesenswert?

Toll aber den ENC28J60 gibt es bei reichelt nicht..... . Mag sein das 
reichelt nicht der dollste händler ist. aber der ist mir immerhin 
bekannt. Ich brauch keinen händler, der noch nicht mal ne ordentliche 
gliederung aus seiner website hat. 2. wenn ich den händler nicht kenne 
dann bestell ich da auch nix.

3. Irgendwann wird auch der ENC28J60 und die letzte ISA-Netzwerkkarte 
ausgestorben sein. Was macht ihr dann???

sicher es wird immer igendeinen garagen verkäufer geben der dir das ding 
noch besorgen kann. ABer das kann nicht die Zukunft sein. der ISA bus 
gilt als tot der PCI bus wird es bald sein.

MfG Flashbanger

von Falk B. (falk)


Lesenswert?

@ Jalmar Tschakert (flashbanger)

>Toll aber den ENC28J60 gibt es bei reichelt nicht..... . Mag sein das
>reichelt nicht der dollste händler ist. aber der ist mir immerhin
>bekannt. Ich brauch keinen händler, der noch nicht mal ne ordentliche
>gliederung aus seiner website hat. 2. wenn ich den händler nicht kenne
>dann bestell ich da auch nix.

Nur weil DU mit der Gleiderung nicht klar kommst, heisst das noch lange 
nicht, dass sie schlecht ist.

>3. Irgendwann wird auch der ENC28J60 und die letzte ISA-Netzwerkkarte
>ausgestorben sein. Was macht ihr dann???

Dann geht die Welt unter.

Mfg
Falk

von Andreas K. (a-k)


Lesenswert?

Jalmar Tschakert wrote:

> 3. Irgendwann wird auch der ENC28J60 und die letzte ISA-Netzwerkkarte
> ausgestorben sein. Was macht ihr dann???

Den ENC28J60 oder seinen Nachfolger verwenden. Das ist nämlich kein 
ISA-Chip, der ist erst vor ca. 2 Jahren frisch für SPI-Anschluss an 
Microcontroller rausgekommen. Kann natürlich sein, dass es mal eine 
100Mbps Version davon geben wird, die derzeitige Version erweckt den 
Eindruck, als ob das auch schon eine solche hatte werden sollen.

Ansonsten gibt's auch die Wiznets, mit TCP/IP fertig drin, die ggf. aber 
auch als reine Ethernet-Controller verwendet werden können. Deren 
jüngstes Exemplar, 12$ als Modul, ist grad ein paar Wochen alt.

von Gast123 (Gast)


Lesenswert?

>Was macht ihr dann???
FPGA und PHY, wie gehabt :)

von Tom N. (tom-nachdenk)


Lesenswert?

Jörg Wunsch wrote:

> DEC meinst du, aber die haben den Tulip auch selbst entworfen.  Ich
> hab mein EISA-Zeug schon lange verschenkt, aber mir dünkt, der hatte
> dann wirklich ein komplett anderes Businterface.  Alles andere wäre
> ja auch sinnlos gewesen.

Kann auch sein das die Karte von DEC war, obwohl ich nach wie vor der 
Meinung bin das es da um eine Etherexpress handelt(e). Will jetzt aber 
nicht den Rest von meinem Alpha Kram raussuchen.Mit etwas Optimismus 
scheint sich der OP ja doch nun den üblichen Lösungsansätzen zu nähern.

von I_ H. (i_h)


Lesenswert?

> tokenring netzwerke, gibts sowas überhaupt noch???

Klar! Direkt um mich kreist grad ein Token, mein Drucker hat'n Tokenring 
Printserver. Und weil ich kein langes Centronics Kabel hatte, hab ich 
einen Ring aufgebaut.
Das gab's später sogar mit 100MBit, und du bekommst sämlichte 
Komponenten für'n Appel und ein Ei (mal eben 10 PCI Karten für 1€, dann 
vll noch einen 24Port Switch mit FDDI für 5€, usw.).

@Falk Brunner

Inzwischen ist 10gbps auch für Kupfer spezifiziert, aber sehr lang 
dürfen die Leitungen nicht werden. Glaub max. 20 Meter oder sowas.

von K. A. (flashbanger)


Lesenswert?

ICh weis ich nerve. Aber ICh hab mitbekommen, das PCI geräte 
untereindander miteinander komunizieren können. Kann ich von einer 
NEtzwekkarte auf einen RAM schreiben und dann den BUs Sperren und die 
daten aus dem Ram auslesen? Brauch ich dann einen PCI-Host-Controller?

Und wie sieht den das mit der Frequenz von PCI aus? die ist ja relativ 
hoch (33MHz), die mindesfrequenz soll aber bei 0MHz liegen. DAher eine 
andere Frage:

Wenn die Netzwerkkarte packete senden will(in den PCI bus) gibt sie dann 
den Takt an oder gibt der Controller/AVR den takt an? Würde eine 
Netzwerkkarte etwas merken wenn man den PCI bus z.B nur mit 16Mhz 
betreiben würde?

Im datenblatt vom RTL8029 steht, das er mit 16-33Mhz PCI arbeiten kann. 
wer gibt da den takt an?

Und kann man vom PCI bus auf direkt auf 4-8Bit RAMModule schreiben, und 
dessen inhalt später langsam auslesen?

MfG Flashbanger

ICh weis ich bin sehr unerfahren. Aber wo soll ich sonst fragen?

von Manuel (Gast)


Lesenswert?

fang doch einfach mal an einen PCI Bus in VHDL zu implementieren. Das 
schreibst du dann in einen FPGA und dann kommst du wieder und wir sehen 
weiter... Oder wolltest du PCI auch mit AVR machen??

von Supa M. (supa_micha)


Lesenswert?

Gerade weil du sehr unerfahren bist, solltest du mal kurz stoppen, den 
Thread dir noch einmal in Ruhe durchlesen und zuhören, was die Leute dir 
gerne erklären möchten. Ich fasse es nochmal kurz zusammen:

PCI ist nicht für den Embedded Bereich entwickelt worden, das heißt kein 
8-bit Controller, kein AVR o.ä. Mit einem AVR hast du im Wesenltichen 
folgende Möglichkeiten:

-ENC28J60
-ISA Card (wahlweise auch nur der entsprechende Chip)
-Wiznet Chips
uvm.

Viele Grüße
Michael

von Andreas K. (a-k)


Lesenswert?

Jalmar Tschakert wrote:

> ICh weis ich nerve. Aber ICh hab mitbekommen, das PCI geräte
> untereindander miteinander komunizieren können. Kann ich von einer
> NEtzwekkarte auf einen RAM schreiben und dann den BUs Sperren und die
> daten aus dem Ram auslesen? Brauch ich dann einen PCI-Host-Controller?

Ja.

> Im datenblatt vom RTL8029 steht, das er mit 16-33Mhz PCI arbeiten kann.
> wer gibt da den takt an?

Der PCI Bus Controller. Das ist im PC die entsprechende Bridge / der 
Hub.

> Und kann man vom PCI bus auf direkt auf 4-8Bit RAMModule schreiben, und
> dessen inhalt später langsam auslesen?

Nicht direkt. Muss ein Memory-Controller dazwischen.

> ICh weis ich bin sehr unerfahren. Aber wo soll ich sonst fragen?

Wenn du eine Taschenlampe betreiben willst und eine Reparaturwerkstatt 
für Rasenmäher in der Nachbarschaft hast, dann baust du dir natürlich 
dafür einen benzinbetriebenen Generator. Ist ja alles da. Manche würden 
ja doch eher den Weg in den Supermarkt in Kauf nehmen, aber nicht du.

von Condi (Gast)


Lesenswert?

Ja, du hast vollkommen recht. Am besten du fängst hier:

http://www.elektronik-kompendium.de

an zu lesen. Da findest du alle Informationen die du brauchst. Und dann 
vergiss PCI, das ist auf dem absterbenden Ast. Nimm lieber PCIe oder 
USB.

von Andreas L. (andi84)


Lesenswert?

CSD liefert meines Wissens nach auch per Nachnahme. Da kann ansich 
nichts schiefgehen.

> 3. Irgendwann wird auch der ENC28J60 und die letzte ISA-Netzwerkkarte
> ausgestorben sein. Was macht ihr dann???

Dann sehen wir mal weiter. Es führen viele Wege nach Rom. Aber solange 
es Anwenungen für 10 MBit Ethernet gibt, wird es wohl auch die Chips 
dazu geben. Es macht ja auch keinen Sinn, eine Waschmaschine mit 10GBit 
ans Netzwerk zu hängen, nur damit die melden kann, dass sie fertig ist. 
Soll heißen: es gibt genug Bereiche, wo man mehr als 10MBit nicht 
braucht. Deshalb gibt es da auch jede Menge COntroller für, die immer 
noch hergestellt werden.
Wenn das mal nicht mehr so ist, dann wird man sich was anderes suchen 
müssen. Dann ist aber auch nicht gesagt, ob es dann noch AVRs mit 8 Bit 
gibt.

von Rahul D. (rahul)


Lesenswert?

>Was macht ihr dann???

Dann besorge ich mir einen Linux-PC und steuere ihn über die (natürlich 
noch) vorhandene Serielle Schnittstelle über meinen AVR an, falls der 
bis dahin noch keine Ethernet-Schnittstelle hat.


Es scheint ja so, dass manche ein Risiko sehen, bei einem Laden, dem 
gelegentlich mal der Mail-Server abraucht, dafür aber sehr faire 
Versandkosten und eigentlich recht kurze Lieferzeiten (ausser, wenn der 
Mail-Server streikt) hat, eine Bestellung auf Nachname (wobei ich nie 
Probleme mit Vorkasse hatte) aufzugeben, dafür aber mit einem AVR eine 
PCI(e)-Bridge bauen wollen bzw. einen Ethernet-PHY durch ca. 1Mio 
Schieberegister zu ersetzen.
Da kann man nur mitm Kopf schütteln.

>>Aber für die Konsequenzen mangelnder Flexibilität

>Schöne, politisch korrekte, Umschreibung für Starrsinn.

Fremdwort: Ignoranz

Um dem Threadopener in die von ihm gewünschte Richtung zu helfen: 
Irgendwo im Internet habe ich mal eine Lösung mit Schieberegistern und 
etwas Hühnerfutter gesehen. Den Link habe ich aber vergessen.
Sowas geht aber ganz bestimmt.
Oder war das was anderes?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Andreas Lang wrote:

> Dann sehen wir mal weiter. Es führen viele Wege nach Rom. Aber solange
> es Anwenungen für 10 MBit Ethernet gibt, wird es wohl auch die Chips
> dazu geben.

100 Mbit/s kann aber selbst für solche Fälle Sinn haben.  Da der
ganze Verhandlungskrempel bei 10 MBit/s eher schlecht als recht
spezifiziert war und daraus häufig mal Mis{s,t}verhandlungen
entstanden sind, habe ich einige Umgebungen erlebt, die am Switch
einfach fest auf 100 Mbit/s full duplex schalten, um die Verhandlung
zu verhindern.  In so einer Umgebung wäre ein 100 Mbit/s PHY selbst
dann halt nicht schlecht, wenn man dessen Datenrate weder ausnutzen
kann noch will.  (Das ist analog auch der Grund, warum es trotzdem
Sinn hatte, 100-Mbit/s-Karten für PCMCIA und sogar USB 1.x zu
bauen.)

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.