STM32CubeIDE wie importiere ich richtig

Gast #6723857
Lesenswert?

Hallo,

ich habe mir ein WeAct STM32H743 Board gekauft und es gibt auf github 
Beispielprojekte, mit denen ich gerne arbeiten möchte:

https://github.com/WeActTC/MiniSTM32H7xx/tree/master/SDK/HAL/STM32H743

Es sind die Source-Dateien und die .ioc-Datei vorhanden. Ich habe zwar 
schon einige STM32-Projekte gemacht, habe aber nie wirklich verstanden, 
wie das mit dem Import von Vorlagen funktioniert. Ich habe schon 
probiert das in der CubeIDE als Projekt zu importieren, aber irgendwie 
sind dann die Treiber doppelt vorhanden im Dateibaum links und mit einem 
roten Kreuz versehen, obwohl beim Building kein Fehler ausgeworfen wird. 
Irgendwas mache ich hier falsch. Kann mir wer bitte kurz erklären wie 
das richtig geht?

Danke!!
Gast #6723875
Lesenswert?

Das ist nicht einfach, wie bei diesen Downloads gar keine importierbare 
Projektdatei dabei ist.

Ich würde die ioc Datei in Cube MX öffnen und dann damit ein neues 
Projekt generieren lassen. Danach kopierst du die fehlenden Quelltexte 
in die vorgesehenen Ordner. Die Dateien der CMSIS, HAL und Startup und 
Linker Script werden von CubeMX bereits bereitgestellt.

Da wird viel Handarbeit nötig sein, das ist nichts für Anfänger.

Einfache Alternative: kaufe die Keil IDE.
Gast #6724094
Lesenswert?

Als Anfänger würde ich mich (zumindest was das Programmieren der STM32 
angeht) nicht bezeichnen, habe nur keine Ahnung wie das mit dem Import 
funktioniert bzw. warum er mir die Dateien rot kennzeichnet. Gibt es da 
eine Möglichkeit herauszufinden, was ihm da aus welchem Grund nicht 
passt. Oder sonstige Ideen? Bin eigentlich mit der IDE sehr zufrieden 
und möchte kein Keil.
Gast #6724100
Lesenswert?

Wie gesagt, die IDE kann keine Keil Projekte importieren.

Du bist Anfänger, sonst würdest du dir die Fehlermeldungen der IDE (zu 
den roten Markierungen) anschauen und beseitigen. Die Pfade zu den 
Verzeichnissen kann man in den Projekteinstellungen anpassen oder halt 
die Dateien in die richtigen Verzeichnisse legen.
#6724183
Lesenswert?

Der einfachste Weg (der oft sogar überraschend gut funktioniert) geht 
so:

1. auf Basis der .ioc-Datei aus dem Beispiel ein Neues Projekt erzeugen
2. CubeMX den Code generieren lassen
3. die Dateien in Src und Inc vergleichen, und mit den geänderten 
Dateien aus dem Beispiel die neuen generierten Dateien überschreiben. 
(Alle Dateien, die User-Code enthalten!)
4. mit CubeMX den Code erneut generieren lassen

Bei einfacheren Projekten kommt man so meist zu nem lauffähigen 
Ergebnis.

Viel Glück!
#6724361
Lesenswert?

Du erstellst ein neues Projekt mit dem richtigen Namen in CubeIDE 
(passend zum git repo). Festure Auswahl und Code Generierung kannst Du 
überspringen. Aber Du nutzt "share Project" (git) für das anlegen  ein 
lokales Repos. Danach schliesst Du das Projekt.

Z.B. in einer shell machst Du einen manuellen checkout des remote git 
repos. Anschliessend überschreibst das CubeIDE Projekt-Directory  mit 
dem checkout von git.

Am Ende öffnest Du das Projekt wieder mit CubeIDE.
Danach kannst Du ganz normal in CubeIDE und der Verknüpfung mit dem 
remote git arbeiten.

Alternativ kannst Du die Verknüpfung mit dem remote git repo auch für 
das erstellte CubeIDE Projekt durch ein paar Eintrage in gitconfig 
machen.

Bei mir funktioniert das.
Gast #6724371
Lesenswert?

es ging doch garnicht um git??

In dem Screenshot sehe ich auch keinen Fehler oder doppelte Treiber. Die 
roten Kreuze könnten verschwinden wenn man in der Problems Ansicht 
eventuelle Altlasten löscht.
#6724468
Lesenswert?

Wenn ich es richtig verstanden habe, dann will Tittrich ein auf github 
(git) vorhandenes Projekt importieren (übernehmen), übersetzen, 
aufspielen, debuggen.
Also kein Beispiel, dass STM im CubeIDE anbieten, sondern ein "fremdes" 
Projekt importieren, wie es bei eclipse üblich ist(?)

D.h., da hat schon jemand anderes den ganzen workflow in der  CubeIDE 
gemacht.
Gast #6724489
Lesenswert?

die verlinkten Projekte sind für die Keil IDE, nicht Cube. Da muss man 
wohl einige manuelle Schritte ausführen.
Hier ist ein Weg über ein keil2gcc / makefile Projekt beschrieben:
https://www.youtube.com/watch?v=ua8jki9Vjx4
Ist schon etwas älter, vielleicht gibt es mittlwerweile etwas 
komfortableres.
Andererseits generiert CubeMX ja auch direkt Code und man braucht solche 
einfachen Beispiele nicht unbedingt.
Gast #6724580
Lesenswert?

Danke erstmal für die guten Antworten. Ja genau, git spielt hier keine 
Rolle es geht eigentlich rein darum, das in Keil entwickelte Projekt 
(hab das erst gestern gecheckt) auf der CubeIDE von STM laufen zu 
lassen. Ist schon ganz blöd weil das etwas anders aufgebaut ist 
(Initialisierungen von ADC, SPI etc. sind z.B. in einzelne Dateien 
aufgespaltet). Ich mache das so wie das der Harry L. gepostet hat (so 
wollte ich das auch ursprünglich angehen), dann gehts, etwas Handarbeit 
aber nicht wirklich ein Problem.

@Johannes S.
interessanter Vorschlag, werde ich mir anschauen

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