Hallo zusammen, ich bin dabei den VL53L0X Entfernungsmesser mit meinem STM32L476RG-Nucleo zu verbinden. In den API zu dem Sensor, die es bei ST gibt wird windows.h inkludiert. Jedoch findet Eclipse diese Datei nicht. Kann ich das irgendwie umgehen, oder wo finde ich das? Vielen Dank für die Hilfe.
Einfach das include mal auskommentieren, und schauen, ob und welche Fehlermeldungen dann kommen. Oliver
Ich denke es geht um die VL53L0X_1.0.2 . Da wird die Software für Linux und Windows erstellt. Da braucht es natürlich die Dateien für das Betriebssystem.
pegel schrieb: > Ich denke es geht um die VL53L0X_1.0.2 . > > Da wird die Software für Linux und Windows erstellt. > Da braucht es natürlich die Dateien für das Betriebssystem. Wie komm ich an diese Dateien?
Keine Ahnung. In einem MSDN Artikel stand drin, dass man das runterladen soll, um an die Header Dateien zu kommen.
Stefan U. schrieb: > https://www.microsoft.com/en-us/download/details.aspx?id=8279 Wenn es etwas aktueller sein darf: https://developer.microsoft.com/en-US/windows/downloads/windows-10-sdk Jonas L. schrieb: > und was mache ich wenn ich das installiert habe? Deinem Eclipse bzw. dem darunter liegenden Compiler mitteilen wohin Du das installiert hast. Wie Du allerdings ein MS-Windows auf Deinem Nucleo installiert bekommst kann ich Dir auch nicht sagen.
Kommentier das #include einfach mal aus, und sieh, was alles bemäkelt wird. Aber das hat Dir am 27. schon mal jemand geraten. Warum hast Du das noch nicht ausprobiert? Sinnvoll kann es jedenfalls nicht sein, daß auf einem µC so eine Datei benötigt wird.
Ich denke, es sollte erst mal geklärt werden was eigentlich gemacht werden soll. Soll die Auswertung auf dem Nucleo erfolgen, oder das Nucleo nur als Interface für das PC Programm dienen?
Beitrag #5235154 wurde von einem Moderator gelöscht.
Rufus Τ. F. schrieb: > Sinnvoll kann es jedenfalls nicht sein, daß auf einem µC so eine Datei > benötigt wird. Wahrscheinlich versucht er was davon zu übersetzen: "Several examples (running on the PC) showing how to use API to perform ranging measurements with Nucleo F401 and VL53L0X expansion boards." Ob Eclipse dafür allerdings die richtige Umgebung ist? Da müßte dann ja wenigstens auch noch MinGW o.ä. installiert sein und das bringt meines Wissens auch seine eigene windows.h mit. Ich glaube aber kaum daß ST die Beispiele für MinGW programmiert, dann wohl eher für VisualStudio (welches das obige SDK gleich mit bringt und auch korrekt einbindet). Leider kann man den Krempel bei ST nur mit Anmeldung runterladen, sonst könnte man da ja mal reinschauen.
pegel schrieb: > Ich denke, es sollte erst mal geklärt werden was eigentlich gemacht > werden soll. > > Soll die Auswertung auf dem Nucleo erfolgen, oder das Nucleo nur als > Interface für das PC Programm dienen? Die Dateien sollen vom Nucleo mit einem Zeitstempel versehen und an den PC übertragen, wo sind in Matlab dargestellt werden.
Das bedeutet also, dass das Nucleo die Arbeit machen darf und dann die fertigen Daten seriell übergibt. Hast du dir dazu das oben erwähnte X-CUBE-53L0A1 angesehen?
pegel schrieb: > > Hast du dir dazu das oben erwähnte X-CUBE-53L0A1 angesehen? Ja aber so wie ich das verstanden hab ich das nur für das Nucleo Board mit dem Sensor drauf. Ich hab aber nur das satellite Board.
Jonas L. schrieb: > nur für das Nucleo Board mit dem Sensor drauf und das ist nur ein Pegelwandler für I2C 2,8V.
Die X-CUBE-53L0A1 greift auch auf windows.h zurück, die ich aber jetzt mittlerweile einbinden konnte. Jetzt motzt aber die winnt.h rum und meint was von "undefined processor type"
Versuchst du etwa, ein Windows Programm so zu compilieren, dass es auf dem Nucleo Board läuft?
Stefan U. schrieb: > Versuchst du etwa, ein Windows Programm so zu compilieren, dass es auf > dem Nucleo Board läuft? Nein, ich will das das Programm für den Nucleo auf dem Nucleo läuft
Ich habe mal zum Spaß die 4 Beispiele aus: X-CUBE-53L0A1/STM32CubeExpansion_VL53L0X_V1.2.0/Projects unter Linux compiliert. Keine Probleme. Da kommt keine windows.h drin vor.
Dann nochmal zum Mitdenken: Die Dateien windows.h und winnt.h gehören zu Windows, und werden für Programme benötigt, die für Windows kompiliert werden. Was könnte dir das sagen? Oliver
:
Bearbeitet durch User
Oliver S. schrieb: > Dann nochmal zum Mitdenken: > > Die Dateien windows.h und winnt.h gehören zu Windows, und werden für > Programme benötigt, die für Windows kompiliert werden. > > Was könnte dir das sagen? > > Oliver ST sagt das funktioniert mit eclipse bzw. mit der STM32 Workbench
Zeige uns mal die konkrete Datei, welche die windows.h benötigt.
Stefan U. schrieb: > Zeige uns mal die konkrete Datei, welche die windows.h benötigt. es ist die vl53l0x_platform.c
:
Bearbeitet durch User
Das bedeutet, du bist immer noch in den PC Beispielen. Die Dateien für das Ausführen auf dem Nucleo befinden sich in: STM32CubeExpansion_VL53L0X_V1.2.0
> es ist die vl53l0x_platform.c
Jetzt hast du den Dateinamen genannt, aber nicht den Inhalt der Datei.
Ich meinte natürlich den Inhalt.
pegel schrieb: > Das bedeutet, du bist immer noch in den PC Beispielen. > > Die Dateien für das Ausführen auf dem Nucleo befinden sich in: > STM32CubeExpansion_VL53L0X_V1.2.0 Jetzt hab ich sie auch gefunden. Jetzt ist ein Problem gelöst. Das erzeugt aber andere... Wenn ich die Bibliothek in das Projekt einfüge gibt es Komplikationen in der HAL-Bibliothek, wen ich sie wieder raus nehme geht alles.
Das verstehe ich jetzt nicht. Was willst du wo einfügen? Hast du eins von den Beispielprojekten probiert?
Hab versucht die Bibliothek in ein bestehendes Projekt einzufügen. Jetzt probier ich es mit dem Beispielprogramm.
Welche Bibliothek hast du wo eingefügt? Zeuge doch mal die relevanten Dateien (mit Inhalt) und die Fehlermeldung. Ist das denn so schwer, ein Problem klar zu beschreiben? Wofür haben wir Computer, mit denen man wunderbar Texte und Bilder (fast) nach belieben kopieren kann? Ganz dumme machen wenigstens Fotos vom Bildschirm mit ihrem Smartphone. Das wäre immer noch besser als deine Taktik, gar nichts zu liefern.
Stefan U. schrieb: > Welche Bibliothek hast du wo eingefügt? Zeuge doch mal die relevanten > Dateien (mit Inhalt) und die Fehlermeldung. > > Ist das denn so schwer, ein Problem klar zu beschreiben? > > Wofür haben wir Computer, mit denen man wunderbar Texte und Bilder > (fast) nach belieben kopieren kann? Ganz dumme machen wenigstens Fotos > vom Bildschirm mit ihrem Smartphone. Das wäre immer noch besser als > deine Taktik, gar nichts zu liefern. In der Datei stm32l4xx_hal_def.h wird der HAL_StatusTypeDef definiert 8siehe Bild Fehler 2), wenn ich den Ordner BSP aus dem X-CUBE-53L0A1 zu den Drivers in mein bestehendes Projekt einfüge kommt die Fehlermeldung "unknown type name 'HAL_StatusTypeDef'"(siehe Bild Fehler 1). Wenn ich den Ordenr BSP wieder aus den Drivern entferne läuft alles normal. Da ich jetzt aber versuche das in X-CUBE-53L0A1 enthaltene Beispiel zum laufen zu bekommen ist dieser Fehler momentan eher nebensächlich.
:
Bearbeitet durch User
Wir sitzen nicht vor deinem Computer und haben auch nicht deine Dateien vorliegen. Ich geb's auf, so hat das keinen Sinn.
Man sollte die Bilder auch hochladen wenn man schon drauf verweißt
:
Bearbeitet durch User
Wenn du nicht einmal die unveränderten Beispiele von ST compilieren kannst, wurden bereits bei der Installation grobe Fehler gemacht. Die funktionieren nämlich -korrekte Installation vorausgesetzt- ohne jede Änderung. Klingt, als würde das STM32-Repository nicht innerhalb des workspace-Path von Eclipse liegen. Solche planlosen Experimente wie du sie hier demonstrierst, werden dich ganz sicher nicht weiter bringen.
Harry L. schrieb: > Wenn du nicht einmal die unveränderten Beispiele von ST compilieren > kannst, wurden bereits bei der Installation grobe Fehler gemacht. > Die funktionieren nämlich -korrekte Installation vorausgesetzt- ohne > jede Änderung. Das ist ja nicht ein unverändertes Beispiel, sondern mein eigenes Projekt, an dem ich seit 2 Monaten arbeite.
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.