Hallo, ich beschäftige mich zurzeit mit dem Mikrocontroller STM32f407VG. Bei STM http://www.st.com/web/en/catalog/tools/PF257906# lässt sich das Beispielprojekt "LwIP TCP/IP stack demonstration for STM32F4x7 microcontrollers" downloaden. In dem Ordner befindet sich ein Projekt für ein tcp_echo_server. Dieses lässt sich auch fehlerfrei erzeugen und auf den Chip Flashen. Jedoch tauchte das Problem auf, dass ich zwar Daten per Crossover Kabel an den STM schicken konnte, dieser aber nicht darauf reagierte. Der Fehler liegt wahrscheinlich bei ETH_SoftwareReset(); Zeile:95(stm32f4x7_eth_bsp.c) Damit das Programm weiter ausgeführt wird, wird ein Reset erwartet /* Wait for software reset */ while (ETH_GetSoftwareResetStatus() == SET); Zeile:97(stm32f4x7_eth_bsp.c) in der stm32f4x7_eth.c: void ETH_SoftwareReset(void) { /* Set the SWR bit: resets all MAC subsystem internal registers and logic */ /* After reset all the registers holds their respective reset values */ ETH->DMABMR |= ETH_DMABMR_SR; } /** * @brief Checks whether the ETHERNET software reset bit is set or not. * @param None * @retval The new state of DMA Bus Mode register SR bit (SET or RESET). */ FlagStatus ETH_GetSoftwareResetStatus(void) { FlagStatus bitstatus = RESET; if((ETH->DMABMR & ETH_DMABMR_SR) != (uint32_t)RESET) { bitstatus = SET; } else { bitstatus = RESET; } return bitstatus; } Da kein reset stattfindet, hängt sich das Programm hier aus. Würde mich freuen wenn jemand eine Lösung hätte, wie ich das Projekt an meinen STM32f407VG Anpassen könnte MFG Jonas
Hallo Jonas, hast du denn bereits eine Antwort auf dein Problem ? Stehe nun wohl mit dem STM3210C-Board vor einem ähnlichen Problem. Die RX- und TX-Clocks am PHY habe ich bereits überprüft. Bei beiden liegt ein Frequenz von 25Mhz an (MII). Grüße Mathias
Gast
#5034268
Maze Z. schrieb: > Hallo Jonas, Kaum vier Jahre später?
HF Pfuscher schrieb: > Maze Z. schrieb: >> Hallo Jonas, > > Kaum vier Jahre später? Das spielt für mich keine Rolle, ob 4 Jahre vergangen sind oder nicht. Die Lösungsfindung steht im Vordergrund.
Hallo, was sendest du denn für Daten, das hat auch der ursprüngliche TO nicht geschrieben!? Unter einem TCP Echo Server verstehe ich einen Server mit dem man zuerst mal eine TCP-Verbindung aufbauen muss (Port ? Sollte im Programm irgendwo festgelegt sein). Dann wenn die Verbindung seht werden alle eingehenden Daten wieder zurückgesendet. Mit irgendwas an die IP des Servers senden wird man da keine Antwort erhalten. Sascha
Gast
#5035139
Mathias _. schrieb: > Das spielt für mich keine Rolle, ob 4 Jahre vergangen sind oder nicht. Nur dass sich die Welt seitdem massiv verändert hat, inklusive die Welt des TO der sich möglicherweise jetzt in ganz anderen Sphären bewegt ....
Gast
#5035196
Hier ist es üblich, dass man für neue Fragen einen neuen Beitrag öffnet und sich nicht an einen alten Beitrag dranhängt der nur "ähnlich" ist.
Bisher möchte ich die Verbindung nur per einfachen "Ping" Befehl aus der CMD-line testen. Inzwischen bekomme ich auch ein Echo zurück. Der Fehler lag an einem Bug der von mir verwendeten STM32CubeMx Software. Der Bug führte dazu, dass die Phy-Adresse nicht korrekt konfiguriert war. Mit der aktuellen Version 4.21.0 der CubeMx Software ist der Bug gefixt. @Brummbär das nächste mal öffne ich einen neuen Beitrag ;-)
Gast
#5041551
Mathias _. schrieb: > Der Bug > führte dazu, dass die Phy-Adresse nicht korrekt konfiguriert war. Schon klar. Ist eine neue Kreation wa? Seit wann hat ein PHY eine Adresse? Wenn ich einen beliebigen PHY betrachte sehe ich keine Möglichkeit eine Adresse einzustellen. Gibt es da ein geheimes Protokoll?
Gast
#5041555
Stichwort: SMII Stichwort2: Datasheet (z.b. KSZ8081 - Pin 13-15 PHYADR0-2 )
Ahnungsloser schrieb: > Mathias _. schrieb: >> Der Bug >> führte dazu, dass die Phy-Adresse nicht korrekt konfiguriert war. > > Schon klar. > > Ist eine neue Kreation wa? > Seit wann hat ein PHY eine Adresse? > > Wenn ich einen beliebigen PHY betrachte sehe ich keine > Möglichkeit eine Adresse einzustellen. Gibt es da ein > geheimes Protokoll? http://www.ti.com/lit/ds/symlink/dp83848-ep.pdf (Seite 40) Die Adressierung ist abhängig von der externen Beschaltung.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.