Forum: Compiler & IDEs STM32CubeIDE > Includes


von Jan H. (janiiix3)


Angehängte Dateien:

Lesenswert?

Hallo,

ich bin gerade dabei mich in der Welt der STM32er zurecht zu finden.
Aktuell habe ich hier ein STM32F0308-DISCO vor mir liegen.
Dafür habe ich jetzt ein neues Projekt in der IDE angelegt.

Wo finde ich jetzt die passende Include Datei für meinen Prozessor?.
Muss man sich die bei STM extra herunterladen?.

Gruß Jan.

: Verschoben durch Moderator
von Nop (Gast)


Lesenswert?

Jan H. schrieb:

> Wo finde ich jetzt die passende Include Datei für meinen Prozessor?

Ich würde einfach mal mit dem Datei-Explorer die fragliche Include-Datei 
im angelegten Projektpfad oder im Programmverzeichnis suchen.

von Mike R. (thesealion)


Lesenswert?

Eventuell ein mal das komplette Projekt in Eclipse "Refreshen".
Ab und zu braucht Eclipse etwas um neue Dateien auch im Explorer 
anzuzeigen.

Ansonsten ist die FRage, wie (und welches) Projekt du neu erzeugt hast.

von Alex -. (alex796)


Lesenswert?

Jan H. schrieb:
> Wo finde ich jetzt die passende Include Datei für meinen Prozessor?.
> Muss man sich die bei STM extra herunterladen?.

Hi Jan,
kurze und knapp: Ja! :)

Es sieht so aus, als ob du ein "empty project" erstellt hast? Falls ja, 
musst du die entsprechenden Headerdateien etc. manuell herunterladen, da 
das Projekt ja leer ist (startup Datei, linkerscript und makefile werden 
jedoch erstellt.). Alternativ dazu ist, dass du nicht ein leeres Projekt 
erstellst, sondern mittels CubeMX deinen MCU deinen Wünschen nach 
konfigurierst. CubeIDE lädt dann automatisch die entsprechenden HAL 
Dateien für dich herunter (und ebenfalls die benötigten Include Dateien 
etc.).

Fallst du es manuell machen möchtest (was ich dir nur empfehlen kann):

Dein Disco board verwendet folgenden MCU:
STM32F030R8T6

https://www.st.com/en/microcontrollers-microprocessors/stm32f030r8.html

Unter "Tools&Software" musst du nach "CMSIS" suchen und findest 
folgenden Link:
https://www.st.com/content/st_com/en/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32cube-mcu-mpu-packages/stm32cubef0.html

Kannst du entweder direkt von deren Webseite herunterladen (ist ne große 
.zip Datei), oder via Github (was dir lieber ist).

Das, was für dein Anliegen relevant ist, findet sich im Unterordner 
"Drivers/CMSIS"
Dort findest du in weiteren Unterordnern die device specific header 
files:
https://github.com/STMicroelectronics/STM32CubeF0/tree/master/Drivers/CMSIS/Device/ST/STM32F0xx/Include

Die gewünschte stm32f0xx.h liegt hier:
https://github.com/STMicroelectronics/STM32CubeF0/blob/master/Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f0xx.h

Schaust du in die stm32f0xx.h hinein, findest du weitere includes. Nun 
musst du in den Compilereinstellungen in deiner CubeIDE (im selbigen 
Projekt) das flag "STM32F030x8" übergeben, um die für deinen MCU 
benötigte Datei einzubinden. Entsprechend musst in demselben 
STM32F0xx/Include Ordner die Include Datei "stm32f030x8.h" in dein 
Projekt kopieren.

Gleiches Prinzip wie vorher:
In der entsprechenden stm32f030x8.h werden weitere Include Dateien 
gebraucht, die in dein Projekt kopiert werden müssen:
1
#include "core_cm0.h"            /* Cortex-M0 processor and core peripherals */
2
#include "system_stm32f0xx.h"    /* STM32F0xx System Header */
Das Spiel musst du solange weiterspielen, bis du alle Include Dateien in 
dein Projekt herüberkopiert hast. Da kommen einige Dateien zusammen 
(sowohl STM32 spezifisch, aber auch cortex-M spezifisch)

Probier es einfach mal aus, das klappt schon. Ansonsten schreib mir, 
dann kann ich dir weiterhelfen. Ich erstelle meine Projekte allesamt als 
leere Projekte, weil mir CubeMX / CubeIDE nicht sonderlich gefällt.

Viel Erfolg,

: Bearbeitet durch User
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.