Layout

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

VIM878 HT1621B Display Teil 2

Die Platinen von Oshpark (18.08.2016) und Elecrow (16.08.2016) sind da, es kann losgehen mit dem Displaymodul.

oshpark_elecrow
links oshpark, rechts elecrow

Der silkscreen ist leider verpfuscht. Ich habe aus Bequemlichkeit die Eagle-Dateien geschickt, so dass der Hersteller auch die tnames (Kurznamen z. B. JP1 o.ä.) mitgedruckt hat, eigentlich  sollten es nur die tvalues (Bauteilewerte) und die tplaces (Umrisse der Bauteile) sein.

Es folgt die teilbestückte Platine, am schwierigsten ist die Bestückung des HT1621B, wobei nicht das Löten (mit breiter meißelförmiger Spitze, viel Flußmittel und zügigem Überstreichen) schwierig ist, sondern die richtige Platzierung und Fixierung des Chips:

teilbestückt
teilbestückt

 

teilbestückt
teilbestückt

 

vollbestückt
vollbestückt

 

vollbestückt
vollbestückt

 

vollbestückt
vollbestückt

 

in Funktion
in Funktion (Charakterdarstellung)

 

in Funktion
in Funktion (Zähler)

Leider habe ich erst jetzt gesehen, dass schon jemand vor mir praktisch genau diese Platine gebaut hat:

TWI Display at www.akafugu.jp

Schade, das wäre eine gute Inspiration gewesen.

VIM878 HT1621B Display Teil 1

Seit einiger Zeit gibt es bei Pollin ein LC-Glas zu kaufen, das VIM878 von Varitronics:

www.pollin.de LCD_Modul_VARITRONIX_VIM878

Der HT1621B reicht gerade noch aus, um dieses Glas mit 4 Commons und 32 Segmenten anzusteuern.

Besonders erklärungsbedürftig ist die hierfür konstruierte Hardware nicht, man schließt alle COM-Anschlüsse des HT1621B an die passenden Pins des Displays. Die Segmente 1 .. 16 werden an die Segmentanschlüsse 0 bis 15 des HT1621B angeschlossen, die Segment 32 bis 17 an die Segmentanschlüsse 16-31.

Letzteres ist bewußt in umgekehrter Reihenfolge angeordnet, um die Programmierung zu vereinfachen. Durch die gespiegelte Reihenfolge werden nämlich die Segmente im Speicher des HT1621B in derselben Reihenfolge angeordnet wie die Segmente 1 bis 16. Näheres verrät das Datenblatt des VIM 878 bei analytischer Betrachtung. 😉 (siehe auch meinen Beitrag vom 25.06.2016)

Dieses Mal habe ich auch noch den Buzzer-Anschluß (JP2) mit vorgesehen, für alle Fälle.

Schaltplan:

Schaltplan
Schaltplan

Layout:

Layout
Layout

(bestellt am 31.07.2016 bei oshpark -3 Stück- und am 02.08.2016 bei elecrow -10 Stück-)

STM32F030F4P6 breakout neues Layout

Gestern habe ich die neuen Platinen für den STM32F030-breakout erhalten. An der Schaltung wurde nichts geändert, lediglich das Layout wurde verbessert.

das neue Layout für den STM32F030-breakout
das neue Layout für den STM32F030-breakout

Einen kleinen Schönheitsfehler im Bestückungsdruck gibt es aber auch hier: C3 muss ein 100nF Kondensator sein, C1 ein 4,7µ Kondensator, denn der Stützkondensator sollte näher am Pin sein. Im Schaltplan ist es genau umgekehrt gezeichnet.

HT1621B breakout universelle Adapterplatine 2

Die Adapterplatine kam schließlich Mitte August an, wurde bestückt und kurz getestet. Leider geriet das Projekt etwas in Vergessenheit. Hier jetzt das erste Bild von der „Hochzeit“ mit einem WD-T1703L. Zum allerersten Testen wurden lediglich die Commons und drei Segmentpins angeschlossen. Infos zum Display WD-T1703L finden sich hier: WD-T1703L-7ELNa

HT1621B und WD-T1703L
HT1621B-breakout und WD-T1703L

Weitere Bilder und Testergebnisse folgen später.


Ergänzung:

Der Aufbau wurde noch etwas geändert:

  • Lochrasterplatte fiel weg
  • aus R=10 kOhm (103) wurde R=1 kOhm (102) für besseren Kontrast

Die Verkabelung der Beleuchtung mit zwei weißen China-3mm-„strawhat“-LED ist auf den Bildern noch sehr provisorisch, auch das habe ich später geändert:

Gesamtaufbau
Gesamtaufbau

Gesteuert wird mit einem chinesischen Arduino-Nano-Clone (im Hintergrund zu sehen) und einem Arduino-Sketch.

Beispiel 1
Beispiel 1

 

Beispiel 2
Beispiel 2

 

Beispiel 3
Beispiel 3


Weitere Bilder:

Beleuchtung
Beleuchtung

 

Beleuchtung
Beleuchtung

 

geänderter Widerstand
geänderter Widerstand

Projekt: STM8S105 6×8 Bits Output Teil 1b

Heute ist der Auftrag zur Fertigung der Leiterplatten an ITEAD herausgegangen.

