Forum: Mikrocontroller und Digitale Elektronik Eclipse windows.h wird nicht gefunden


von Jonas L. (rowtag)


Lesenswert?

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.

von pegel (Gast)


Lesenswert?

Welches API? X-CUBE-53L0A1 ?
Und wo da?

von Oliver S. (oliverso)


Lesenswert?

Einfach das include mal auskommentieren, und schauen, ob und welche 
Fehlermeldungen dann kommen.

Oliver

von pegel (Gast)


Lesenswert?

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.

von Jonas L. (rowtag)


Lesenswert?

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?

von Stefan F. (Gast)


Lesenswert?


von Jonas L. (rowtag)


Lesenswert?

und was mache ich wenn ich das installiert habe?

von Stefan F. (Gast)


Lesenswert?

Keine Ahnung. In einem MSDN Artikel stand drin, dass man das runterladen 
soll, um an die Header Dateien zu kommen.

von guest (Gast)


Lesenswert?

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.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

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.

von pegel (Gast)


Lesenswert?

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.
von guest (Gast)


Lesenswert?

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.

von Jonas L. (rowtag)


Lesenswert?

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.

von pegel (Gast)


Lesenswert?

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?

von Jonas L. (rowtag)


Lesenswert?

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.

von pegel (Gast)


Lesenswert?

Jonas L. schrieb:
> nur für das Nucleo Board mit dem Sensor drauf

und das ist nur ein Pegelwandler für I2C 2,8V.

von Jonas L. (rowtag)


Lesenswert?

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"

von Stefan F. (Gast)


Lesenswert?

Versuchst du etwa, ein Windows Programm so zu compilieren, dass es auf 
dem Nucleo Board läuft?

von Jonas L. (rowtag)


Lesenswert?

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

von pegel (Gast)


Lesenswert?

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.

von Oliver S. (oliverso)


Lesenswert?

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
von pegel (Gast)


Angehängte Dateien:

Lesenswert?

Die Projekte in SW4STM32.

von Jonas L. (rowtag)


Lesenswert?

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

von Stefan F. (Gast)


Lesenswert?

Zeige uns mal die konkrete Datei, welche die windows.h benötigt.

von Jonas L. (rowtag)


Lesenswert?

Stefan U. schrieb:
> Zeige uns mal die konkrete Datei, welche die windows.h benötigt.

es ist die vl53l0x_platform.c

: Bearbeitet durch User
von pegel (Gast)


Lesenswert?

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

von Stefan F. (Gast)


Lesenswert?

> es ist die vl53l0x_platform.c

Jetzt hast du den Dateinamen genannt, aber nicht den Inhalt der Datei. 
Ich meinte natürlich den Inhalt.

von Jonas L. (rowtag)


Lesenswert?

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.

von pegel (Gast)


Lesenswert?

Das verstehe ich jetzt nicht.
Was willst du wo einfügen?

Hast du eins von den Beispielprojekten probiert?

von Jonas L. (rowtag)


Lesenswert?

Hab versucht die Bibliothek in ein bestehendes Projekt einzufügen.

Jetzt probier ich es mit dem Beispielprogramm.

von Stefan F. (Gast)


Lesenswert?

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.

von Jonas L. (rowtag)


Lesenswert?

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
von Stefan F. (Gast)


Lesenswert?

Wir sitzen nicht vor deinem Computer und haben auch nicht deine Dateien 
vorliegen. Ich geb's auf, so hat das keinen Sinn.

von Jonas L. (rowtag)


Angehängte Dateien:

Lesenswert?

Man sollte die Bilder auch hochladen wenn man schon drauf verweißt

: Bearbeitet durch User
von Jonas L. (rowtag)


Angehängte Dateien:

Lesenswert?

Hier das zweite

von Harry L. (mysth)


Lesenswert?

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.

von Jonas L. (rowtag)


Lesenswert?

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
Noch kein Account? Hier anmelden.