Entwicklungsboard

Prototype-Board STM8S003F3P6

Nach dem STM8S105 Prototype Board (siehe hier) folgt nun das STM8S003-Board. 

Auch hier wollte ich die Pins nach Möglichkeit nach Funktion herausziehen. Außerdem hatte ich noch einige RGB-LED im PLCC-Design herumzuliegen. Auch hier wird ein Resettaster vorgesehen, Quarz-Bestückung möglich, ein Encoder-Anschluss, I2C, Analog-Eingänge, eine serielle Schnittstelle und natürlich SWIM/NRES zum Programmieren.

Schaltplan
Schaltplan

Das Layout wurde diesmal zu oshpark geschickt, da kleine Layouts dort signifikant billiger sind.

Layout
Layout

Leider wurden bei der Produktion die Bezeichnungen für die Stiftleisten (value) nicht mitgedruckt. Das war mein Fehler, aus Faulheit habe ich die BRD-Datei geschickt, statt die Gerber-Dateien zu erstellen.

fertige, unbestückte Platine von oben
fertige, unbestückte Platine von oben
fertige unbestückte Platine von unten
fertige unbestückte Platine von unten
bestückte Platine von oben
bestückte Platine von oben
bestückte Platine von unten
bestückte Platine von unten

Prototype-Board STM8S105S4T6C

Ich hatte schon lange vor, mir ein Prototype-Board auf Basis eines STM8S zu schaffen. Da ich mit dem STM8S105 schon Übung hatte, (siehe Weihnachtsbaum) war dies der erste Kandidat dafür.

Die Anschlüsse sollten nach Funktion geordnet auf Stiftleisten herausgeführt werden. Eine Resettaste sollte vorhanden sein, es sollte die Möglichkeit bestehen, eine separate analoge Speisespannung zuzuführen und ein externer Quarz sollte bestückbar sein, I2C mit Pullups und mehreren Anschlüssen, eine serielle Schnittstelle, eine Display-Schnittstelle, SPI-, PWM-, und Analog-Ports sowie SWIM/NRES als Programmierschnittstelle.

Schaltplan
Schaltplan
Layout
Layout

Die Leiterplatten wurden bei Elecrow gefertigt, siehe Fotos. 

Eingang der unbestückten Leiterplatten von Elecrow
Eingang der unbestückten Leiterplatten von Elecrow
voll bestücktes Entwicklungsboard
voll bestücktes Entwicklungsboard

STM8S103F3P6 Entwicklungsboard Pollin

Pollin verkauft derzeit ein STM8S Entwicklungsboard:

Entwicklungsboard
Entwicklungsboard

Dieses Board ist mit dem STM8S103F3P6 ausgestattet:

stm8s103f3 Pinout
stm8s103f3 Pinout

Leider ist das eine etwas anders ausgestattete Version des STM8S im Vergleich zum weit verbreiteten STM8-discovery-Board. Das heißt auch, dass die meisten im Internet verfügbaren Programme angepasst werden müssen. Hinzu kommt, dass es drei verschiedene Compiler für die Prozessorserie von ST gibt. Nächste Erschwernis ist, dass in den Beispielen eine von ST verfügbar gemachte Firmware-Bibliothek benutzt wird. Diese ist allen auf der ST-Seite downloadbaren Beispielen beigefügt. Ein mit den genannten Eigenschaften versehenes tutorial für das discovery-Board findet sich unter benryves.com.

Für IAR gibt es deutlich weniger Beispiele, dabei ist auch diese Entwicklungsumgebung bis 8kByte-Flashspeicher frei, mit einem sehr guten Debugger ausgestattet, dem Hörensagen nach unheimlich gut im Optimieren und auch für wirklich große Projekte geeignet:

IAR embedded workbench
IAR embedded workbench

Benötigt wird weiterhin ein ST-Link/V2, den man sehr preiswert kaufen kann, allerdings nur in China und als Klon. Etwas teurer, jedoch nicht so teuer wie die Originale, ist der bei roboterbausatz.de erhältliche Klon:

Dieser ist offensichtlich 100% kompatibel, da ST die Schaltung freigegeben hat. So ist der Klon mit der Originalfirmware von ST versehen und kann auch alle updates übernehmen.

Ein Beispielprojekt, welches per timer-PWM mit einer RGB-LED durch die Farben fadet, ist hier zum download Demoprojekt verfügbar. Es basiert auf einem firmware-Beispiel für die timer von ST. Dieses wurde mit einer huetoRGB-Funktion aus einem Arduino-Buch erweitert, um Farbwechsel zu generieren.

Der Hardware-Aufbau auf einem kleinen Steckbrett ist trivial:

RGB-LED STM8S103F3P6 Steckbrett
RGB-LED STM8S103F3P6 Steckbrett