Hallo, habe heute ein STM32 Discovery board bekommen. Jetzt setze ich mich gerade ein wenig damit auseinander. In den Manuals werden 3 Compiler beschrieben: IAR-Workbench MDK-ARM und Atollic TrueSTUDIO welchen würdet ihr mir empfehlen? Und mit welchem habt ihr gute erfahrungen gemacht. Ich möchte einen Kostenlosen einstieg mit möglichst wenigen Einschränkungen. Vielen Dank für eure Tips. Sebastian
>welchen würdet ihr mir empfehlen? Und mit welchem habt ihr gute >erfahrungen gemacht. Ich möchte einen Kostenlosen einstieg mit möglichst >wenigen Einschränkungen. Yagarto plus Eclipse. Aber viel Spaß beim einrichten von OpenOCD usw;)
Ich hatte mich jahrelang damit abgemüht, Tritt zu fassen in der ARM/Cortex Welt. ARM habe ich begraben. Und auch den Cortex wollte ich entsorgen, als ich mit IAR wie durch ein Wunder meinen ersten Erfolg verbuchen konnte. MDK-ARM und Atollic TrueSTUDIO kenne ich nicht. Aber mit CrossWorks von Rowley Associates habe ich ernsthaft gearbeitet. Dieser basiert soweit ich weiss auf CodeSourcery. Für meinen Geschmack war CrossWorks einfach zu bunt. Der IAR ist ganz nach meinem Geschmack. Keine Ahnung was ich mache, wenn ich an die 32kB stosse. Langer Rede kurzer Sinn: den IAR kann ich empfehlen.
Schaue in den Artikel STM32 Da stehen viele Möglichkeiten drin. http://www.mikrocontroller.net/articles/STM32#Programmierung
Wenn ich meine Möglichkeiten jetzt richtig sehe habe ich die wahl zwischen: -viel Einarbeitung und isntallation bei yagahto -32k grenze bei IAR (dafür aber professionelle umgebung) oder -Atollic (nicht alle funktionen und nur ein debugger aber dafür keine Codegrenze) Zu mdk-arm hab ich bisher noch garkeine Meinung hat auch eine codegrenze. IAR hab ich jetzt mal den Preis der vollversion gesehen... lassen wir dieses Thema ;) Ich bin gerade dabei mal Atollic zu testen. Ein Blinklicht hab ich früher schon mal hinbekommen. Sebastian
Hi Sebastian, Also ich habe Attolic, MDK/Keil, IAR, Crossworks aus probiert, habe aber dann eine Woche investiert um mit dem Forum und viel lesen Eclipse, mit Codesourcery lite und meinen J-Link zu laufen zu bekommen. Ich muss dazusagen ich bin Eclipse verwöhnt/fan. Meiner Meinung nach kannst du mit IAR oder MDK/Keil nix falsch machen. Das sind beides standart Editoren mit vernünftiger Bedienung und guter Unterstützung. IAR und Keil sind für mich ähnlich was den Editor und Debugger angeht. IAR hat bei dem 6er noch ein paar mehr Features im Debugger was den Energieverbrauch angeht. Musst du wissen ob du das brauchst. Attolic ist für mich ausgeschieden wegen der ST-Link pflicht, da ich einen J-Link habe und auch andere Cortexe benutze als den STM32. Ansonsten Eclipse ohne viel Konfigurieren. Wenn man sich einmal die Arbeit gemacht hat mit Eclipse ist das echt super und man lernt noch was über die Basics des Controllers. Mit dem neuen ARM Plugin brauchst du nicht mal Makefiles schreiben, also das hält sich auch in Grenzen. Den Rest musst du entscheiden, wenn du Codeverfolständigung usw. was der Eclipse Editor so kann nicht brauchst. Dann nimm IAR oder Keil, die Entscheidung ist dann so wie das gelbe oder das blaue Hemd. Meiner Meinung nach sind das beides ausgereifte Werkzeuge, nur die Editoren finde ich schwach. Corssworks finde ich etwas gewöhnungsbedürftig, das basiert so halb auf dem Visual Studio 2010. Ich habe mich dort nur Schwer zu recht gefunden was die Einrichtung usw. anging. Ansonst ist das auch keine schlechte IDE, nur der Editor, stört mich :), wenn ich STRG+LEER drücke erwarte ich eine Liste mit Befehlen. (nur ein Bsp.) MfG Tec
Eigentlich ist aber nicht nach "welchem Compiler für STM32" gefragt, sondern nach einer Entwicklungsumgebung. Compiler: Sicher gibt es ein paar Unterschiede zwischen GNU, ARM/Keil und IAR. Ist aber nichts dramatisches. Der freie Compiler aus GNU-Quellen (enthalten in CS G++ lite, Yagarto, DevkitARM...) ist ordentlich. Hat man erstmal die Zusammenhänge verstanden, ist der Hersteller des Compilers nicht mehr so wichtig. Habe mit IAR sehr wenig, ARM/Keil wenig und mit dem GNU Compiler viel gemacht, bisher nichts gefunden, was nicht angepasst werden konnte. Viele Hersteller, auch STM, bieten inzwischen Beispielcodes, für die drei Compiler (gelegentlich GNU "versteckt" hinter Attolic, Codesourcery, RIDE, Crossworks). Arbeite selbst bei ARM-Entwicklungen fast ausschließlich mit Eclipse/makefiles/GNU-Compiler/OpenOCD. Kann aber für den Einstieg die Evaluierungs-Version von MDK-ARM/uVision empfehlen (Beschränkung bei Compiler/Debugger/Simulator auf 32kB(?)). Nicht wegen des Editors, Compiler oder Debuggers, die gibt es woanders genauso gut oder besser, sondern wegen des integrierten Simulators, der auch Peripherie (z.B. Interrupt-Controller, UART, Timer, GPIO) simuliert. Damit kann man die ersten Schritte ganz ohne Hardware machen (kein Flashen, keine In-System-Debugging...). Hat man auch hier die Zusammenhänge verstanden, bietet uVision auch die Möglichkeit einer 'sanften' Migration zu freien/kostenlosen Tools, sofern man sich die Vollversion nicht leisten kann oder will. Die IDE wird beibehalten und statt des Compilers von ARM der GNU-Compiler genutzt, den uVision ebenfalls unterstützt (Beschränkung weiterhin bei Debugger/Simulator). Später kann man dann auf Entwicklungsumgebungen mit netterem Editor (z.B. Eclipse evtl. mit den Attolic-Erweiterungen) und unbeschränktem In-System-Debugging umsteigen (z.B. Eclipse-Debug-View + OpenOCD od. JLINK-gdbserver).
Hallo, ich besitze ebenfalls dieses Board, und habe mir IAR installiert. Jedoch bekomme ich keinen Zugriff auf den ARM. Habe ST Link eingestellt, jedoch wird das Board nur als Massenspeicher erkannt, wenn ich es an den USB Port meines Rechners hänge. Sind da noch irgendwelche Treiber erforderlich? VIele Grüße paule
Dass er ihn als Massenspeicher erkennt, ist schon richtig. Zusaetzliche Treiben sind nicht erforderlich.
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.