Hi,
arbeite gerade an einem Webserver-Projekt.
Ich benutze das LPC2148-Board aus dem shop, sowie eine ADD-On-Platine
die ich mir nach dem angehängten Schaltplan erstellt habe.
Die Drossel hab ich überbrückt, statt der 49k9 verwende ich 51k
widerstände. sonst sind alle bauteil, wie im schaltplan angegeben
verwendet...
Der Linkstatus zeigt mir an, dass die verbindung zwar steht. ich kann
die mac-adresse schreiben und richtig auslesen etc.
denke also nicht, dass es an der SPI-Kommunikation zum ENC liegt (ca.
7,5MHz bei Rev.4)
auch dürft (wegen dem richtig angezeigtem linkstatus) die magjack
richtig angeschlossen sein.
allerdings werden keine Pakete versand...
ich sehe das add-on-board nicht an meinem router...
kann mir vielleicht jemand weiter helfen?
hab ich beides versucht (Router / direk PC). auch der router zeigt mir
per led den linkstatus ok an.
kommuniziert wird trotzdem gar nicht. (habe mal die LEDA/B auf tx/rx
gestellt bzw auf collision; auch der puffer des enc ist immer leer...)
Bei einer direkten Verbindung zum PC versucht der PC hin und wieder
Paket zu senden, er bekommt allerdings keinerlei antwort...
Ich hatte das Problem auch mit dem ENC28J60 (Link, aber keine Daten).
Bei mir lag es an vertauschten Pins TPIN+ und TPIN-. Hier die
entsprechende Stelle aus den Erratas des chips:
>>7. Module: PHY
The automatic polarity detection and correction
features of the PHY layer do not work as
described. This may cause poor receive network
performance, or no receive activity, with some link
partners.
Work around
When designing the application, always verify that
the TPIN+ and TPIN- pins are connected correctly.<<
Leider fehlt die Angabe, welcher Magjack in der Schaltung eingebaut ist,
so dass ich nicht überprüfen kann, ob die Anschlüsse korrekt sind oder
nicht. Die verschiedenen Magjacks haben unterschiedliche Anschlüsse.
oh, guter einwand...
hab daraufhin tx nochmal genauer angeschaut und tatsache, tx geht
(einfach mal n paar bytes gesendet und mit ethereal kontrolliert).
das problem ist scheinbar tatsächlich nur rx.
hab den MagJack: SI-60024-F von csd.
habe auch grade nochmal den schaltplan mit dem datenblatt verlgichen.
meine aber, dass das passen müsste...
Die Verdrahtung von TPIN+/TPIN- scheint korrekt zu sein. Ich würde noch
Folgendes checken:
- Sind die LEDs so beschaltet, dass das Modul auf Half-Duplex steht?
Full-Duplex ist bei 10MBps nicht per Software aushandelbar, müsste also
auch bei der Gegenstation fest eingestellt werden.
- RBias sollte laut Erratas 2.7kOhm 1% sein
- Vielleicht ist es ja ein reines Softwareproblem? Stimmt die
MAC-Adresse (siehe empfangene Ethereal-Pakete)?
- Interrupts gehen nicht zuverlässig laut Erratas -> EPKTCNT per Polling
auf Änderungen überwachen
> RBias sollte laut Erratas 2.7kOhm 1% sein
Scheint aber weniger kritisch zu sein, als diese Angabe suggeriert.
Olimex verbaut 2,0K, egal was für ein ENC drinsteckt. Ich hatte erst
2,2K dann 2,7K drin, dem Switch wars egal.
Half- vs Full-Duplex verhindert ebenfalls nicht den Link, sondern
schlägt sich in der Fehlerstatistik nieder.
Hallo zusammen,
ich habe ein ähnliches Problem. Habe die Schaltung nach der Anleitung
von Nik Bamert aufgebaut und seine Software genutzt. Als Atmega hab ich
allerdings ein ATMEGA162 genommen. Dafür hab ich dann in der Software
auch die entsprechenden Ports angepasst.
1
PORTB|=1<<PB7;//SCK HI
2
DDRB|=1<<PB4|1<<PB5|1<<PB7;// mosi, sck, ss output
3
DDRB&=~(1<<PB6);// miso input
Mir wird ein Linkstatus angezeigt. die wenn ich in die LED Register des
ENC schreibe, kann ich die LEDs auch auf permanent an oder blinkend
schalten. Somit denke ich das die Kommunikation zwischen beiden ICs
funktioniert.
Wenn ich Wireshark (Ethereal) laufen lasse sehe ich keinerlei Pakete.
Alle hier genannten Tips habe ich schon durchprobiert. TPIN+ gedreht
etc. Hat alles kein Effekt. Als Magjack benutze ich ebenfalls den
SI-60024-F von csd.
Vielleicht hat ja noch jemand eine Idee.
Gruß
Lars