STM32F4-Discovery - welche toolchain?

Gast #2707603
Lesenswert?

Hallo,
gestern kam das STM32F4-Discovery-Board an und heute habe ich die ersten 
eigenen Applikationen zum Laufen gebracht.
ST empfielt 4 toolchains:
Altium TASKING
Atollic TrueSTUDIO
IAR EWARM
Keil MDK-ARM
Zuerst habe ich mal die Freeware-Version von Atollic installiert.
Die ist ja sehr beschränkt, bzw. in der Vollversion unbezahlbar.
Wie handhabt ihr das? Gibt es auch freie Toolchains ohne Beschränkung?
Gast #2707627
Lesenswert?

Suchfunktion bedienen lernen, die Frage kommt mindestens
jeden 2. Tag.

>Gibt es auch freie Toolchains ohne Beschränkung
 Codesourcery/Mentor. Ist aber Kommandozeile.

Eclipse + geeignete Plugins.

Manche schwören auf CooCox (oder CoCoox?)
Gast #2707772
Lesenswert?

Die gleiche Frage wurde zuletzt in
Beitrag "ARM LPC Dev Kit von Steinert"
behandelt, mit gleichem Ergebnis ;-)
Allerdings mit dem Verweis auf ein Tutorial. Ich arbeite immernoch mit 
Atollic. Dort ist jetzt zwar der Code begrenzt, dafür stehen aber mehr 
Funktionen zur Verfügung die ich früher vermisst habe, etwa die Einsicht 
in Register und Timer.
Wenn du neu anfängst dann lieber doch etwas freies, sonst arbeitest du 
dich doppelt rein. Die Beispiele waren damals bei CooCox und Atollic 
nahezu identisch.
Gast #2745055
Lesenswert?

hi@all

ich hätte ein vmware image anzubieten

ubuntu + arm gcc toolchain + stlink + eclipse 3.7
zusätzlich als beispiel Projekt das aktuelle chibiOS die in 2 Threads 2 
LEDs auf einem STM32F4 DiscoveryBoard blinken lässt.

mit einem mausklick wird das projekt gebaut, geflasht und der debugger 
gestartet. Allerdings klappt bei mir das debuggen noch nicht so ganz. Er 
bleibt am anfang des Programms zwar stehen und ich kann in ruhe 
durchsteppen aber er bleibt nicht an meinen selbst gesetzten Breakpoints 
stehen :(
vielleicht hat jemand eine idee?

falls interesse am image besteht einfach eine email an
benwilliam (at) freenet.de und ich schicke euch dann den download link

wenn das debuggen auch funkioniert wie es soll und gößeres interesse 
besteht stell ich das image auf einen public space.
Gast #2766962
Lesenswert?

Nimm CooCox. Ist ausgezeichnet und wird super gepflegt. Vergiss 
Kauftools.Zu teuer. Die Free Versionen von den Kauftools kannst 
vergessen.
Die 32 KB Beschränkung ist mit einem fprint erreicht.
Und dann weinst du ;-)

Netbean oder Eclips sind gute, aber etwas schwieriger zu installiernede 
Pakete.Coocox passiert auch auf Eclips, macht aber alles von alleine. 
Hat eine unglaublich guten Codewizard, mit dem du deine gewünschten 
Funktionen
einbinden kannst. Dazu viele eigene Beispiele (keine von ST außer die 
Standard Libs)

Habe alle getestet über Wochen. Keil ist gut hat aber auch viele 
Schwächen.
Braucht ewig und der Debugger: naja... Schade ums Geld falls Vollverson 
notwendig.

Ich debugge lieber über die Uart/USB. Das Osci sagt das auch. Signale 
schauen
im SWD debugger Modus ganz anders aus als im real modus.

Und die tool Hersteller leben ja von der debug Funktion. Alle verwenden 
den gleichen GNU/GCC Compiler. Und die debugg funktion funktioniert eben 
nicht besonders gut.



Gruß
Gast #3459766
Lesenswert?

Hi Lueger,

du sagtest was über das debuggen über Uart, hast du da was eigenes 
geschrieben. Mich würde das sehr interessieren. Oder hast du die besagte 
Funktion mit der Coocox erstellt? Ich wäre dir sehr dankbar für eine 
Antwort.
Gast #3917037
Lesenswert?

ich weis der thread ist schon alt ..

meint er mit UART/USB evtl. den klassischen weg mit "printf" an den 
richtigen stellen? :)
so gänzlich ohne breakpoints und damit auch geringeres risiko von 
fehlerhaften timings aufgrund der stops der CPU.
Moderator Persönliche Seite #3917063
Lesenswert?

benwilliam schrieb:
> ich weis der thread ist schon alt ..

Allerdings. Deshalb melde ich meinen eigenen Beitrag nun selbst, damit 
ein Mod den Thread sperren kann.  ;-)

> meint er mit UART/USB evtl. den klassischen weg mit "printf" an den
> richtigen stellen? :)

Ich nehme an, dass der User "Lueger" gar nicht den Unterschied zwischen 
UART und USB-Kabel kannte. Man debuggt halt beim STM32F4-Disco-Board 
über USB. Manche (jüngere) Kandidaten können das nicht mehr von einer 
klassischen COM-Schnittstelle unterscheiden, denn heutige 
UARTS/COM-Schnittstellen sind ja auch nur noch "USB-Kabel" - okay, mit 
ein wenig Elektronik im Stecker... kaum bemerkbar.
Gast #3917091
Lesenswert?

> so gänzlich ohne breakpoints und damit auch geringeres risiko von
> fehlerhaften timings aufgrund der stops der CPU.

Die internen Breakpoints machen kein fehlerhaftes Timing. Entweder der 
ProgramCounter läuft auf einen Breakpoint, dann wird die Kiste 
angehalten. Oder der STM läuft mit der vollen Geschwindigkeit. Etwas 
anderes sind komplexe Watches. Wenn Du einen Watchpoint auf eine 
Variable setzt und mit einer bedingung versiehst "(i > 3)", dann muss 
die IDE bei jedem Erreichen des Watchpoints (bzw. Adressieren dieser 
Variable) deren Wert laden und auf die Bedingung überprüfen.

Gruß, Stefan

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