Layout
Layout

Schaltplan
Schaltplan

Das Projekt ist eine statische LED-Ansteuerung für 6* 8 LED für einen ca. 37 cm großen Weihnachtsbaum aus Holz. Die neue Platine selbst ist 9 cm x 2,5 cm groß und verschwindet komplett hintern Weihnachtsbaum. Es gibt sieben weiße „Kerzen“, die heftig flackern sollen und bunte Lichterketten mit insgesamt 37 LED, die durch gelegentliches, zufälliges An- und Ausgehen die Bewegungen von Ästen simulieren sollen.

HT1621B breakout universelle Adapterplatine 1

Der HT1621B ist derzeit günstig (0,68 €/Stk. bei meiner Bestellung im Juni) bei Ebay zu bekommen. Hierbei handelt es sich um einen seriell ansteuerbaren LCD-Controller mit max. 4 Commons und max. 32 Segmenten.

Innenschaltung aus dem Datenblatt
Innenschaltung aus dem Datenblatt

Damit ist er ideal brauchbar für die LCD-Gläser aus dem LCD/LED-Sortiment von Pollin. Das Gehäuse ist etwas gewöhnungsbedürftig für einen Bastler, denn es ist ein SSOP48 mit 0,64 mm Pinabstand.

HT1621B pinout aus dem Datenblatt
HT1621B pinout aus dem Datenblatt

HT1621B
HT1621B

Leider gibt es bei Ebay dafür keine fertigen Adapter. Deshalb habe ich mir heute bei ITEAD eine selbstentworfene, universelle, auf der Applikationsschaltung aus dem Datenblatt

Applikationsschaltung aus dem Datenblatt
Applikationsschaltung aus dem Datenblatt

basierende Adapterplatine bestellt. Sämtliche Common-Anschlüsse und sämtliche Segmentanschlüsse wurden im DIL-Raster herausgeführt. Die serielle Schnittstelle zum Mikrocontroller wurde Arduino-like quer zur DIL-Reihe angeordnet. Damit ist die Platine auch Steckbrett-tauglich. Die Leitungsführung ist nahezu vollständig einseitig. Damit ist sie prinzipiell auch im Heimlabor herstellbar, wenn man die Chemie gut beherrscht. (Also nicht von mir. 😉 ) Um die Preisstufen von ITEAD auszulasten, wurden die Produktionsdaten als zweifacher Nutzen erstellt.

HT1621B breakout Layout
HT1621B breakout Layout

STM32F030 eigenes breakout-Board

Heute ist die Bestellung an ITEAD herausgegangen bezüglich des selbstentwickelten Boards.

Bestellung
Bestellung

Technisch ist es nicht optimal und nicht sehr gut, aber zumindest eine funktionierende Variante. Ich hatte keine Lust mehr, das noch zu verbessern. 😉 Wenn sich im Umgang damit weitere Anforderungen ergeben, werde ich das Design ohnehin noch mal ändern. Außerdem wollte ich unbedingt das mit dem „Nutzen-erstellen“ mal ausprobieren, es ist also ein 5 cm x 10 cm Board mit 6 Einzelstücken drauf. Jetzt bin ich gespannt auf das Ergebnis.

Schaltplan breakout board STM32F030
Schaltplan breakout board STM32F030

Das Layout mit mehreren Einzelplatinen
Das Layout mit mehreren Einzelplatinen

 

Meine Prämissen:

Die Platine sollte nicht größer als ein 20 poliger TSSOP-DIL-Adapter sein. (Ist sie jetzt doch aufgrund des für die Auftrennung notwendigen Platzes zwischen den einzelnen Platinen und der Umgehung der Pinreihe auf beiden Seiten mit je einem Signal sowie der links und rechts zu weit hinausgeschobenen Bauteile, siehe Layout – sicher noch optimierungsbedürftig)

VDDA sollte wahlweise vom DIL-Pin oder aus VDD kommen. Deshalb ist hierfür eine Lötbrücke vorgesehen. Die Gewinnung aus VDD ist nicht datenblattkonform, denn dieses fordert, dass VDDA vorher da ist und stets höher oder gleich VDD sein soll.

Eine weitere Lötbrücke ist gedacht für die Auswahl des Bootmodus. (boot0 high or low) Über den notwendigen Wert der Widerstände bin ich mir noch unsicher. Reicht ein „weak Pullup/Pulldown“ oder müssen sie „strong“ (= mehr Stromverbrauch) sein?

Einen separaten SWD-Stecker habe ich aus Platzgründen bewusst nicht vorgesehen, da diese Signale problemlos über die DIL-Reihe abgreifbar sind.

Auf einen RESET-Taster habe ich aus Platzgründen verzichtet.  Mal sehen, ob ich das bereue. 🙂

Auf groundplanes (Eagle: Polygon) habe ich bewusst verzichtet, weil mit maximal 8 MHz keine wirklich problematischen Signale auf der Platine laufen. (obwohl ich mir gerade nicht mehr so sicher bin, ob das Weglassen klug ist)

Ich habe 1mm Platinendicke gewählt, weil so der Nutzen besser trennbar ist. (Hoffe ich zumindest)

Auf das Onlinestellen der Eagle-Dateien verzichte ich mal, da das Design noch lange nicht ausgereift ist.