Hi,
so langsam gehen mir die Ideen aus, wie ich weiter komme - deshalb hoffe
von Euch ein paar Tipps zu bekommen.
Hier das Problem:
Ich habe mit einen Atmega644 und ENC28J60 zur IP-Anbindung aufgebaut.
Zu Testzwecken habe ich das Ganze erst auf einem Steckbrett gemacht-
auch wenn ich weiß, daß die 25 MHz, mit denen der ENC betrieben wird,
nicht wirklich steckbrett-geeignet sind.
Dann ein zweiter "Premium"-Aufbau mit einer geätzten Platine, um
irgendwelche störenden Steckbrett-Eigenschaften ausschließen zu können.
Der ENC-Teil der Schaltung ist jeweils wie im Anhang dargestellt.
Die SW auf Basis der Ulrich Radig Arbeiten habe ich für meine Zwecke
angepaßt und läuft - so weit- auf dem Steckbrett. Genauer: Die SW prüft,
ob eine IP-Verbindung vorliegt und holt sich dann via DHCP eine
IP-Adresse.
Das gleiche auf dem geätzten Board war leider erfolglos. Hier lag auch
keine IP-Verbindung vor, obwohl ich das gleiche Ethernet-Kabel
verwandte.
Nun kann es eine Fülle von Fehlermöglichkeiten geben. Die SW möchte ich
ausschließen, weil sie auf beiden System sicher gleich ist :-)
Zur Hardware:
Ich kann auf der geätzten Platine den ENC via SPI ansprechen und z.B.
die Revision ID des Bausteines auslesen (-> 6, die gleiche wie auf dem
Steckbrett). Die Initialisierung des Bausteins sollte daher auch
klappen.
Ich habe außerdem geprüft (ohne Ergebnis):
o die Löstellen
o die Bauteile
o auf Leiterbahnunterbrechungen oder Kurzschlüsse
ENC und Magjack habe ich mal ausgetauscht - auch wenn das Auslöten des
Magjack's nicht wirklich eine Freude war. Leider ohne Erfolg.
Ich bin nun ratlos und weiß nicht, was ich noch prüfen kann.
Nach meinem Verständnis erkennt der ENC selbstständig, ob eine
IP-Verbindung vorliegt. So leuchtet eine LED des Magjacks in der
Steckbrett-Fassung nach dem Start auf, wenn ein Kabel gesteckt ist- bei
der anderen Platine nicht. Weiß jemand, woran der ENC festmacht, ob eine
IP-Verbindung vorliegt - welche Leitungen sind dafür verantwortlich?
Überhaupt: Kann es an der Leitungsbreite im Layout liegen? Die Breite
ist die Default-Breite von Eagle (etwas schmäler als 1mm) - zu schmal?
Hat jemand eine Idee?
Grüße
schnack
Wenn die Link LED nicht anngeht, ist etwas zwischen Magjack und ENJ
nicht in Ordnung, vorausgesetzt, der bekommt Spannung.
Evtl. sind die TPIN+ / TPIN- vertauscht.
Den Link erkennt der an den regelmässigen Pulsen, die vom anderen Ende
der Leitung kommen sollten.
Evtl. mal schauen, ob an CLKOUT 6,25 MHz rauskommen. Es kann gut sein,
dass das SPI auch funktioniert, wenn kein Takt dran ist.
Gruss
Axel
Hi,
es ist ein 25 MHz-Grundtonquarz - habe extra darauf geachtet :-)
Bei beiden Aufbauen (Steckbrett, geätzte Platine) ist auch der gleiche
Typ verbaut. Ich werde heute abend mal mal CLKOUT prüfen und auch der
Sache mit TPIN+/- nachgehen. Danke!
Grüße
schnack
Die Link LED sollte auch ohne µC-Verbindung funktionieren, sobald ein
"Gegenüber" angeschlossen ist.
Auch mal die intern erzeugten 2,5V messen, die müssen extern mit einem C
gepuffert werden.
Kannst ja auch mal das Layout oder ein Foto posten.
Keine Frage, das bekommen wir hin.
Pin 10 (RESET) darf nicht direkt an 3,3V, sondern entweder über einen
10K an 3,3V oder offen lassen, da der Pin intern eh einen
PullUp-Widerstand hat. Ein 0,1µF an den Pin und gut ist.
Der Kondensator an Pin 1 (VCAP) sollte ca. 10µF (low ESR) haben und
nicht 220µF.
Hi,
jetzt bin ich doch nicht dazu gekommen, heute weiter daran zu arbeiten
:-(
Heute ist nämlich der neue LCD-Fernseher gekommen und da war doch noch
der volle Einsatz gefragt, das Ding zusammen mit einem VDR
(www.yavdr.de, falls es jemanden interessiert) zum Laufen zu bringen.
Aber nun löppt's.. :-)
Der Hinweis mit dem Reset ist interessant. Beim Steckbrett habe ich hier
tatsächlich einen 10k Widerstand gegen Vcc verwendet, also nicht direkt
an Vcc hängen. Dies ist der einzige mir jetzt bekannte Unterschied. Ich
hatte auch schon im Datenblatt deswegen nachgelesen und auch den Hinweis
("kann man auch unbeschaltet lassen") gefunden, allerdings so
verstanden, daß Vcc direkt auch nicht schadet. Nun ja, abklemmen ist ja
einfach zu machen.
Layout: kann ich auch noch posten. Allerdings ist die Atmega644-ENC
Verbindung nur ein Teil der Gesamtschaltung. Deshalb bin ich mir nicht
sicher, ob das mehr Verwirrung auslöst - aber auf einen Versuch lasse
ich es gerne ankommen.
Morgen werde ich den ganzen Tipps nachgehen und mich wieder melden.
Grüße
schnack
Jetzt muß ich mich doch korrigieren, ist anscheinend schon zu spät..
Ich hatte gestern, inzwischen vorgestern, in Sachen 'Reset' schon
getestet, nachdem ich das ENC-Sheet dazu gelesen hatte. Da Vcc leider
direkt auf der Platinenoberseite unter dem Sockel zum Pin geroutet
worden ist, habe ich den ENC-Pin hochgebogen, so daß er nicht mehr im
Sockel ist. Dies hatte aber leider keinen Erfolg..
Grüße
schnack
Gegrillt, hm.. klingt nicht gut. Denn dann hätte ich schon zwei
Bausteine kaputt gemacht. Da muß ich mal schauen, ob noch ein dritter
ENC aufzutreiben ist.
Grüße
schnack
Hi,
zuerst mal das Gute: gegrillt ist der ENC offenbar nicht. Ich habe den
Baustein ausgebaut und im Steckbrett eingebaut. Dort geht auch mit
diesem ENC alles wie gehabt. Also weiter Suchen...
Anbei jetzt ein Ausschnitt des Layouts. Unten ist der ENC mit
Beschaltung zu erkennen, rechts der MagJack. Da drüber ein Teil des
Atmega (allerdings mit falscher Auszeichnung - verbaut ist ein 644. Ich
hoffe, der Ausschnitt liefert genügend Info.
Grüße
schnack
Das ist ja schon ein übles Layout. Wie lang die Quarzleitungen sind. Und
die Leitungen zur Ethernet Buchse erst! Normalerweise muss man letztere
sogar impedanzkontrolliert verlegen, worauf man verzichten kann, wenn
diese kurz sind. Beides ist aber bei dir nicht der Fall :-X
Hi,
na ja, das ist so ziemlich mein erstes Layout. Ich mache besser kein
Foto vom Steckbrettaufbau... Hier habe ich den ENC nach einigem hin und
her doch auf eine Rasterplatine gesetzt - allein der Atmega ist
inzwischen auf dem Brett verblieben - und den MagJack über eine (ähäm)
15cm lange Leitung angebunden. Geht aber ... :-)
Ich verstehe aber, daß mein Layout Probleme machen kann.
Das mit den Gummifäden habe ich nicht verstanden, alle Leitungen sind
geroutet- hat jedenfalls Eagle gemeldet. Ich habe hier auch nichts
gesehen- was meinst Du?
Inzwischen bin ich dem Hinweis mit vertauschtem TPIN-/+ nachgegangen und
bin gerade einigermaßen entsetzt.
Der MagJack (bei der Steckbrettlösung separat auf Rasterplatine gelötet)
ist komplett anders angeschlossen als auf der geätzten Fassung - da
stimmt anscheinend gar nichts. Anscheinend habe ich die falsche Lib
verwendet (anbei Bild mit Device Info).
Grüße
schnack
C. D. schrieb:> Das mit den Gummifäden habe ich nicht verstanden, alle Leitungen sind> geroutet- hat jedenfalls Eagle gemeldet. Ich habe hier auch nichts> gesehen- was meinst Du?
Ich meinte damit das deine GND Leiterbahnen sehr dünn sind (Bindfäden
halt). Somit hast du keine richtige Masse überall. Das führt zu
Störungen in der Schaltungen. Masse (Gnd) ist möglichst flächig zu
verlegen. Am besten auf einem seperatem Layer. Dünne Leiterbahnen haben
eine höhere Induktivität als grosse Flächen.
Das, was du verbaut hast ist kein MagJack, sondern eine RJ-45 Buchse der
Firma AMP Connectors.
Ein MagJack ist ein eingetragenes Warenzeichen (Bel Stuart glaube ich).
Hi,
(Bindfäden:)ok, jetzt verstehe ich.
MagJack verbaut: SI-60024-F (Bel Stewart) und die beiliegende Lib wollte
ich dafür nutzen, ist anscheinend daneben gegangen.
Grüße
schnack
Hi Simon,
ich meine, ich hatte auch das Element dieser Lib genommen, um meinen
Steckbrett-Aufbau richtig zu machen. Irgendwie ist mir dann dieser
Lapsus unterlaufen..
Also werde ich meinen MagJack mal wieder auslöten (brummel) und dann
(bitte nicht weiterlesen) irgendwie fliegend anbringen.
Grüße
schnack
Hi,
na ja- die Geschichte ging natürlich weiter.
Als erstes habe ich den Gedanken mit dem fliegenden Aufbau wieder ad
acta gelegt. Der MagJack sollte direkt auf der Platine bleiben.
Also habe ich die Zuleitungen mit einem Messer gekappt und die
Anschlüsse direkt mit Drähten verlötet. Dabei habe das richtige Bauteil
(SI-60024-F, aus der lib im früheren Post) verwendet und in die
Schaltung so eingefügt, daß ich pinweise die Leitungen anfügte, d.h. die
Leitung an Pin 1 des alten Bauteils ging nun auch an Pin 1des neuen.
Nun ja, keine gute Idee.
Nach dem Einschalten passierte erst gar nichts, dann fing der MagJack an
zu knistern und zu rauchen - da war es mit dem Grillen doch noch
passiert..
Ich habe daraufhin die letzte Version von Ulrich Radig heruntergeladen
(15.01.2010) und mußte feststellen, daß das Bauteil (natürlich) auch
ganz angebunden wird (siehe beigefügtes Bild). Ein weiterer Magjack (den
ich zu Anfang schon mal ausgelötet hatte) lag noch bereit und so ging es
mit der neuen Beschaltung in die nächste Runde.
Ergebnis: die LED's leuchten. Per DHCP kommt die Adresse rein.
Aber: Ein Ping auf das Bauteil liefert mehr als 50% Ausfall, manchmal
kommt auch gar nichts zurück. EIne LED blinkt im Ping-Takt - offenbar
kommen die Pakete an, aber nicht allzu viel kommt wieder zurück. Im
Steckbrett gibt es dagegen keinen Paket-Verlust.
Ich vermute nun, daß ich meinen (nunmehr letzten) Magjack durch die
allererste Beschaltung (im ersten Post) nun auch ein wenig lädiert habe.
Kann das sein?
Immerhin würde ich einen Beschaltungsfehler ausschließen. Ich habe nun
Leitung für Leitung auch mit der Steckbrett-Version verglichen
(mehrfach..) und bin nun überzeugt, daß das zumindest stimmt.
Anbei auch mein neues Layout (als Ausschnitt) - gibt es dazu spontan
Vorschläge, Kritik..?
C. D. schrieb:> Ein Ping auf das Bauteil liefert mehr als 50% Ausfall, manchmal> kommt auch gar nichts zurück.
Das sieht nach elektrischen Stoerungen in deinem Aufbau aus.
Wenn ich mir dein Layout ansehe hast du zwar eine Kupferflaeche da
eingefuegt das die GND deiner Schaltung verbunden waere sehe ich da
nirgends.
Kein Pin von einem Bauteil das ich da sehe hat Kontakt mit dieser
Masseflaeche. Also besteht dein GND Netz immer noch aus duennen
Laeiterbahnen.
Die meisten Zuleitungen zum MagJack sind von der Länge her Okay,
allerdings geht eine unten "über die ganze Platine". Route doch einfach
die Leitungen zum MagJack zu erst, bevor du mit den andere
(unkritischeren) weitermachst.
C12 ist außerdem immernoch zu groß. Hier würde ich außerdem ein Tantal
Typ, evtl. auch ein Keramik Typ wählen.
hier mal ein Beispiel für das Routing eines ENC. Erhebt sicher keinen
Anspruch auf
Optimum, aber funktioniert einwandfrei. Die blaue Fläche ist GND und die
rote +3,3V.
Das Gehäuse des MagJack wird nicht mit Gnd verbunden, sondern mit R und
C parallel auf Gnd, damit es keine Gnd-Schleifen gibt.
Was mich wundert: Hast Du eigentlich bemerkt, dass es zum Thema ENC und
MagJack dutzende Threads hier gibt? Die würde ich mal alle durchlesen.
Das Layout ist zwar ein wenig besser geworden, aber es gibt noch viel
Potential. Mit der fehlenden Gnd-Verbindung zur blauen Fläche hat Simon
recht.
Ich weiß ja nicht, welche Stückzahlen Du bauen willst, aber warum nimmst
Du nicht ein fertiges Produkt wie z.B. das Pollin NET-IO?
Da bräuchtest Du nur noch einen CAN-Adapter dranhängen (was Du sonst
noch alles auf der Platine hast, entzieht sich unserer Kenntnis).
Hi,
ich hatte mich bemüht, die anderen Threads zu dem Thema zu lesen, so
hatte ich auch die richtige Lib identifiziert, die Sache mit dem
Grundtonquarz beachtet und der Steckbrettaufbau klappte ja auch.
Zusätzlich zum ENC möchte ich noch 4 CAN Adapter dranhängen , eine Art
Switch für den CAN-Bus. Die Stückzahlen werden sich sicher in engen
Grenzen halten.
> Das Gehäuse des MagJack wird nicht mit Gnd verbunden, sondern mit R und> C parallel auf Gnd, damit es keine Gnd-Schleifen gibt.
-> habe ich so nicht gelesen...?
Das Problem ist sicher, daß ich auch in Eagle noch ein Anfänger bin.
Bislang ist mir gar nicht aufgefallen, daß die Flächen nicht mit GND
Kontakt hatten.
Ich weiß gar nicht, wie ich das erreichen kann (mal im Eagle Forum
schauen..). DAs manuelle Routen mit Eagle habe ich bislang auch nicht
probiert (bislang habe ich die Bauteile verschoben und mit 'auto;' Eagle
arbeiten lassen..). Mir ist bewußt, daß das nicht das Optimum liefert
kann.
Die SMD-Fassung oben ist natürlich spitzenmäßig. Allerdings wollte ich
mit SMD-Löten nicht noch einen extra Schwierigkeitsgrad in die Aufgabe
reinbringen.
Ich muß mal schauen, wie ich die Hinweise auswerte. Das eine ist das
zukünftige Layout, das andere die aktuellen Probleme mit dem ohnehin
etwas verhunzten Aufbau/Layout.
Grüße
schnack
C. D. schrieb:> Bislang ist mir gar nicht aufgefallen, daß die Flächen nicht mit GND> Kontakt hatten.> Ich weiß gar nicht, wie ich das erreichen kann (mal im Eagle Forum> schauen..).
Du must nur das Polygonnetz mit GND benennen da verbindet Eagle
Automatisch alle GND Pine miteinander.
C. D. schrieb:> Allerdings wollte ich> mit SMD-Löten nicht noch einen extra Schwierigkeitsgrad in die Aufgabe> reinbringen.
War jetzt auch nur als Routingvorschlag gedacht. Das kann man so auch
mit THT-Bauteilen aufbauen, braucht eben nur mehr Platz
Helmut Lenzen schrieb:> Du must nur das Polygonnetz mit GND benennen da verbindet Eagle> Automatisch alle GND Pine miteinander.
.. hat (auch nach einer weiteren Suche im Forum) geklappt :-)
Inzwischen bin ich dabei die kritischen Leitungen von Hand zu routen.
Mal schauen..
Bleiben noch die Probleme im aktuellen Aufbau:
> Das sieht nach elektrischen Stoerungen in deinem Aufbau aus.
Könnten die dadurch behoben werden können, daß ich die Flächen mit GND
verbinde? Oder welche Ursachen können diese Störungen haben?
Grüße
schnack
C. D. schrieb:> Könnten die dadurch behoben werden können, daß ich die Flächen mit GND> verbinde? Oder welche Ursachen können diese Störungen haben?
Das kann sehr gut möglich sein. Es kann aber auch noch andere Ursachen
haben.