Hi Leute, ich habe für meinen ARM-Einstieg eine eher selten zitierte IDE mit dem Namen emIDE verwendet (www.emIDE.org). Die IDE ist klein, übersichtlich, schnell und ist/war für den ARM-Einstieg mit meinem STM32F4Discovery und meinem STM32F429I-Disco ziemlich gut geeignet. Allerdings gibt es seit 3 Jahren kein Update mehr für diese IDE und ich frage mich, ob Ihr mir als Hobbyist inzwischen ggf. eine andere IDE empfehlen würdet. (Bin Gelegenheitsprogrammierer, der sich aus Spaß an der Freud' in ARM eingelesen hat und Kleinprojekte damit realisiert - vom Temperaturverlaufs-Display bis zum Digital-Filter. Nix Dolles, aber eben auch nicht nur Blinky) Folgende Punkte sind mir wichtig bei einer IDE (most important first): - Kostenlos oder max. 50 EUR - Keine Code-Limitierung auf N Bytes (damit entfällt leider Keil) - Muß unter Win7 64Bit laufen - Hinreichend Doku im Internet und Support in Foren - Komfortables Coding (Code-Completion, Declaration- & Definition-Lookup, ...) - Gute Debugging-Unterstützung (optimalerweise mit Semihosting) - Stabil (= wenig Kinderkrankheiten) - Wird aktiv weitergepflegt - Dauert nicht ewig, bis die IDE gestartet ist - Gute Verwaltung von Projekten inkl. einfaches Kopieren - (nice to have:) GIT-Repository-Unterstützung Erfüllt Eure IDE viele der Anforderungen? Dann gebt mir bitte einen Hinweis darauf. Und wenn Ihr mir zusätzlich ein paar besondere Vorzüge (oder Schwächen) Eurer IDE nennt, würde ich mich ebenfalls freuen. Aber bitte keine Glaubenskriege hier - ich empfinde Threads mit Glaubenskriegen über IDE's als eher peinlich. Außerdem noch eine Bonus-Frage: - Würdet Ihr mir ein Segger J-Link EDU empfehlen? (einige schwärmen ja wärmstens davon) Viele Grüße Igel1
Hallo Andreas, bei der IDE kann ich Dir leider nicht helfen. Ich arbeite mit "CrossWorks for ARM" von Rowley. Kostet aber 150€. Ansonsten Sublime Text & Makefile. Kann über Plugins bequem erweitert werden. Mein bevorzugter Text-Editor - ob Windows oder Linux. Segger J-Link EDU ist bei mir im Einsatz. Ist jeden Cent wert. Kann ich nur empfehlen. mfg Olaf
@Olaf: Danke schon einmal für die Tipps. > Segger J-Link EDU ist bei mir im Einsatz. Ist jeden Cent wert. > Kann ich nur empfehlen. Höre ich auch von anderen - allein, ich verstehe bislang noch nicht, was daran so toll ist (wenn man - wie ich - fast nur mit Disco-Boards mit integriertem ST-Link/V2 arbeitet)? Viele Grüße Igel1
Olaf B. schrieb: > bei der IDE kann ich Dir leider nicht helfen. Ich arbeite mit > "CrossWorks for ARM" von Rowley. Kostet aber 150€. Gibt es als "Embedded Studio" von Segger mittlerweile kostenlos ("For evaluation and non-profit educational purposes only"): https://www.segger.com/embedded-studio.html > Segger J-Link EDU ist bei mir im Einsatz. Ist jeden Cent wert. Kann ich > nur empfehlen. Kann ich auch empfehlen. Der TO dürfte aber schon einen ST-Link haben, der läßt sich eventuell auch zu einem J-Link machen: https://www.segger.com/jlink-st-link.html
>fast nur mit Disco-Boards >mit integriertem ST-Link/V2 arbeitet)? Aus dem kannst du einen J-Link für STM32 machen! https://www.segger.com/jlink-st-link.html
Ich arbeite mit visualgdb (visualstudio).
Andreas S. schrieb: > Höre ich auch von anderen - allein, ich verstehe bislang noch nicht, > was daran so toll ist (wenn man - wie ich - fast nur mit Disco-Boards > mit integriertem ST-Link/V2 arbeitet)? Ich programmiere nicht nur STM32-Fx, sondern auch ATMEL SAMs, NXP LPCs. Der EDU kann mit allen ARM Cortex-M umgehen, die ich bis heute im Einsatz habe. Solltest Du Dir ein eigenes Board designen - ohne ST-Link - ist er ebenfalls sehr hilfreich. Musst Du nur JTAG oder SWD vorsehen. mfg Olaf
Ich programmiere einen XMC4500 mit einem onboard JLink und habe einen JLink EDU. Die 50€ finde ich komplett gerechtfertigt, bietet eigentlich alles was man will. Ich hab ihn mir mal gekauft um einen LPC auf einem Quadcopter aus zu lesen, lief unter linux (manjaro und fedora jetzt) problemlos. Im Endeffekt sind mir meine Zeit und Nerven einfach mehr Wert als mit irgendetwas anderem ewig herum zu scheissen. Sollte es etwas Open Source sein dann schau dir mal die Blackmagic Probe an, die STLinks kann man auch auf deren software umflashen.
Danke an alle, die mir hier Feedback gegeben haben! Die Sache mit CrossWorks / Embedded Studio scheint wirklich sehr interessant zu sein: erfüllt auf den ersten Blick all meine Wünsche. (Danke an Olaf und guest dafür) Und meinen ST-Link/V2 werde ich in der nächsten Zeit ebenfalls einmal flashen - auch das ist ein guter Hinweis! (Danke an guest und holger dafür) Viele Grüße Igel1
WinIdea open mit iTAG50 (letzteren kannst Du Dir entweder selber basteln oder bei Amazon für 50 EUR fertig gebaut und geflasht kaufen).
Atollic Truestudio ist kostenlos und hat kein Codebeschränkung mehr.
Auf Ruedigers Tipp hin habe ich mich auf der WinIDEA-Seite einmal umgeschaut - leider war auf die Schnelle keine Funktionsbeschreibung der IDE zu finden. Auch sonst fand ich etwas wenig Doku dazu im Netz. Ein Youtube-Video der Debugging-Möglichkeiten war allerdings recht ansprechend. Danke für den Hinweis an Ruediger. Mit Atollic True Studio hatte ich früher meine allerersten STM32-Gehversuche gemacht. Gefiel mir auch recht gut. Ich mußte dann wegen der Codebeschränkung wechseln. Wenn diese Beschränkung inzwischen aufgehoben ist, wäre das in der Tat auch eine interessante Alternative. Danke für den Hinweis, Pete. Viele Grüße Igel1
Ich würde hier noch QT Creator mit "Bare Metal" Plugin einwerfen. + kostenlos und open source, wird garantiert auch die nächsten fünf Jahre noch weiterentwickelt + unterstützt jeden Compiler und damit natürlich auch GCC-ARM (kein code-size Limit) + cross platform (ohne Java!) + öffnet sich sehr schnell (bei mir in ca. 1s) + lässt sich sehr flüssig bedienen + Debugging ist sehr komfortabel mit OpenOCD oder st-flash möglich (öffnet sich automatisch, wenn konfiguriert) + unterstützt prinzipiell jeden GDB-Server, sofern zuvor manuell gestartet (auch J-Link) + Konfiguration eines OpenOCD-Targets ist absolut transparent + sehr gute Git-Integration (auch SVN, Mercurial, CVS, etc.) + Projekte lassen sich einfach kopieren/verschieben + exzellente semantische Analyse und Syntaxvervollständigung (wenn richtig konfiguriert) + excellente Unterstützung für CMake + transparente Konfiguration von Make-targets - man muss alles manuell installieren und konfigurieren (Compiler, OpenOCD) - noch kein Support für extended-remote Target (Black Magic Probe) - kein Elf-Parser für Syntaxanalyse, d.h. #defines müssen manuell im Projekt gesetzt werden (wenn nicht CMake genutzt wird) Der letzte Punkt ist meiner Meinung nach der große Vorteil von Eclipse-basierten IDEs. Die gibt es ja heute wie Sand am Meer und vielleicht wirst du ja auch mit Atollic oder SW4STM32 glücklich. Die werden jedenfalls beide direkt von CubeMX für Projekt-Export unterstützt (falls CubeMX dein Ding ist) und auch sonst findest du bei Beispielprojekten von ST wahrscheinlich die beste Unterstützung (von den kostenlosen IDEs) für Atollic. Für die gilt aber alle, dass es fraglich ist ob sie übermorgen noch kostenlos sind (war bei Atollic schonmal der Fall bzgl. einer "Lite-Version", wenn ich mich richtig erinnere) oder überhaupt noch weiterentwickelt werden (siehe z.B. Coocox). Es gibt auch noch die GNU-ARM-Eclipse Plugins mit denen du dir mit wenig Aufwand deine eigene IDE aus einem "normalen" Eclipse-CDT bauen kannst (mit OpenOCD inkl. Semihosting, usw.). Hier noch ein paar Links zur QT-Creator Konfiguration: https://www.bartslinger.com/cx-10-quadcopter/debugging-stm32-from-qtcreator/ https://devzone.nordicsemi.com/blogs/956/nrf52-debugging-with-qtcreator-on-windows/ https://morf.lv/starting-with-nrf51-ble-and-qt-creator https://github.com/LieBtrau/Aiakos/wiki/STM32L053-Nucleo-toolchain-setup
Pete K. schrieb: > Atollic Truestudio ist kostenlos und hat kein Codebeschränkung mehr. Andreas S. schrieb: > Wenn diese Beschränkung inzwischen > aufgehoben ist, wäre das in der Tat auch eine interessante Alternative. Aber es telefoniert nach Hause .... auch wenn du es nicht willst. Da hilft nur DSL-Modem oder LAN-Schnittstelle ausschalten.
Ich benutze VisualGDB weil: Support einwandfrei Legt mich nicht auf STM32 fest Eine Umgebung sowohl bei uC als auch bei PC Projekten Läuft einfach
Auch wenn es (anscheinend) nicht sonderlich beliebt ist möchte ich doch noch einen Klassiker ansprechen: Eclipse. Was werden jetzt die meisten denken? Dieses scheiß langsame Ding. Ja. Ich konnte schon viele (vielleicht zu viele) IDEs ausprobieren und Eclipse ist einfach da schon gut. Man kann alles machen was man will, im Endeffekt hat man nur einen sehr guten Editor für die Bare-Metal Programme (also gcc und die ganze Toolchain dahinter). Debugging finde ich klasse gelöst, auch hovers etc. sind einfach unerreicht. Es gibt ein gutes Plugin http://gnuarmeclipse.github.io/ speziell für deinen Einsatzbereich. Ansonsten nutze ich noch gerne Codeblocks, das kann man sich auch so umbiegen, damit alles funktioniert. Ist aber etwas "Fleißarbeit". Zum J-Link: Er funktioniert halt einfach immer. Flashen und Debuggen funktioniert gut, auch kann man die anderen "Tools" von Segger nutzen, die manchmal sehr schön sind (System Trace View, SWO output) etc. Ich mag den J-Link, man kann halt auch einfach so gut wie jeden Controller anstecken und das Ding funktioniert. Die ST-Links kann man alle kostenfrei zu nem JLink umflashen, auf der Seite von Segger gibts ein ST-Link Reflash Tool (oder so). Dann haste auch nen JLink Edu auf deinem Board!
Ein dickes Dankeschön an Christopher und Ui, die sich ganz besonders viel Mühe mit Ihrer Beschreibung "Ihrer" IDE gemacht haben. (was nicht heißt, dass die Hinweise von Frickelfritze und C.W. nicht ebenfalls sehr interessant für mich sind). Mit QT Creator habe ich schon C++ programmiert - ist also bereits auf meinem Rechner installiert. Dass es dafür ARM-Erweiterungen gibt, war mir gänzlich unbekannt. Werde ich mir unbedingt genauer angucken. Und ja, ja - das unvermeidliche Eclipse kenne ich aus dem Java Umfeld und mir war bekannt, dass viele damit auch ARM programmieren - ist mir aber ehrlich gesagt zu groß/langsam. Code:Blocks hatte ich irgendwann schon einmal beschnuppert - ist vielleicht wirklich noch mal wieder einen Blick wert. War nicht meine emIDE daraus hervorgegangen? Und yep - das mit dem Umflashen von ST-Link auf J-Link werde ich unbedingt einmal probieren - Danke auch nochmals für diesen Hinweis (war etwas weiter oben schon von zwei anderen Teilnehmern gekommen). In Summe bisher: dickes Dankeschön für die vielen Mühen, die Ihr Euch mit meiner Beratung macht! Ich hoffe, die Nachwelt wird sich auch an diesem Thread erfreuen. Viele Grüße Igel1
zum Thema Eclipse nochmal - auf der Messe bin ich über Somnium's DRT gestossen, die auf Eclipse basiert und über ein/zwei features verfügt, die ich noch nirgendwo Anders gesehen habe. Kannst Dir ja mal eine Trial Version runterladen... P.S. WinIdea kann "natürlich" auch ST Link und JLink. Interessanterweise unterstützen relativ wenige IDEs die Probe von P&E, die sich dadurch auszeichnet, dass sie Konnektoren für eigentlich alle auf dem Markt benutzten Konnektoren on board hat.
Ich hatte in meinem letzten Beitrag geschrieben: > Und yep - das mit dem Umflashen von ST-Link auf J-Link werde ich > unbedingt einmal probieren - Danke auch nochmals für diesen Hinweis > (war etwas weiter oben schon von zwei anderen Teilnehmern gekommen). Gesagt, getan - es funktioniert. Hier ein paar hilfreiche Links: // Flashen von ST-Link in einen J-Link: https://www.segger.com/jlink-st-link.html // Einrichtung des J-Link unter emIDE: http://emide.org/documentation_debugging.html // Peripheral Registers im Debugger von emIDE anzeigen: http://emide.org/documentation_debugging.html // Semihosting - notwendige Code-Erweiterungen: http://www.segger2.com/index.php?page=Thread&postID=4899#post4899 // Semihosting - die Kommandos: http://www.segger.com/admin/uploads/prod…01_JLinkARM.pdf // SWO nutzen: http://forum.segger.com/index.php?page=Thread&postID=1135#post1135 Viele Grüße Igel1
Ruediger A. schrieb: > zum Thema Eclipse nochmal - auf der Messe bin ich über Somnium's DRT > gestossen, die auf Eclipse basiert und über ein/zwei features verfügt, > die ich noch nirgendwo Anders gesehen habe. Kannst du auch verraten, welche das sind ?
Zum Thema EmIDE, das Projekt ist doch schon länger Tod und wird als EmBitz aktiv weiter entwickelt. Das Ganze basiert aif Codeblocks und funktioniert mit den ST-Devboards und dem STlink out-of-the box. Bin damit sehr zufrieden, da es quasi alles kann was man so braucht und kostenlos ist.. https://www.embitz.org/
Schorsch X. schrieb: > Ruediger A. schrieb: >> zum Thema Eclipse nochmal - auf der Messe bin ich über Somnium's DRT >> gestossen, die auf Eclipse basiert und über ein/zwei features verfügt, >> die ich noch nirgendwo Anders gesehen habe. > > Kannst du auch verraten, welche das sind ? z.B. dass Du bei FreeRTOS im angehaltenen Zustand den call stack jeder task sehen kannst, nicht nur derjenigen, die z.Zt. gerade dran ist. Das kann extrem hilfreich in deadlock Situationen sein. Die Anderen Sachen müsste ich mir noch etwas genauer ansehen (habe auf der Messe nur einen sehr flüchtigen Blick drauf werfen können).
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.