Hallo, ich hatte für meine Dipl.-Arbeit ein Messgerät konstruiert. Dies mit einem STM32F1 und SPL unter Zuhilfenahme von KEIL + STLINK/V2. Nun möchte ich Hobby-mäßig andere Wege ausprobieren: - STM32Cube (HAL schein der neue Weg von ST zu sein) - Segger Studio (für Privat und größere Projekte kostenlos) - J-Link EDU (ist vorhanden) STM32Cube generiert den Code u.A. für KEIL, das ist schön. Wenn man sich an die genaue Form von ST hält, kann man mit STM32Cube immer wieder neuen/geänderten Code generieren, ohne dass der selbstgeschriebe Code/Programm dadurch zerstört wird. Aber wie verhält es sich bei Segger Segger Embedded Studio? Wie klappt das Zusammenspiel mit Segger, darüber habe ich noch keine Anleitung gefunden. Kann mir da jemand weiterhelfen wie ich den Code mit STM32Cube für Segger erstelle und nutzen kann? Danke.
Indem man STM32Cube weglässt...macht mehr Probleme als es hilft. Du kannst du dir ja einmalig Code generieren lassen aber dann setze doch bitte einfach ein sauberes Projekt mit Embedded Studio auf und gut ist. Dann weiß man wenigstens was man tut und es passiert nichts kryptisches im Hintergrund. Diese ganzen Chip Hersteller HALs sind gut, um sich mal eine Initialisierung abzuschauen aber man muss sie nicht die ganze Zeit im Projekt haben.
Selbst wenn man die HAL benutzt ist es wesentlich besser wenn man sich das Projekt selbst zusammenstellt. Dadurch hat man am Ende auch die Zusammenhänge begriffen. Wenn du dir mit dem Segger Embedded Studio ein Projekt zusammenstellst, hast du in der Regel deren (oder besser den Crossworks) Startup-Code, die Libs und die Linkerscripts im Projekt. Das muss kein Nachteil sein zumal die Crossworkslibs oft einen deutlich kleineren Code ergeben als z.B. die GnuArm-Libs. CubeMX ist gut um sich mal einen Überblick zu verschaffen über die Clocks und die Pin-Abhängigkeiten, ansonsten holt man sich nur wieder unkalkulierbare Abhängigkeiten ins Projekt. Selbst wenn du dir mit CubeMx Code generieren lässt musst du ihn irgendwie auch verstehen. Und wenn er verstanden wurde ist das leicht übertragbar. Sollte das aber darauf abzielen, dass es nur schnell gehen soll ohne die Zusammenhänge zu verstehen, dann kann man nur sagen: Quäl die du Sau...
Ich würde CubeMX nur EINMAL benutzen, um den Startup Code zu generieren. Dafür taugt es meiner Meinung nach sehr gut. Nachdem man dann am Projekt selber editiert hat, sollte man nicht den von CubeMX angebotenen Weg, nun an dem Projekt weitere Änderungen zu machen, nutzen. Damit CubeMX erkennen kann, wo es seinen neuen Code unterbringen soll, benutzt es wohl Kommentarzeilen der Form "/* Add User Code 1 here */ und sowas geht bestimmt schnell schief, wenn man nur irgendeine Zeile anfasst. Wenn ich in einem von CubeMX generierten Code noch ein Peripheriegerät benötige, generiere ich den Code in einem neuen Verzeichnis neu, und füge dann die meist wenigen zusätzlichen Zeilen manuell in mein Projekt ein.
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.