mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik STM32F4xx Projekt aufsetzen 'Klassisch' oder über STMCube


Autor: Lion (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hallo Zusammen,

ich bin aktuell dabei ein Projekt für den STM32F4xx aufzusetzen und 
stehe im Moment ein wenig an dem Scheidweg das CMSIS klassisch 
anzubinden (also im Endeffekt die Peripherie per Hand in den MSPs zu 
konfigurieren) oder das alles über das STMCube laufen zu lassen und mir 
dadurch einiges an Handarbeit zu sparen.

Könnt ihr hier aus der Praxis eine Empfehlung geben was am Ende der 
bessere Weg ist?

Ich sehe das STMCube als recht komfortabel und erste kleinere Versuche 
waren auch schnell erfolgreich. Ich habe aber das Gefühl dadurch das 
Verständnis zu dem zu verlieren was im Hintergrund genau abläuft. 
Generell wenn mal was schief läuft u.U. recht problematisch.

Die händische Methode erscheint mir als wesentlich aufwendiger und 
wahrscheinlich sogar Fehlerträchtiger, aber man behält im Auge was genau 
passiert.

Vielen Dank für eure Meinungen!

Autor: Horst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
To HAL or not to HAL oder so hieß der Thread von vor ein paar Tagen. Da 
wurde es alles ausdiskutiert.
Musst du mal suchen.

Ansonsten, Cube HAL ist grauenhaft und ich kanns niemandem empfehlen.

Autor: Dennis X. (debegr92)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde an deiner Stelle die Grundkonfiguration einmalig mit Cube 
machen um dann auf dem generierten Code aufzubauen.
Es wird auch nur Code erzeugt und du kannst dir genauso anschauen was da 
passiert. Du verlierst eigentlich nicht den Überblick.

Autor: hp-freund (Gast)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Horst schrieb:
> Ansonsten, Cube HAL ist grauenhaft und ich kanns niemandem empfehlen.

Das negiere ich gleich Mal.

Vom Blinky über USART bis zum HTTPD, alles in kurzer Zeit mit wenig 
Aufwand erledigt.
Auch wenn der µC wechselt, was will man mehr?

Wer wissen will was genau passiert, folge einfach den HAL_ Funktionen in 
die Tiefe.

Wenn man sich an ein paar einfache Regeln hält ist auch ein Erweitern 
des Projekts durch mehrfachen Aufruf von CubeMX möglich.

Habe ich gerade mit einem Webserver in Arbeit.

RTC hat gefehlt?
Kein Problem. In CubeMX einschalten, ein paar zusätzliche Zeilen in die 
.c Datei und in die .shtml und schon ist die Uhrzeit auf der Webseite.

Man kann aber auch Datenblätter und Manuals wälzen...
...wenn man will ;-)

Autor: Dennis X. (debegr92)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich wollte gerade schon alles markieren und +1 darunter schreiben... Ich 
kann mich hp-freund nur anschließen!
Falls du Überblick brauchst einfach den Funktionen folgen du kannst dir 
ja trotzdem alles anschauen.

Autor: Bernd L. (mikro-kontrolleur)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für Hobby gut geeignet. Professionell in einer Firma kann ich es nicht 
empfehlen. Alleine schon wegen der komischen Updatepolitik.

Autor: dasrotemopped (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
jedes Bit selber im Kopf haben zu müssen und dann auch noch selbst im uC 
kippen zu lassen hat mich beim AVR viel Zeit gekostet, bei den SAM-D ist 
es dann zu umständlich geworden. Durch CubeMX kann ich mich auf die 
Aufgabe konzentieren und muss nicht alle Abhängigkeiten prüfen wenn mal 
was nicht geht. CubeMX ist natürlich nicht fehlerfrei, wird es 
warscheinlich auch nicht. Aber das ist der eigene Code ja auch nicht 
wenn man ehrlich ist. Und CubeMX als exotisch abzutun kann auch nicht 
richtig sein. Da gibt es im Konzept doch zu viele Ähnlichkeiten zu 
Infineon Dave 4.

Ich würde nie wieder ohne so ein Konfigurationstool embedded 
programmieren wollen. Dem Einsteiger erspart es viele Frustmomente bis 
zum ersten Erfolgserlebnis und mit steigender Erfahrung nimmt es 
Routinearbeiten ab.

Gruß,

dasrotemopped.

Autor: proggen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Problem an Cube ist, dass man sich auf die mit gelieferte Libs gerne 
verlassen möchte aber elementare Dinge die in der alten StdLib 
funktioniert haben plötzlich verbugt sind... Also lieber die Zeit nehmen 
und den uC selber Konfigurieren und die StdPeripheralLib nutzen, wobei 
es auch da Bugs gibt. Halt ich zumindest so... Muss aber jeder selber 
wissen...

Have a nice day

Autor: ./. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ohne den ganzen alten Brei jetzt nochmal hochzukochen:

Mit HAL darfst Du alles 3x lesen, das Referenzmanual was
ueberhaupt geht, und die HAL-Doku/Sourcecode wie und
(entscheidend) welcher Reihenfolge und wie es dort benamst ist.

Nur Kinderprojekte purzeln aus dem Generator fehlerfrei heraus.
Den (nicht-)funktionierenden Rest darfst Du dann selber ausmisten.

Mir wuerde die Entscheidung da nicht schwer fallen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.