Forum: Compiler & IDEs IDE für STM32


von Tagsüberarbeitender (Gast)


Lesenswert?

Hallo,

ich bin es gewohnt, mit Renesas Synergy und E²Studio von Renesas 
(basiert auf Eclipse) zu arbeiten. Es gibt aber einige interessante 
Aspekte, die mich momentan dazu verleiten, bei STM32 einzusteigen. Der 
große Vorteil von Synergy ist das ohne zusätzliche Kosten oder Lizenzen 
nutzbare ThreadX als RTOS. Insgesamt nimmt diese IDE mir sehr viel 
Tipparbeit ab, da man sämtliche Module grafisch konfigurieren kann und 
diese dann automatisch in Quellcode umgesetzt werden. Insofern ist diese 
Software relativ bequem zu benutzen. Die große Frage ist nun: Ist eine 
derartige IDE für STM32 ebenfalls vollumfänglich verfügbar? Wichtig ist 
mir der Pin-Konfigurator, sowie die Möglichkeit, ein RTOS bequem zu 
benutzen, sowie die Möglichkeit, die gesamte Peripherie grafisch zu 
konfigurieren, sodass ich mich auf das wesentliche konzentrieren kann.

von Stephan K. (nightowl)


Lesenswert?

Jain,
Grafische Programmierung hab ich bei stm noch nicht gesehen.
Die Konfiguration der Pins, Peripherie und des clock-trees kannst Du 
grafisch mit CubeMX machen.
Das ist auch frei verfügbar und läuft sowohl unter Windows als auch 
unter Linux.

von STM32User (Gast)


Lesenswert?

Matlab Simulink Embedded Coder Support ist vorhanden

von Tagsüberarbeitender (Gast)


Lesenswert?

Stephan K. schrieb:
> Grafische Programmierung hab ich bei stm noch nicht gesehen.

Das meine ich nicht. Mir geht es um die Konfiguration der Peripherie. 
Den eigentlichen Quelltext meiner Anwendung schreibe ich nach wie vor 
komplett selbst. Kostenlose Verfügbarkeit ist mir wichtig, da ich damit 
kein geld verdiene. Bei E²Studio ist ThreadX bereits dabei, ich brauche 
mich da um nichts kümmern. Etwas ähnliches suche ich für STM32. 
Natürlich muss es nicht ThreadX sein, wahrscheinlich dann eher FreeRTOS. 
Ich habe nur keine Lust, mich um den gesamten Overhead zu kümmern, wie 
z.B. das Erstellen von Threads etc. Diese gesamte Konfiguration, wie das 
Erstellen von Thread, Hinzufügen von Timers, CAN-Bus Treiber, UART, 
RGB-Video, USB etc.pp. geht bei E2Studio grafisch.

von Max D. (max_d)


Lesenswert?

Mit STM32CubeMX kannst du dir die Konfiguration der Hardware 
zusammenklicken und dann als Projekt für deine IDE (SW4STM32 z.B.) 
exportieren.

von Stefan F. (Gast)


Lesenswert?

Tagsüberarbeitender schrieb:
> Ist eine derartige IDE für STM32 ebenfalls vollumfänglich verfügbar?

Ja, da hast du (mindestens) zwei zur Wahl, beide basieren auf Eclipse:

- Atollic TrueStudio (inzwischen von ST übernommen)
- System Workbench for STM32 von AC6

> Wichtig ist mir der Pin-Konfigurator, sowie die Möglichkeit,
> ein RTOS bequem zu benutzen

Dazu installierst du neben der IDE zusätzlich CubeMX von ST.

Eventuell helfen Dir meine Notizen zu STM32F1 und F3: 
http://stefanfrings.de/stm32/index.html

von Michael F. (Gast)


Lesenswert?

Tagsüberarbeitender schrieb:
> Kostenlose Verfügbarkeit ist mir wichtig, da ich damit
> kein geld verdiene. Bei E²Studio ist ThreadX bereits dabei, ich brauche
> mich da um nichts kümmern.

Bei E²Studio / Synergy ist ThreadX nicht kostenlos. Die Lizenzkosten 
sind nur auf die Bauteilkosten umgelegt und somit nicht klar ersichtlich 
;-)

