Ich habe gerade den STM32CubeMX installiert (die ursprüngliche ARM-IDE von ST Microelectronics, wenn ich das richtig verstehe). Nach der Installation habe ich versucht, ein neues Projekt für ein DISCOVERY-Kit zu öffnen, das ich habe (STM32F0DISCOVERY).
Nachdem ich jedoch fortgefahren bin, wurde Open project
ich aufgefordert, eine Toolchain zu installieren:
Wie ich enthüllte, ist EWARM eine voll funktionsfähige IDE von IAR, daher war ich überrascht, dass die IDE von STM die IDE von IAR für ihre Arbeit benötigt (außerdem ist EWARM von IAR keine Freeware - es ist eine sehr teure Software, wie ich weiß).
Im Projekteinstellungsfenster gibt es drei Auswahlmöglichkeiten:
IARs EWARM,
Keils MDK-ARM und
TrueSTUDIO von Atollic.
Alle sehr teuer :(
Die Fragen lauten also:
Stimmt es, dass der STM32CubeMX von STM mir keine kostenlose Funktionalität bietet?
Wie ich aus der Nachricht verstehe, kann das Projekt mit einer anderen Toolchain verknüpft werden, also kann ich einen Blick auf GCC oder eine preisgünstigere Toolchain (natürlich bevorzuge ich lieber freie Software) werfen?
Falls ja: Wie kann ich GCC mit Cube nutzen?
Für eine IDE, die einige Funktionen wie den Cube bietet, kann ich vorschlagen, dass Coocox vielleicht einen Versuch wert ist. Es ist kostenlos, basiert auf Eclipse und unterstützt einige der STM-Boards von Haus aus.
Nach meinem Verständnis ist der CubeMX nur ein Codegenerator, der Ihnen Code schreibt (in den Ordner, den Sie ihm geben), in dem die gesamte Peripherieinitialisierung stattfindet. Alle anderen Entwicklungen müssen in einer normalen IDE stattfinden.
Aktualisieren:
Kürzlich wurde bekannt gegeben, dass Atollic Truestudio jetzt kostenlos für STM32-Benutzer angeboten wird.
Ich denke, das wird einem breiteren Publikum Zugang zu einer High-End-IDE und Toolchain geben. Ich habe es nicht benutzt, daher kann ich seine Funktionen nicht kommentieren, aber die eingebaute harte Fehleranalyse im Debugger könnte sich zum Beispiel als nützlich erweisen.
Ich weiß, es ist ein alter Beitrag, aber vielleicht hilft es anderen...
Verwechseln Sie Toolchain nicht mit IDE. Sie könnten die IDE als das letzte Glied in der Toolchain betrachten, aber eine Toolchain impliziert nicht unbedingt eine IDE . Eclipse ist eine IDE, die sich mit vielen verschiedenen Toolchains verbindet. In meinem Fall (ARM gcc build [Linker, Compiler, Assembler usw.] + Automake) ist meine Toolchain.
Ich verwende keine IDE. Ich nehme den generierten Quellcode von CubeMX und schreibe Makefiles, um ihn auf die von mir gewählte Weise zu kompilieren. Die Toolchain-Option in meinen CubeMX-Optionen ist TrueStudio, da diese Option ein nettes Linker-Skript generiert, das ich leicht ändern kann. Dies trotz der Tatsache, dass ich TrueStudio nicht verwende (und auch nicht beabsichtige, es zu verwenden).
Wenn Sie gcc verwenden möchten, großartig. Aber die IDE-Auswahl ist weitgehend eine unabhängige Wahl, es sei denn, die von Ihnen gewählte IDE zwingt Ihnen einen anderen Compiler auf. Wenn Sie wirklich eine IDE wollen (meiner Meinung nach sind sie eher im Weg als hilfreich), müssen Sie möglicherweise eine auswählen, die direkt mit automake (Makefiles) oder gcc zusammenpasst. Eclipse ist die einzige, die ich kenne.
Einige Compiler haben unterschiedliche Konventionen für den Umgang mit Konstrukten auf Präprozessorebene (Makros, Pragmas, Bedingungen usw.), aber der tatsächliche Quellcode wird nicht sehr unterschiedlich sein.
Ich würde die Toolchain von Leaflabs ausprobieren, die sie für ihre Maple-Hardware verwenden . Das Maple ist ein Board im Arduino-Stil, auf dem ein STM32 Cortex M3-Prozessor ausgeführt wird. Sie verschenken die Toolchain mit der IDE und die IDE führt Windows aus, sodass die Toolchain für Ihre Situation funktionieren kann. Keine Garantien natürlich.
Alle Tools haben eine eingeschränkte, aber kostenlose Version....
Obwohl ich im selben Schuh wie Sie bin, verwende ich GUN/Linux, leider laufen alle oben genannten Tools unter WinOS.
Nach einiger Suche habe ich eine Lösung gefunden. Ich werde das demnächst genau testen, aber bevor ich die Lösung teile: Lest den Blogbeitrag von Baoshi . Er hat eine Beschreibung und einen Makefile
Dateigenerator.
Einige Ergänzungen: Mit dem neuesten Cube brauche ich einen Hack, weil Cube nicht die richtige *.ld
Datei für F0 generiert, also habe ich von einem anderen Tool *.ld
für dasselbe Ziel kopiert. Vielleicht ist es eine Linux-bezogene Frage.
Chris Stratton
Roman Matwejew
Chris Stratton
Roman Matwejew
Chris Stratton
Ashton H.
Cowboydan
Sohail