STM32 programmieren und debuggen mit C++: Unterschied zwischen den Versionen

Aus Nicki Wiki
Zur Navigation springen Zur Suche springen
Zeile 4: Zeile 4:
== Projektbeispiel ==
== Projektbeispiel ==
In Eclipse '''File''' -> '''New''' -> '''C++''' -> '''STM32F4xx C/C++ Project''' auswählen.
In Eclipse '''File''' -> '''New''' -> '''C++''' -> '''STM32F4xx C/C++ Project''' auswählen.
Einen Projektnamen vergeben, hier '''Project name:''' HelloWorld.
Einen Projektnamen vergeben - hier '''Project name:''' HelloWorld.
Den Ziel Prozessor auswählen, hier Target '''processor settings:''' STM32F407.
Den Zielprozessor auswählen - hier Target '''processor settings:''' STM32F407.


[[Datei:target-prozessor-settings.jpg]]
[[Datei:target-prozessor-settings.jpg]]
Zeile 14: Zeile 14:
[[Datei:cross-gnu-arm-toolchain.jpg]]
[[Datei:cross-gnu-arm-toolchain.jpg]]


Und mit Finish bestätigen.
und mit Finish bestätigen.


== Debugging ==
== Debugging ==
Zeile 20: Zeile 20:


== Boardkonfiguration ==
== Boardkonfiguration ==
Die Grundlegende Bord oder Chipconfiguration wird mit CubeMX durchgeführt.
Die grundlegende Bord oder Chipconfiguration wird mit CubeMX durchgeführt.
Nach der Konfiguration in CubeMX '''Project''' -> '''Settings...''' einen '''Project Namen''' vergeben, hier '''Project Namen''' HelloWorld, sowie einen Speicherort auswählen.
Nach der Konfiguration in CubeMX '''Project''' -> '''Settings...''' einen '''Project Namen''' vergeben, hier '''Project Namen''' HelloWorld, sowie einen Speicherort auswählen.
Im Dropdown Menü '''Toolchain/IDE''' -> '''Other Toolchain''' auswählen und mit '''OK''' bestätigen.
Im Dropdown Menü '''Toolchain/IDE''' -> '''Other Toolchain''' auswählen und mit '''OK''' bestätigen.

Version vom 4. Januar 2018, 15:28 Uhr

Dieses Tutorial zeigt wie mit der Standard IDE Eclipse Mikrocontrollern von STMicroelectronics mit C++ programmiert und debbugt werden kann. Voraussetzung ist die Einrichtung von Eclipse nach dem Tutorial STM32 programmieren und debuggen mit der Standard IDE Eclipse.
Ebenfalls wird auch hier das Discovery-Board: STM32F407G-DISC1 verwendet.

Projektbeispiel

In Eclipse File -> New -> C++ -> STM32F4xx C/C++ Project auswählen. Einen Projektnamen vergeben - hier Project name: HelloWorld. Den Zielprozessor auswählen - hier Target processor settings: STM32F407.

Datei:Target-prozessor-settings.jpg

Danach Next -> Next -> Next. Jetzt den Toolchain Pfad bis Ordner "bin" angeben, hier Toolchain path: D:\Programme\eclipse\GNU_ARM_Toolchain\5.4 2016q3\bin.

Datei:Cross-gnu-arm-toolchain.jpg

und mit Finish bestätigen.

Debugging

Siehe STM32 programmieren und debuggen mit der Standard IDE Eclipse.

Boardkonfiguration

Die grundlegende Bord oder Chipconfiguration wird mit CubeMX durchgeführt. Nach der Konfiguration in CubeMX Project -> Settings... einen Project Namen vergeben, hier Project Namen HelloWorld, sowie einen Speicherort auswählen. Im Dropdown Menü Toolchain/IDE -> Other Toolchain auswählen und mit OK bestätigen.

Datei:Project-settings.jpg

Jetzt ist das Projekt unter Project –> Generate Code zu erzeugen. Im Anschluss mit Open Folder den Projekt-Ordner im Explorer öffnen. Oder Manuell zum erzeugten Projekt-Ordner navigieren. Die main.h vom CubeMX Projekt in den inc Ordner kopieren und in die _initialize_hardware.c einbinden. Die Funktionen für die Hardwarekonfiguration aus der main.c vom CubeMX Projekt in die _initialize_hardware.c kopieren (ersetzen).

Funktion Beispiel:

void SystemClock_Config(void)
void Error_Handler(void)
static void MX_GPIO_Init(void)

Datei:Workspace.jpg

Die main.h kann natürlich umbenannt werden (z.B. _initialize_hardware.h) damit es nicht zu Missverständnissen kommt.

Quellen