Geschätztes Forum, leider ist der Programmcode des ATmega32 auf dem dem AVR-NET-IO-Board nicht veröffentlicht :-( Nachdem ich den CPU-Takt von 16MHz auf 1MHz reduziert habe (Fuse Bits) konnte das SPI-Protokoll mitschneiden. Dieser SPI-Sniffer half mir dabei: Beitrag "SPI Sniffer Analyser Beispiele Low Cost ATmega8 Assembler" Nach einem Reset des ATmega32 wird vermutlich der ENC28J60 initialisiert. Auf was ist bei der Initialisierung zu achten, hat jemand einen Tipp ? Ich vermute, daß nach der Initialisierung der ENC28J60 permanent abgefragt wird (polling), denn der INT-PIN des ENC28J60 bleibt regungslos. Auf dem SPI-BUS herrscht reger Datenaustausch. Danke Bernhard
Bernhard S. schrieb: > leider ist der Programmcode des ATmega32 auf dem dem AVR-NET-IO-Board > nicht veröffentlicht :-( weil auch ich den org. Code nicht bekam habe ich schnell auf den Code von Radig und Schnell gewechselt, sollte noch im Netz zu finden sein. Der läuft nun schon Jahre auf meinem Webserver für die Zimmertemperaturen anzeigen. Der m32 wurde zu m1284p, die Linearregeler durch DC/DC Wandler Recom ersetzt.
:
Bearbeitet durch User
Bernhard S. schrieb: > leider ist der Programmcode des ATmega32 auf dem dem AVR-NET-IO-Board > nicht veröffentlicht :-( Die haben sich wahrscheinlich einfach geschämt, diesen Schrott im Quelltext zu veröffentlichen. Nimm einfach ethersex. In der verfügbaren Form zwar auch nicht perfekt, aber es funktioniert (im Gegensatz zur Pollin-Firmware) wenigstens zuverlässig. Und du hast den ganzen Kram im Quelltext. Natürlich einschliesslich der korrekten Initialisierung des ENC28J60.
Und so wird der ENC28J60 mit der Original-Software initialisiert, die einzelnen Banken werden mit ECON1 umgeschaltet und anschließend die Register gesetzt (in der EXCEL-Tabelle nur angedeutet). >Nimm einfach ethersex. Danke für den Tipp
Die Register-Inhalte vor und nach der Initialisierung durch die Original-Software. Würdet Ihr die Register anders setzen, erkennt jemand Unzulänglichkeiten?
Bernhard S. schrieb: > Die Register-Inhalte vor und nach der Initialisierung durch die > Original-Software. > > Würdet Ihr die Register anders setzen, erkennt jemand > Unzulänglichkeiten? Es gibt im Netz diverse Codes mit Initialisierungen für den enc -googeln nach enc28j60.h/c. Einige laufen nur mit Störungen - was dann zu Vermutungen wegen fehlender Abblockkondensatoren führt. Stabil läuft der Code von UR.
>Es gibt im Netz diverse Codes mit Initialisierungen http://members.home.nl/bzijlstra/software/examples/enc28j60.htm Beitrag "ENC28J60 Initialisierung ATmega1284P AVR Assembler Beispiele"
Die Registerinhalte nach einem Reset und nach der Initialsierung im Vergleich (mit PHY-Registern).
So könnten die einzelnen Datenpakete zwischen dem NetServer und dem ENC28J60 aussehen. Das ganze Spektakel beginnt mit ARP (hatte vorher die interne Tabelle des PC mit "arp -d" gelöscht), anschließend ICMP (Echo Request + Echo Reply), gefolgt von TCP (SYN+ACK) und en einzelnen Nutzdaten.
Nimm ethersex. Kannste sogar im Quellcode anschauen. Und es läuft auch bei mir störungsfrei..
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.