Hallo zusammen, ich versuche den STM32F107 mit Ethernet in Betrieb zu nehmen. Die SMI Schnittstellen (MDIO, MDC) funktioniert bereits und der Link Status wird vom PHY auch mit Full-Duplex und 100MBit angegeben. Jetzt hängt die Platine also im lokalen Netzwerk, wo ja immer mal wieder Pakete (ARP und so weiter) rumgesendet werden, jedoch kommt am MAC nichts an. Die Ethernet DMA ist mit den Deskriptoren initialisiert und hängt laut Status Register im Status 3 "Running: Waiting for receive packet", es kommt jedoch kein Packet rein. Der Logic Analyzer zeigt am RMII Interface aber ganz klar erkennbar eingehende Ethernet Frames (siehe Anhang - für die Leute mit der Saleae Logic Software auch noch das Capture File). Hat jemand eine Idee, was da noch fehlen könnte? - ist vermutlich nur ein einzelnes Bit irgendwo, was noch gesetzt werden muss. Aber ich komm grad nicht drauf. Habe auch mal den Quellcode mit angehangen - vielleicht hat ja jemand eine Idee. Danke im Voraus
:
Bearbeitet durch User
War ja klar, dass ich das Bit finde, kaum dass der Beitrag hier veröffentlicht ist. Für alle Nachfolger: Man muss natürlich nicht nur den Full-Duplex Mode (Bit 11 im ETH_MAC_CR) angeben, sondern auch den Ethernet Speed mit 100MBit (Bit 14 im ETH_MAC_CR)...
Leopold N. schrieb: > Für alle Nachfolger: ........ Es ist ja sehr löblich dass du dir das alles auf unterster Ebene selbst erarbeitest. Mein Respekt dafür. Wenn man das in CubeMX konfiguriert bekommt man das allerdings alles automatisch "geschenkt". Da lasse ich mich gerne beschenken wenn ich noch einiges Anderes zu tun habe. Aber oft ist ja auch der Weg das Ziel .....
Ja das stimmt. Ich mach das allerdings für den Lerneffekt. Ist wie mit dem theoretisch Lernen vs. praktisch Selbstmachen - der Lerneffekt ist Faktor 10 größer, wenn man mal selbst Hand angelegt hat und die Bits rumschubst. Ich gebe aber zu, dass ich auch schon im CubeMx-generierten Code rumgestöbert hab auf der Suche nach dem einen Bit, dass ich nicht gesetzt habe :)
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.