von StinkyWinky (Gast)


Lesenswert?

Und mit CubeMX kannst du dir das FreeRTOS hinzu klicken und nach 
belieben Tasks, Queues, Semaphoren; was dein Herz begehrt.

von Harry L. (mysth)


Lesenswert?

Nur mal zur Klarstellung:

SW4STM32 ist ein totes Pferd.

Das wurde von AC6 im Auftrag von ST entwickelt, ist inzwischen durch den 
Zukauf von Atollic durch ST obsolet und wird auch durch ST selbst nicht 
mehr supported.

Laut einer Info aus einem der letzten HandsOn-Workshops von ST wird 
Atollic ebenfalls sehr zeitnah (noch in diesem Jahr) durch ein neues 
Produkt mit dem Namen CubeStudio abgelöst.

Aktuell bietet Atollic die bessere Unterstützung für das STM32-System.
Damit kann man u.A. auch RTOS-Threads debuggen.
Das war/ist mit SW4STM32 nicht möglich.

von Michael F. (Gast)


Lesenswert?

Harry L. schrieb:
> SW4STM32 ist ein totes Pferd

Dafür, dass SW4STM32 ein totes Pferd ist, ist die Unterstützung im Cube 
für das STM32MP157C-DK2 aber recht gut und wenn ich mich recht erinnere 
auch einzigartig, da aktuell keine andere Toolchain für das DK2 
unterstützt wird.

Und sooo alt ist das Board ja nun auch wieder nicht ;-)

von Harry L. (mysth)


Lesenswert?

Michael F. schrieb:
> Harry L. schrieb:
>> SW4STM32 ist ein totes Pferd
>
> Dafür, dass SW4STM32 ein totes Pferd ist, ist die Unterstützung im Cube
> für das STM32MP157C-DK2 aber recht gut und wenn ich mich recht erinnere
> auch einzigartig, da aktuell keine andere Toolchain für das DK2
> unterstützt wird.
>
> Und sooo alt ist das Board ja nun auch wieder nicht ;-)

Geht ebenfalls mit Atollic

von Til S. (Firma: SEGGER) (til_s)


Lesenswert?

Oder alternativ sich unabhängig vom Chiphersteller machen und Produkte 
benutzen, die mit jedem Device funktionieren:

https://www.segger.com/products/development-tools/embedded-studio/
https://www.segger.com/products/rtos/embos/tools/plug-ins/embedded-studio/
https://www.segger.com/products/rtos/embos/


Ok, grafisch Pins konfigurieren geht damit leider nicht.
Aber man sich ja durchaus auch mit STM32Cube Code generieren lassen und 
dann mit der IDE seiner Wahl arbeiten.

von Markus (Gast)


Lesenswert?

Til S. schrieb:

> Oder alternativ sich unabhängig vom Chiphersteller machen und Produkte
> benutzen, die mit jedem Device funktionieren:

Eine Abhängigkeit durch eine andere ersetzen? Du machst ein bisschen 
viel Werbung für deinen Brötchengeben. Eine bessere Wahl ist es sich z. 
B. im Opensourcebereich umzuschauen.

von Til S. (Firma: SEGGER) (til_s)


Lesenswert?

Markus schrieb:
> Eine Abhängigkeit durch eine andere ersetzen? Du machst ein bisschen
> viel Werbung für deinen Brötchengeben.

Jain, klar ist das irgendwie auch Werbung aber ich war schon Fan von 
Embedded Studio bzw. besser gesagt Rowley Crossworks bevor SEGGER mein 
Brötchengeber war ;-). Ich kann das halt schwer trennen. Ich hoffe man 
sieht mir das nach.

von Random .. (thorstendb) Benutzerseite


Lesenswert?

Ist dieses ganze Hardware-ZusammenclickiBunti wirklich sinnvoll? Für 
reale Projekte muss man doch eh meisst selbst verstehen, was da passiert 
...

von Walter T. (nicolas)


Lesenswert?

Til S. schrieb:
> Oder alternativ ...

