Übersicht
Zunächst einmal muss ich sagen, dass ich ein echter Fan von diesen Mikrocontrollern bin. Dies kommt vor allem daher, dass die STM32-Mikrocontroller-Familie von ST Microelectronics eine sehr umfangreiche Serie mit gutem Preis-Leistungs-Verhältnis ist. Außerdem basiert sie auf 32-Bit ARM Cortex-M-Kernen und bietet umfangreiche Peripherie. Die Serie startet mit dem Ultra-Low-Power STM32L0-Segment, wo ein ARM Cortex-M0-Kern eingesetzt wird. Sie endet mit dem Hochleistungs-STM32F7-Segment welches auf dem ARM Cortex-M7-Kern basiert. Im folgenden findet ihr einen kurzen Überblick über das Angebot.
Neben dieser sehr breiten Palette an Optionen bieten sie hochwertige Entwicklungsboards an, die wirklich erschwinglich sind. In diesem Beitrag werde ich hauptsächlich über die Nucleo Boards sprechen. Ein Vorteil ist, dass sie entwickelt wurden um mit dem Arduino-Formfaktor kompatibel zu sein. Infolgedessen habt ihr auf viele verschiedene Erweiterungsboards Zugriff, die für Prototypen eingesetzt werden können. Auf dieser Seite findet ihr alle verfügbaren Nucleo-Boards.
Ein weiterer Vorteil ist, dass ein Online-Compiler zur Verfügung steht, der völlig unabhängig vom Betriebssystem ist. Dieser Compiler nennt sich ARM mbed. Für viele verschiedene Erweiterungen wie Displays, Sensoren und viele andere gibt es verschiedene Code-Schnipsel und Klassen (libraries). Ihr müsst diese nur in euer Projekt integrieren und könnt sie direkt einsetzen. Auf diese Weise ist die Programmierung vergleichbar mit der, die von Arduinos bekannt ist. Eine andere Möglichkeit ist, spezielle Softwarepakete wie z.B. SW4STM32 zu verwenden. Dieses basiert auf Eclipse, ist Open Source und für verschiedene Plattformen verfügbar. Diese Software enthält auch die STM32CubeMX-Software für automatische Code-Generierung und unterstützt Debuggen über den ST-LINK Debugger der auf jeden Entwicklungsboard integriert ist.
Nucleo Boards
Nucleo-32
Diese Entwicklungsboards haben 32 Pins, die direkt mit dem Arduino Mini Formfaktor kompatibel sind. Obwohl diese Boards so klein sind, haben sie auch den ST-LINK/V2 Debugger an Bord welcher euch ermöglicht, den Controller direkt, ohne separaten Programmer, zu programmieren. Zusätzlich gibt es für die Standalone Verwendung des ST-LINK Debuggers einen Header, der nicht bestückt ist. Mit dem könnt ihr Mikrocontroller programmieren, die zum Beispiel auf selbstgebauten PCBs aufgebaut sind. Das Nucleo-32 hat drei LEDs wobei eine vom Benutzer programmierbar ist, eine für den USB-Anschluss und eine fungiert als Power-LED. Wegen ihrer Form sind Nucleo-32 Boards besonders praktisch, wenn sie zusammen mit Breadboards verwendet werden. Diese Boards sind mit Cortex-M0 bis zu Cortex-M4 Prozessoren erhältlich, welche ein sehr breites Spektrum an Funktionalität bieten.
Nucleo-64
Wie in der Abbildung auf der rechten Seite zu sehen ist, hat dieses Entwicklungs-Board zwei unterschiedliche Anschlüsse. Die inneren Anschlüsse sind die zum Arduino Uno Rev. 3 Pinout passenden. Die äußeren Anschlüsse ermöglichen alle Pins des Mikrocontrollers zu verwenden. Diese Schnittstelle heißt Morpho-Erweiterung. Die Boards sind in zwei Teile geteilt. Der obere Teil ist der ST-LINK-Debugger/Programmer und kann für Standalone Zwecke abgetrennt werden. Das Nucleo-64 hat die gleiche Anzahl von LEDs als die 32-polige Variante und verfügt zusätzlich über eine User-Taste. Wie sein kleiner Bruder sind diese Boards auch mit Cortex-M0 bis Cortex-M4-Prozessoren erhältlich.
Nucleo-144
Diese Entwicklungsboards sind die größten Boards dieser Serie. Die bestückten Steckverbinder heißen ST Zio Steckverbinder und sind mit dem Arduino Uno Rev 3 kompatibel. Die anderen nicht bestückten Header nennt man Morpho. Mit diesem Anschluss sind alle 144 Pins des Mikrocontrollers verfügbar. Wie das Nucleo-32 Board hat auch dieses Board einen separaten Abschnitt für den ST-Link Debugger. Einige Boards dieser Serie haben einen bestückten RJ-45-Stecker für Ethernet Konnektivität. Darüber hinaus bietet das Board drei User LEDs und einen User Taster. Diese Boards sind mit Cortex-M3 bis zu Cortex-M7 Prozessoren erhältlich. Diese Serie ist das einzige ohne Ultra-Low-Power Mikrocontroller. Es sind nur die Mainstream und High-Performance Versionen verfügbar.
Fazit
Die Nucleo Entwicklungsboards sind besonders interessant für Entwickler, die von Arduino auf STM32-Mikrocontroller wechseln. Dies kommt daher, weil viele der Arduino-Shields auch für die Nucleo Boards geeignet sind. Wenn der ARM mbed Online-Compiler verwendet wird ist es sehr einfach, die ersten Schritte in diese neue Welt zu setzen. Alle Boards bieten Zugriff auf alle verfügbaren Pins der Mikrocontroller. Es gibt hier im Gegensatz zu anderen Entwicklungsboards keine Einschränkung. Zusätzlich zu all diesen Vorteilen der Nucleo Boards sind diese sehr günstig und fast überall verfügbar. Es gibt auch andere Entwicklungsboards von ST Microelectronics, die auch sehr interessant sind. Ihr findet diese auf dieser Seite.
Ich hoffe diese kurze Übersicht war für euch interessant. Gerne könnt ihr eure Meinung und euer Feedback in die Kommentare schreiben. Als nächstes plane ich ein Tutorial zu erstellen um euch den Einstieg in die Welt der STM32 Mikrocontroller zu erleichtern.