Hallo, ich habe einen arduino uno 16 MHz an die Ethernet-Karte (Typ HanRun HR911105A) angeschlossen (Pins 10,11,12,13). Netzwerkmäßig habe ich über einen Switch einen Rechner an die Ethernet-Karte angeschlossen. Als Ethernetroutinen habe ich die enc_basics vom Autor Nik Bamert genommen. (siehe unter Beitrag "ENC28J60 Basics[Beispielprogramm in AVRGCC für atmega8]"). Leider wird nicht die while-Schleife while(!enc28j60Read(ESTAT)&ESTAT_CLKRDY)) in der Init-Funktion verlassen, das Programm bleibt dort hängen. Woran kann es liegen ? Der Unterschied zu den Routinen von enc_basics ist dass ich als CS-Pin Port B, PinB2 genommen habe. Mike_h
>Woran kann es liegen ? >Der Unterschied zu den Routinen von enc_basics ist dass ich als CS-Pin >Port B, PinB2 genommen habe. Dann schalte den SS Pin PB2 mal auf Ausgang.
Hallo, habe ich gemacht. Funktioniert nicht.
Dann must Du wohl weiter ins Detail gehen. Also feststellen, welchen Rückgabewert enc28j60Read() liefert und warum es nicht der erwartete Wert ist. Hast Du Zugang zu einem Oszilloskop? Damt kannst Du prüfen, ob überhaupt eine Kommunikation mit dem Ethernet Controller stattfindet. Wenn der Rückgabewert immer wieder 0x00 oder 0xFF ist, dann findet wohl keine Kommunikation statt, dann könnte es ein Hardwarefehler sein. Wenn enc28j60Read() selbst hängt, ohne einen Rückgabewert zu liefern, dann musst Du in den Quelltext dieser Funktion einsteihgen und Debug-Meldungen ausgeben. Dazu brauchst Du natürlich ein Display oder eine serielle Verbindung zum PC. Früher oder später wirst Du sowieso irgendwo Debug Meldungen ausgeben müssen.
Was für eine "Karte" genau hast Du angeschlassen. Unter der Bezeichnung HanRun HR911105A finde ich nur Magjacks, also Buchsen mit integriertem Übertrager, aber ohne weitere Elektronik. Das alleine ist also keine Netzwerkkarte, sondern nur ein kleiner Trafo mit Buchse. Wenn das alles ist, kann es natürlich nicht funktionieren. Es fehlt der Netzwerkchip. Wenn das aber die Bezeichnung auf einem Bauteil der "Karte" ist, ist damit noch unklar um was für eine "Karte" es sich handelt.
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.