Kann man in Embedded Studio Targets für Windows bauen und debuggen?

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Harry L. schrieb:
> SW4STM32 ist ein totes Pferd.

Ach herrje, schon wieder ein totes Pferd?

Ich denke du irrst. Das Projekt wird aktuell weiter gepflegt. Ich finde, 
man muss nicht immer dem neuesten Produkt hinterher laufen. Wie lange ST 
das zugekaufte Programm weiter pflegt, wird sich noch zeigen.

Ich bevorzuge die System Workbench, weil man damit Projekte ohne 
"Firmware" (also HAL und SPL) anlegen kann. Ansonsten sind mir zwischen 
diesen beiden IDEs keine für mich relevanten Unterschiede aufgefallen.

Du hast einen genannt: Debuggen von RTOS Threads. Sollte man im 
Hinterkopf behalten.

> wird auch durch ST selbst nicht mehr supported.

Das ist nicht korrekt.

von Harry L. (mysth)


Lesenswert?

Markus schrieb:
> Eine bessere Wahl ist es sich z.
> B. im Opensourcebereich umzuschauen.

Attolic ist bis auf wenige Teile OpenSource.
Die Toolchain basiert vollständig auf GCC

Random .. schrieb:
> Ist dieses ganze Hardware-ZusammenclickiBunti wirklich sinnvoll?

Ja, da man damit einiges an Arbeitszeit sparen kann.
Das befreit einen aber keinesfalls davon, zu verstehen was man tut.

Walter T. schrieb:
> Kann man in Embedded Studio Targets für Windows bauen und debuggen?

Mit Atollic geht das (ja, ich weis, das war nicht die Frage).
Alle erforderlichen Komponenten lassen sich problemlos im TrueStudio 
nachinstallieren.
Ich nutze zwar kein Windows, aber hab aktuell in meinem TrueStudio die 
Unterstützung für 8bit-AVR nachgerüstet.
Da das auf Eclipse basiert war das auch kein grösseres Problem.

Stefanus F. schrieb:
> Ich bevorzuge die System Workbench, weil man damit Projekte ohne
> "Firmware" (also HAL und SPL) anlegen kann.

Das geht auch mit Atollic!
Diese Unterstützung war bei Atollic 9.1 kaputt.
Aktuell ist 9.3, und ob das repariert wurde kann ich nicht sagen.
Das ggf. nachzurüsten ist jedoch genauso kein Problem (s.o)

Allerdings setzt das natürlich voraus, daß man sich mit Eclipse 
auskennt.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Harry L. schrieb:
> Aktuell ist 9.3, und ob das repariert wurde kann ich nicht sagen.

Ist immer noch kaputt. Ich habe es vor ein paar Tagen ausprobiert.

> Das ggf. nachzurüsten ist jedoch genauso kein Problem (s.o)

Notfalls kann man ein HAL Projekt anlegen und den unerwünschten Ballast 
wieder raus löschen.

von Harry L. (mysth)


Lesenswert?

Stefanus F. schrieb:
> Harry L. schrieb:
>> Aktuell ist 9.3, und ob das repariert wurde kann ich nicht sagen.
>
> Ist immer noch kaputt. Ich habe es vor ein paar Tagen ausprobiert.
>
>> Das ggf. nachzurüsten ist jedoch genauso kein Problem (s.o)
>
> Notfalls kann man ein HAL Projekt anlegen und den unerwünschten Ballast
> wieder raus löschen.

Dann installier dir die ARM-Tools im Truestudio und der Drops ist 
gelutscht.
Dauert keine 5min.

Beitrag #5776655 wurde von einem Moderator gelöscht.
von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

Bei mir geht es immer noch nicht. Wenn ich ein CMSIS Projekt anlege, ist 
der gezeigte Dialog immer noch leer.

Die ARM-Tools sind drin.

von Harry L. (mysth)


Lesenswert?

Stefanus F. schrieb:
> Bei mir geht es immer noch nicht. Wenn ich ein CMSIS Projekt
> anlege, ist
> der gezeigte Dialog immer noch leer.
>
> Die ARM-Tools sind drin.

