www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ENC28j60 Initialisierung OK aber keine Verbindung


Autor: Sonke A. (soeni)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, habe nun meinen ENC28j60 initialisiert bekommen. (Eine LED der 
LAn Buchse blinkt kurz auf.)

Status ist richtig, Register wurde auch gesetzt (hab ich 
stichprobenartig geprüft durch Auslesen)

Benutzen tu ich nun den UIP IP Stack un einfacher ausführung nur mit dem 
Webserver. Kompilieren geht einwandfrei, habe auch die main.c 
entsprechend angepasst, nur leider finde ich meinen uC im Netz nicht. 
Habt ihr ne Idee, wie ich weiter Debuggen kann? Soll ich den Code 
posten?

Kann uip standartmäßig pinganfragen beantworten? wenn nicht wie bring 
ich ihm das bei?

Jemand ne Idee, ich weis grad nicht weiter, wie ich gucken kann wo es 
hackt.

Gruß

Sonke

Autor: Grolle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst ja mal mit nmap ein bissel rumhacken.
Oder, vermutlich noch besser, mit wireshark.
Um zu gucken, was für Datenpaket da wo hin gehen. Dann werden Dir 
bestimmt ein paar Ideen kommen, wo es hakt.

Autor: Sonke A. (soeni)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist ja das Problem, ich bekomme garkeine Pakete da raus.

Weis jemand ein codestück wie man ganz einfach ein IP Paket an einen 
anderen Host sendet, das muss ja nicht mal irgend einen sinn haben, nur 
das man sieht, dass das ding was sendet und es mit wireshark sehen kann.

Autor: Grolle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bevor da Pakete rauskommen, musst Du ja erstmal wissen, ob die Pakete da 
ankommen.

Das erste, was passen muss, ist die MAC-Adressen-Ebene.

Sonst weiß der andere Rechner ja gar nicht, wo er seine Pakete 
hinschicken soll.

Erst danach die höheren Schichten, die IP-Ebene.

Autor: Grolle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wireshark ist für solche Fragen als erstes mal genau das Tool der Wahl.

Autor: Sonke A. (soeni)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja ich würde halt gerne vom uC ein paket an den Rechner schicken um 
das zu testen. weil mit dem MAC Adressfilter bekomme ich keine Paktete 
vom uC

eth.addr==00:03:6f:55:1c:c2
bzw.
ip.addr==192.168.178.210

Auch die anfrage an den Webserver sehe ich da nicht. Mein Router hat den 
uC auch noch nicht als Gerät identifiziert.

Wie kann ich also am besten einfach dur ein IP Paket an eine bestimmte 
IP Adresse schicken. Wie gesagt, das Paket kann zurückgewiesen werden 
oder was auch immer haupsache ich sehe das erstmal im wireshark.

Zur Mac Adresse, Die niedrigste Schicht im Netzwerk, die mindestens 
erforderlich ist, damit die Pakete von meinem Switch weitergeleitet 
werden ist doch die IP Schicht, wie soll ich auf MAC Ebene ein Paket 
schicken??

Autor: Sonke A. (soeni)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hm Scheint so, als hätte ich ein größeres problem, nach der 
initialisierung (Wärend dessen blinkt ganz kurz eine LED) bleiben die 
LEDs beide aus, obwohl ein LAN kabel steckt welches mit einem Switch 
verbunden ist. Woran kann das Liegen?

Im Anhand meine Initialisierungsroutine des ENC

Autor: Sonke A. (soeni)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
noch jemand da? hab leider immer noch keine Ahnung. Woran könnte es denn 
liegen, dass noch nicht mal das Link leuchtet?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
/* Set Pin-Directions  */
  //ENC28J60_DDR |= 
(1<<ENC28J60_MOSI)|(1<<ENC28J60_CS)|(1<<ENC28J60_SCK);
  //ENC28J60_DDR &= ~((1<<ENC28J60_INT)|(1<<ENC28J60_MISO));


Warum hast du da Kommentare draus gemacht?

Autor: Sonke A. (soeni)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
weil ich da nur die SPI Schnittstelle initialisiere. Da ich aber im 
gleichen Projekt ebenfalls die SPI initialisiere, wäre das hier falsch 
sie erneut zu setzten, bzw. doppelt gemoppelt.

Die SPI scheint ja auch zu funktionieren, denn ich kann ja die register 
des ENCs lesen und schreiben. es steht ja auch das richtige drinn.

Werde mir vielleicht mal die mühe machen jedes Register auszulesen um zu 
gucken ob alles stimmt. Denke aber schon, stichprobenartig stimmte ja 
alles

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ist denn wenn du dein zweites SPI Gerät nicht benutzt?
Also komplett rausschmeisst. Funktioniert dann was?

Autor: Sonke A. (soeni)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja klar, momentan benutze ich ja noch kein zweites Gerät, hatte nur nen 
eigenen SPI Treiber geschrieben, welcher auch für andere devices nutzbar 
ist. deshalb mach ich auch dort die Portinitialisierung.

Aber müsste nicht der ENC nach einer initialisierung sifirt die LINK LED 
anschalten wenn ein kabel steckt, egal ob er da noch mit dem Atmega 
kommuniziert?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.