Hallo liebe Gemeinde,
nachdem ich meine armen 8-bit-Mikrocontroller (AVR) mehrmals komplett voll bekommen habe (und das nicht nur auf den Speicher bezogen), habe ich einen Blick auf die 32-bit MCUs gewagt. Wegen der Preis-/Leistungsverhältnisse neige ich eher zu der ARM-Architektur. Habe die ersten Tests mit einem STM32F4-Discovery-Board gemacht und fand meinen Gefallen daran.
Nun möchte ich mir eine, für die nächsten paar Jährchen, aktuelle ARM-Ausrüstung, schaffen. Also auch ein eigenes Board. MCU: STM32F746. Von den Resourcen her wird es vollkommen für meine Zwecke ausreichen (wenn nicht mehr).
Jetzt kommen die typischen Anfängerfragen, also entschuldigt mich im Voraus
1) Frage nach Bibliotheken: Man kann das Ganze mit der Standard Peripheral Library (SPL) programmieren oder auch mit Hardware Abstraction Layer (HAL) unter STM32CubeMX. Oder auch ohne eine Zuhilfenahme von Bibliotheken etc. Meine ersten STM-Programmierversuche fanden mit SPL statt. Nun die Frage: Wird SPL künftig gänzlich von der HAL abgelöst? Müsste ich unter Umständen gleich mit HAL beginnen?
2) Programmer: Ich würde ganz gern den STM genauso einfach wie meinen AVR programmieren. Auf dem Discovery-Board ist bereits ein STLINK drauf, bei welchem man auf den SWD zugreifen kann. Den kann ich doch eigentlich auch für mein Board "abzapfen" oder? Oder müssten vorher die Leitungen zum, auf dem Discovery befindlichen, STM32F4 gekappt werden? Mir missfällt etwas, dass die Programmiergeräte im Handel irgendwie nur die häßliche 20-polige Schnittstelle haben
Außerdem habe ich gesehen, dass die STMs wohl einen integrierten Bootloader über UART haben. heißt es dann, dass ich ganz normal über FTDI232->USB den Mikrocontroller flashen kann?
Welches (Programmier-)Gerät verwendet ihr selbst? Welche IDE?
3) Hier keine Frage, aber ein Paar Links, die ich gefunden habe. Werden hoffentlich solchen Anfängern wie mir paar Fragen beantworten können (Zusätzlich zu den Foren-Wikis).
http://www.olliw.eu/2013/stm32-this-and-that/
http://diller-technologies.de/stm32.html
4) Im Gegensatz zu einem 8bit-AVR kann man hier nun vernünftig externe Speicherbausteine anbinden. Während ich beim ersten alle Speicherzellen direkt ansprechen musste - sieht der STM die Speicherplatzerweiterung also als eine logische Erweiterung an? Sprich: Wird dem RAM- und/oder Flashbaustein automatisch ein Adressbereich zugeteilt?
Das war es (erstmal) an Fragen. Wer ebenfalls Anfänger ist und Hilfe braucht, kann diesen Thread gerne ergänzen. Und alle erfahrenen Leute und Leute mit guten Ideen sind natürlich herzlich willlkommen
Grüße,
Nik
Lesezeichen