K.A. woran das liegt.
Das Thema interessiert mich pers. nicht, und daher musst du selbst 
herausfinden woran das liegt.

Vermutung: Das CMSIS Projekt-Template basiert auf dem Atollic-Template.
Die ARM-GNU-Tools bringen eigene Templates mit, die man auch nutzen 
sollte.

von Stefan F. (Gast)


Lesenswert?

Harry L. schrieb:
> Das Thema interessiert mich pers. nicht, und daher musst du selbst
> herausfinden woran das liegt.

Ist Ok, ich habe ja einen Workaround.

von Til S. (Firma: SEGGER) (til_s)


Lesenswert?

Walter T. schrieb:
> Kann man in Embedded Studio Targets für Windows bauen und debuggen?

Nö, ist nur für Embedded gedacht.

von Walter T. (nicolas)


Lesenswert?

Til S. schrieb:
> Walter T. schrieb:
>> Kann man in Embedded Studio Targets für Windows bauen und debuggen?
>
> Nö, ist nur für Embedded gedacht.

Schade. Aber danke für die schnelle Antwort. Ich habe mir in der 
tausendseitigen Doku schon einen Wolf gesucht.

von Stefan F. (Gast)


Lesenswert?

Laut diesem Beitrag kann man mit der System Workbench doch RTOS Threads 
debuggen, man muss nur eine Kleinigkeit konfigurieren: 
http://www.openstm32.org/forumthread7432

von Rene K. (xdraconix)


Lesenswert?

Ich arbeite auch mit SW4STM32... Keine Frickelei, alles läuft und ich 
bin nicht auf spezielle Progger gezwungen (Segger).

Und da als Unterbau halt Eclipse ist... ist ein

Walter T. schrieb:
> Til S. schrieb:
>> Oder alternativ ...
>
> Kann man in Embedded Studio Targets für Windows bauen und debuggen?

Ist dann übrigens unter SW4STM32 auch kein Problem, da dies ja auf 
Eclipse basierend ist.

von C. W. (chefkoch)


Lesenswert?

Für kleines Geld: VisuaGDB mit Visual Studio! Geht einfach, ist nicht 
auf einen Hersteller festgelegt und der Support ist spitze! Meine letzte 
Anfrage heute morgen um 5:50 wurde nach genau 34 Minuten beantwortet!!

von Harry L. (mysth)


Lesenswert?

C. W. schrieb:
> Für kleines Geld: VisuaGDB mit Visual Studio! Geht einfach, ist nicht
> auf einen Hersteller festgelegt und der Support ist spitze!

Dafür ist man auf Windoof festgelegt und das ist noch viel schlimmer.

von Ralf (Gast)


Lesenswert?

Ein "Zusammengeklicker" der Hardwareconfig eines STM32 habe ich bisher 
nur bei KEIL (uVision) gesehen. War ganz praktisch, allerdings sind 
Lizenzkosten und Lizenzbedingungen bei KEIL nicht akzeptabel.

Rowley Crossworks fand ich ganz o.k.. Auch die Lizenzbedingungen fand 
ich gut und praktikabel. Ein OS ist auch mit dabei. Man kann es auch 
einige Zeit kostenlos testen. Ich konnte die Testzeit 3 mal verlängern!
Es lässt sich komfortabel und fix installieren und man ist schnell 
einsatzbereit. Allerdings kein "Zusammenklickern" der Hardware.

Ich meine aber, das ST sowas unter "STM32Cube" anbietet. Wäre dann halt 
nicht integriert, aber "klickibunti" :-)


Gruß
Ralf

von Harry L. (mysth)


Lesenswert?

Atollic Truestudio (von ST aufgekauft) ist kostenlos und arbeitet 
nahtlos mit CubeMX zusammen.

von OhWeia (Gast)


Lesenswert?

Ralf schrieb:
> Ein "Zusammengeklicker" der Hardwareconfig eines STM32 habe ich bisher
> nur bei KEIL (uVision) gesehen. War ganz praktisch, allerdings sind
> Lizenzkosten und Lizenzbedingungen bei KEIL nicht akzeptabel.

Gibt auch noch Arduino for STM32 und Bluepill Boards mit 64k 
Flash/16PWM/etc/etc.

Und gegen solche Tools ist nichts einzuwenden, meiner Meinung nach.
Ein Beispiel, wofür ich es kürzlich brauchte:
Im Garten ist eine kleine Solaranlage, weil durch den Hof kann/darf ich 
nicht so leicht ein Kabel legen.
Für die Beleuchtung wollte meine Frau schon lange einen Timer, weil sie 
das Ausschalten auch mal vergisst und dann immer an tiefentladene 
Batterien denken muss.
Der Tiefentladeschutz hilft nur den Batterien - nicht ihr...

Bluepill $2
4x ULN2803 und 7805 aus einer Schrottplatine geholt
20 Meter Silikon-LED Schlauch war schon verlegt, nur eben mit Schalter.
1x Aussentaster im Baumarkt (Restposten) 3,50€.

Mit dem Arduino für STM32 dann in ca. 30 Minuten 9 PWM erzeugt (10m, 5m, 
5m) und einen Sanft-Start-Stopp implementiert.
Ideen gibt's noch ein paar, aber da kam ich noch nicht zu.

Klar könnte ich auch einen tiny2313 oder einen MSP430 nehmen, in 
Assembler Soft-PWM implementieren, eine Platine machen, ...
Für viele Sachen reicht das aber so wie es jetzt ist dicke.

von UB8820M (Gast)


Lesenswert?

Seit wenigen Tagen kann "STM32CubeIDE" von ST runtergeladen werden. Wie 
Atollic auf Eclipse basierend, aber nur noch für ST-MCUs gedacht.

Da gibt es jetzt die V1.0.0 der IDE. Benutzt die jemand, oder hat die 
schon jemand ausprobiert?

Also, ich kann CubeMX nicht (wie unten im Werbevideo gezeigt) aus der 
IDE starten. Habe auch in der Kürze nicht gleich gefunden, wie die 
GIT-Plugins zu installieren sind.

ST bewirbt die CubeIDE auf Youtube:
https://youtu.be/eumKLXNlM0U

von PostalDude (Gast)


Lesenswert?

> aber nur noch für ST-MCUs gedacht

Da bleib ich doch bei der IAR Embedded Workbench.

Es gibt mittlerweile sogar eine Version fuer RISC-V.

von Stefan F. (Gast)


Lesenswert?

Ich habe keine Lust, jedes Jahr eine neue IDE zu probieren, nur weil da 
das eine oder andere Pillepalle-Feature drin ist oder die Farben 
moderner sind.

Also nein, ich habe diese IDE noch nicht ausprobiert.

von Bimbo. (Gast)


Lesenswert?

Die IDE unterscheidet sich kaum von der bisherigen Atollic. Ansonsten 
Eclipse halt.

von UB8820M (Gast)


Lesenswert?

So, ich hatte mich wohl bei der Installation vertan, und habe nochmals 
die IDE 1.0.0 neu installiert.

Die Integration von (Cube-)MX in der (Cube-)IDE läuft jetzt einwandfrei. 
Die Git Integration lässt sich aus dem Eclipse Marketplace 
nachinstallieren.

Da ich zunächst in meinen Hobby-Projekten nur STM32 verwende, werde ich 
die CubeIDE für die nächste Zeit benutzen.

:-)

von Stefan F. (Gast)


Lesenswert?

UB8820M schrieb:
> Da ich zunächst in meinen Hobby-Projekten nur STM32 verwende, werde ich
> die CubeIDE für die nächste Zeit benutzen.

Mal sehen, wie lange. Ich wette, dass innerhalb der nächsten 3 Jahre 
wieder eine "neue" IDE angeboten wird. Vermutlich zusammen mit einem 
neuen HAL Framework und einem noch "intelligenteren" Codegenerator, der 
das RAM noch schneller voll macht und die CPU Takte verbraucht.

Irgendwie muss man ja die 400 MHz Boliden unter Volk bringen.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Stefanus F. schrieb:
> Irgendwie muss man ja die 400 MHz Boliden unter Volk bringen.

Dies jetz auch schon für 5€ statt 20€ gibt -> STM32H750
Bisher hab ich diese Rechenleistung aber noch nicht gebraucht obwohl ich 
beim LED Panel Display kurz davor war.
Aber du weist ja, dass ich die HAL, wie du, eh nicht nutze.

Allerdings haben die alle einen Haken, eine ganze Pinseite ist um 1 nach 
links/rechts verrutscht wodurch die Pinkompatibilität zu den F1/2/3/4 
fürn Poppes ist.

von Bimbo. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Mal sehen, wie lange. Ich wette, dass innerhalb der nächsten 3 Jahre
> wieder eine "neue" IDE angeboten wird. Vermutlich zusammen mit einem
> neuen HAL Framework und einem noch "intelligenteren" Codegenerator, der
> das RAM noch schneller voll macht und die CPU Takte verbraucht.

Deswegen nur mit Registern programmieren!

von m.n. (Gast)


Lesenswert?

Mw E. schrieb:
> Allerdings haben die alle einen Haken, eine ganze Pinseite ist um 1 nach
> links/rechts verrutscht wodurch die Pinkompatibilität zu den F1/2/3/4
> fürn Poppes ist.

Dafür ist er kompatibel zum F7xx.
Um diese Teile kommt man nicht herum, wenn man hohe Geschwindigkeit und 
viel internes RAM braucht (und nicht viel Geld ausgeben möchte).

von Harry L. (mysth)


Lesenswert?

Der Installer von CubeIDE hat Probleme mit Leerzeichen im 
Instalations-Pfad.

In die Falle sind schon Einige getappt.

Ansonsten läuft das Teil hier ziemlich rund (unter Linux)

von Stefan F. (Gast)


Lesenswert?

Harry L. schrieb:
> Der Installer von CubeIDE hat Probleme mit Leerzeichen im
> Instalations-Pfad.

Schon wieder, bzw. immer noch?

Wie lang ist es her, dass Leerzeichen in Verzeichnisnamen zugelassen 
wurden? Ich verstehe das nicht.

von Total genervt (Gast)


Lesenswert?

Schon wieder, oder immer noch?
Kann der Stefan nicht einfach mal die Finger still halten, wenn er 
nichts zu sagen hat?

@Steafan: https://www.youtube.com/watch?v=5KT2BJzAwbU

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

m.n. schrieb:
> Mw E. schrieb:
>> Allerdings haben die alle einen Haken, eine ganze Pinseite ist um 1 nach
>> links/rechts verrutscht wodurch die Pinkompatibilität zu den F1/2/3/4
>> fürn Poppes ist.
>
> Dafür ist er kompatibel zum F7xx.

Ja mit den F7 wurde das "Problem" eingeführt.
Da das ganz schöne Schluckspechte sind brauchte es einen Versorgungspin 
mehr.

Harry L. schrieb:
> Der Installer von CubeIDE hat Probleme mit Leerzeichen im
> Instalations-Pfad.

Nich im Ernst?
Diese Zeiten sollten eigentlich schon lange vorbei sein.
Aber das bestätigt mal wieder meine Meinung über die Kompetenz der 
Programmierer bei ST ;)
Schließlich haben die ja auch den HAL verbrochen.

von Walter T. (nicolas)


Lesenswert?

Mw E. schrieb:
> Aber das bestätigt mal wieder meine Meinung über die Kompetenz der
> Programmierer bei ST ;)

CooCox hat/hatte ein ähnliches Problem. Ich würde deshalb eher Eclipse 
als Ursache vermuten.

: Bearbeitet durch User
von Thorsten S. (thosch)


Lesenswert?

Auf der Tools Seite bei ST ist unter Atollic TrueStudio übrigens zu 
lesen:
NRND (Not Recommended for New Designs)
-> This product is now replaced by STM32CubeIDE.

https://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-ides/truestudio.html

Die neue CubeIDE ersetzt also das TrueStudio, dessen Zukunft damit wohl 
bereits Geschichte sein dürfte.

Zitat von der TrueStudio Seite:
There will be no new releases of TrueStudio.

: 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.