Nucleo-F767ZI

#7942889
Lesenswert?

Hallo,

ich habe ein Nucleo-F767ZI Board und möchte mit diesem die Ethernet-Funktion OHNE Betriebssystem nutzen. Die gewünschte Funktion ist wie folgt:

  1. mit IP-Adresse verbinden
  2. Get-Anfrage senden
  3. Antwort empfangen

Ich habe bereits Chat GPT bemüht und habe alle Pfade angepasst und die erforderlichen C-Dateien ins Projekt eingebunden, die vom ST kommen. Soweit compiliert es noch.

Aber sobald ich Funktionen hinzufüge, die LWIP_NETCONN oder LWIP_SOCKET nutzen, bekomme ich Compilerfehler, die ich irgendwie nicht wegbekomme. Irgendwie drehe ich mich im Kreis. Und LWIP_NETCONN und LWIP_SOCKET muss ich immer im Quellcode neu auf 1 setzen, wenn ich mit CubeMX neue Daten generiere. Ich habe nicht herausgefunden, wo man das im Cube einstellt. Scheint es bei meinem CubeMX 6.9.1 nicht mehr zu geben und steht standardmäßig auf 0.

Ich benutze CubeMx und Segger Embedded Studio. Gibt es ein Beispielprogramm von ST, wo so was in der Art realisiert wurde?

Grüße Micha

#7942991
Lesenswert?

Der Linker findet irgendwelche Namen beim Compilieren nicht (Strukturen, Funktionen).

Durch Verändern von Compileswitches kam ich der Sache nach und nach näher z.B.: #define LWIP_SOCKET 1 #define LWIP_MPU_COMPATIBLE 1 #define NO_SYS 0

Aber dann habe ich abgebrochen, denn NO_SYS = 0 bedeutet ja, dass ich ein RTOS haben muss. Und das will ich ja eben nicht haben.

ich habe den Sourcecode angehängt. In der Datei test.c steht Quellcode für die Funktion, den ich über Chat GPT bekommen habe. Ist aber aktuell auskommentiert, da ich zu dem Zeitpunkt eine andere Variante aus Youtube probiert habe.

Angehängte Dateien:
#7942997
Lesenswert?

Wenn es wirklich mühelos und einfach sein soll, schau dir mal den Mongoose IP Stack an. Die Implementierung von LWIP seitens STM zusammen mit der HAL ist echt ein gefrickel. Beim F7 etwas besser als beim H7 aber kein Vergleich zum Mongoose Stack. ControllersTech auf Youtube hat eine gute Erklärung dazu gebracht, kann ich jedem empfehlen der Ethernet mit einem STM Cortex M7 umsetzen will

#7943002
Lesenswert?

Micha schrieb:

Hallo,

Ich habe bereits Chat GPT bemüht und habe alle Pfade angepasst und die erforderlichen C-Dateien ins Projekt eingebunden, die vom ST kommen. Soweit compiliert es noch.

Wie wäre es mit selbst lernen, RTFM und co.? Einen Chatbot zu fragen hilft nur wenig. Für Grundlagen gehts vlt. Aber bei falschen Antworten stehst Du auch wieder aufm Schlauch.

#7943048
Lesenswert?

Johannes schrieb:

Wenn es wirklich mühelos und einfach sein soll, schau dir mal den Mongoose IP Stack an. Die Implementierung von LWIP seitens STM zusammen mit der HAL ist echt ein gefrickel. Beim F7 etwas besser als beim H7 aber kein Vergleich zum Mongoose Stack. ControllersTech auf Youtube hat eine gute Erklärung dazu gebracht, kann ich jedem empfehlen der Ethernet mit einem STM Cortex M7 umsetzen will

Danke für den Tipp. Der "2-minute integration guide" https://mongoose.ws/documentation/#user-guide hört sich gut an, aber beim Compilieren gibt es etliche Fehler. Mann muss noch einige includes angeben, das war noch recht einfach.

Man muss auch noch eine Datei "mongoose_config.h" anlegen und hoffen, dass die Einträge dann korrekt sind.

Es gibt nun "nur" noch 145 Fehler... In 2 Minuten ist das definitiv nicht lauffähig. Ich denke eher 2 Stunden oder gar 2 Tage.

Angehängte Dateien:
: Bearbeitet durch User
#7943098
Lesenswert?

Also bei mir war das in der STMCubeIDE innerhalb von ein paar Minuten am laufen. C und h file hinzugefügt, diese in dem Compilerpfad angegeben, ein paar Configs gesetzt und lauffähig war es. Gibt auch bei ControllersTech direkt Beispielprogramme dafür. Hat mir nicht so viel geholfen, da ich was anderes damit gemacht habe, aber für die Basics wars gut

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren