[STM32] Zweite Schritte

In der Theorie sah CubeMX gut aus, in der Praxis nicht wirklich … Vorallem generierte es Code mit einem Logikfehler, der dazu führte, dass die System-Clöcke (^^) nicht eingestellt werden konnten und der Controller stets in eine while (1) {} Error-Behandlungs-Loop hängen blieb. (hätte mein STLinkV2-Debugger nicht schon funktioniert, hätte ich den Fehler niemals gefunden!)

Zudem gefiel mir der Workflow zum Erstellen des Makefiles nicht und der Code war durchsetzt mit Kommentaren, wo man User-Funktionen, Methoden, Variablen reinschreiben darf … Das hat natürlich nur eine Relevanz, wenn man den Code nochmal mit CubeMX überarbeiten möchte, weil man z.B. eine neue Peripherie verwenden möchte, die man zuvor noch nicht konfiguriert hatte.

Das Kompilat ergab 20kB Code, ohne dass etwas gemacht wurde. Das erschien mir schon sehr aufgeblasen.

Und ein weiteres großes Manko: Viele Tutorial verwenden ST’s HAL nicht, weshalb man Code-Schnippsel ständig übersetzen müsste, worauf ich keine Lust habe.

Also flog der Kram mit HAL wieder raus und es wurde sauber ein Blinky-Projekt mit dem ARM-Eclipse-Plugin erstellt und das angepasst.

Erfreulicherweise geht die CMSIS-Standard-Library schon von einem externen 8Mhz Quartz aus, weshalb man nur noch ein Define auf 48MHz setzen musste und voila, der HSE (High-Speed-External-Clock) und die PLL sind richtig gesetzt.

Ich konnte die Firmware auch schon auf meinem „custom-Board“ testen … Es gibt ein git-Repository mit einem st-flash Tool, das zum Flashen über einen USB STLinkV2 (für 2EUR beim Chinesen) verwendet werden kann. Eine Anleitung gibt es hier

Auf den Seiten des ARM-Eclipse-Plugins folgte ich heute der Anleitung, wie man Eclipse mit OpenOCD konfiguriert und ich muss sagen, das funktioniert super! Endlich richtiges Debuggen mit Breakpoints und allem, was dazu gehört 🙂 Und das funktioniert sogar unter Linux 😉

Nach etwas Googeln konnte ich die ersten 2 PWM-Generatoren auf meinem Board in Betrieb nehmen … Morgen kommen die Schieberegister für das LED-Dot-Matrix-Display dran usw …

Morgen gibt es dann auch mal ein Foto von dem Dings, das ich überhaupt bastel …^^

Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s