Forum: Mikrocontroller und Digitale Elektronik STM32 Minimalbeschaltung in Ordnung?


von Jens (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich wollt mal vorsichtig nachfragen, ob die im Anhang dargestellte 
Minimalbeschaltung so in Ordnung ist (bevor ich demnächst meine erste 
Leiterplatte damit mache)?

Danke fürs eventuelle drüberschauen!

von Gerd E. (robberknight)


Lesenswert?

Da sind mir zu wenig Kondensatoren. Schau bitte ins Datenblatt, Kapitel 
6.1.6.

Zwischen OSC_OUT und dem Quarz sieht ST einen Widerstand zur Begrenzung 
des Drive Level des Quarzes vor, siehe AN2867.

Du willst garantiert nie den integrierten Bootloader verwenden? Sonst 
würde ich BOOT0 zumindest separat rausführen und mit einem Pulldown-R 
versehen. Dann kommt man bei Bedarf einfach ran.

von Pete K. (pete77)


Lesenswert?

Du kannst auch auf den Quarz verzichten (Kap3.9):
System clock selection is performed on startup, however the internal RC 
8 MHz oscillator is selected as default CPU clock on reset. An external 
4-32 MHz clock can be selected, in which case it is monitored for 
failure. If failure is detected, the system automatically switches back 
to the internal RC oscillator. A software interrupt is generated if 
enabled. Similarly, full
interrupt management of the PLL clock entry is available when necessary 
(for example with failure of an indirectly used external oscillator).

von Jens (Gast)


Lesenswert?

Aber der STM32F303RE hat nur 4x VDD/VSS? AN VDDA habe ich Spule + 100nF, 
laut 6.1.6 sollen da noch 1uF dran. Aref+ habe ich direkt mit VDDA 
verbunden, ist das ok?

Tatsache der Widerstand auf OSCOUT ist auch im Discoveryboard drin - 
habe ich noch nie gesehen. Ich mache das mal nach und nimm da 220 Ohm.

von Gerd E. (robberknight)


Lesenswert?

Pete K. schrieb:
> Du kannst auch auf den Quarz verzichten (Kap3.9):

Naja, das hängt doch sehr von der Anwendung ab.

USB geht nicht ohne, nur die F0x2 und ich glaube welche aus der 
F41x-Reihe haben die spezielle PLL, die den Takt auf das USB locken 
können.

Bei schnellerem UART oder CAN empfiehlt sich ein Quarz auch sehr.

von Gerd E. (robberknight)


Lesenswert?

Jens schrieb:
> Aber der STM32F303RE hat nur 4x VDD/VSS?

ja, aber da wird noch ein 4,7µF gefordert, den sehe ich nicht.

> AN VDDA habe ich Spule + 100nF,
> laut 6.1.6 sollen da noch 1uF dran.

nein. 10nF || 1µF, nicht 100nF. Du hast Vdd und Vdda verbunden mit der 
Spule zum Filtern von Störungen dazwischen. Rechne aus ob das mit 1µF 
von der Frequenz passt. Du könntest z.B. auch 10nF || 4.7µF verwenden.

> Aref+ habe ich direkt mit VDDA
> verbunden, ist das ok?

Ja. Aber auch hier die 10nF direkt am Ref-Eingang nicht vergessen.

Es ist nicht unwahrscheinlich daß es auch ohne genauestes Einhalten der 
Vorgaben funktioniert. Aber ST schreibt das da nicht rein um die 
Kondensatorhersteller reich zu machen, sondern weil es eben 
Randbedingungen gibt, bei denen diese Kondensatoren nötig sind.

Wenn Du nicht ganz genaue Messreihen über Streuung, Temperatur, Alterung 
etc. machen willst, würde ich das wie im Datenblatt vorgegeben umsetzen. 
Erfahrungsgemäß erhöht das die Chancen Funktionieren im ersten Anlauf 
wesentlich. Hinterher weglassen ist immer einfacher als dazubauen.

von A.. P. (arnonym)


Lesenswert?

Gerd E. schrieb:
> Pete K. schrieb:
>> Du kannst auch auf den Quarz verzichten (Kap3.9):
>
> Naja, das hängt doch sehr von der Anwendung ab.
>
> USB geht nicht ohne, nur die F0x2 und ich glaube welche aus der
> F41x-Reihe haben die spezielle PLL, die den Takt auf das USB locken
> können.
>
> Bei schnellerem UART oder CAN empfiehlt sich ein Quarz auch sehr.

Der TE fragte ja nach einer "Minimal"-Beschaltung ;) Und da wir den 
genauen Verwendungszweck dieser Beschaltung nicht kennen ist es daher 
eine berechtigte Anmerkung. Ich lasse den Quarz bei den meisten meiner 
privaten Aufbauten auch weg, da der interne RC-Oszi der STMs für meine 
Anwendungsfälle bis jetzt immer vollkommen genügte (sofern man das Gerät 
nicht ständig zwischen Kühlkammer und Sauna hin- und herträgt :D).

Wenn die Platine später lediglich dazu dienen soll, den Controller zum 
Leben zu erwecken und alles weitere geschieht dann auf einem Steckbrett 
über herausführen der Pins o.ä., dann würde es ja auch ohne Quarz 
genügen.

Gruß

von STM Apprentice (Gast)


Lesenswert?

A.. P. schrieb:
> Wenn die Platine später lediglich dazu dienen soll, den Controller zum
> Leben zu erwecken und alles weitere geschieht dann auf einem Steckbrett
> über herausführen der Pins o.ä., dann würde es ja auch ohne Quarz
> genügen.

Keinen Quarz am Controller zu haben bereut man später immer
wieder mal. Diesen Quadratzentimeter Layout sollte man sich
gönnen. Und kosten tut's auch (fast) nix. Aber später kostet
es ohne vielleicht viel Ärger.

Es ist fast so schlimm wie keine oder zu wenig Abblock-
Kondensatoren zu haben.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Nehme als Alternative zu einem Quarz so einen Resonator:

CSTCE8M00G55-R0

Braucht kaum Platz und die 2 Kondensatoren sind da auch schon gleich mit 
drin. Ich habe den schon oft direkt an den OSC Pins betrieben und 
funktioniert gut.

http://www.mouser.de/ProductDetail/Murata-Electronics/CSTCE8M00G55-R0/?qs=eoDEeL6nyORcaHhGM345mw==

: Bearbeitet durch User
von STM Apprentice (Gast)


Lesenswert?

Markus M. schrieb:
> Nehme als ALternative zu einem Quarz so einen Resonator:

Verstehe ich auch nicht. Bloss um ein paar Cent und ein paar
Millimeter zu sparen? Die grossen Toleranzen dieser Keramik-
Resonatoren machen auf Dauer auch nur Ärger (grosse Grund-
Toleranz und dazu dann noch mehr Temperaturdrift).

von Mampf F. (mampf) Benutzerseite


Lesenswert?

Jens schrieb:
> ich wollt mal vorsichtig nachfragen, ob die im Anhang dargestellte
> Minimalbeschaltung so in Ordnung ist (bevor ich demnächst meine erste
> Leiterplatte damit mache)?

Für mich gehört zur Minimalbeschaltung eine 5-Polige Stiftleiste mit 
den Signalen NRST, SWDIO, SWCLK, VCC und GND.

Für 2EUR bekommst du einen Debugger (STLinkV2) in der Bucht und du 
kannst den Controller in der Schaltung über eine IDE wie Eclipse oder so 
debuggen (Breakpoints, Single Step, Variablen anschauen usw).


Damit es nicht so groß ist, hab ich das immer auf eine 1,27mm 
Stiftleiste.

Minimale Kosten, riesiger Nutzen :)

: Bearbeitet durch User
von STM Apprentice (Gast)


Lesenswert?

Mampf F. schrieb:
> Minimale Kosten, riesiger Nutzen :)

Yes. Minimalisten werden scheitern oder versagen.

Passender Spruch dazu: Sparen, koste es was es wolle.

von A.. P. (arnonym)


Lesenswert?

Vielleicht könnte der TE ja noch etwas Kontext zu den Anfoderungen 
seiner Minimalschaltung geben, dann wüsste man, was für "ihn" minimal 
ist :)

Denn was aus Sicht von ST minimal ist, kann man ja dem Datenblatt zu 
seinem Controller entnehmen. Dort sind neben den üblichen Cs für die 
Spannungsversorgung bspw. externe Quarze für den Haupttakt und die RTC, 
ein Taster für den Reset-Pin und ein Schalter für den BOOT-Pin 
vorgesehen.

Aber selbst das wäre schon mehr, als "minimal" nötig. Stabil anlaufen 
tut der Controller in einer Testumgebung bereits mit den Kondensatoren. 
Alles darüber hinaus ist bereits von den Anforderungen und Wünschen 
abhängig:

- Soll der Controller auch extern resettable sein, so sollte er wie im 
Datenblatt abgebildet mit einer Kombi aus Taster und Kondensator 
beschaltet werden.
- Sollen im späteren Verlauf weitere Peripherien wie z.B. USB verwendet 
werden, so sollte ein externer Quarz eingeplant werden
- Soll die Echtzeituhr verwendet werden, so sollte auf jeden Fall auch 
ein externer 32 kHz Quarz verbaut werden (mit dem internen Taktgeber 
kann die Uhr sonst innerhalb weniger Stunden locker um 15 Minuten oder 
mehr falsch gehen).

Darüber hinaus lassen sich natürlich noch unzählige weitere Späße 
einbauen, um sich für alle Eventualitäten, wie magnetische Störeinflüsse 
oder sonstiges, zu wappnen oder einfach die Kosten höher zu treiben. 
Wenn das aber gar nicht gefordert oder gewünscht ist, wäre das ja alles 
andere als minimal ;)

Wie Mampf F., so habe auch ich für mich eine Platine entwickelt, auf der 
ein STM32F030 Platz findet und wirklich minimal für meine Testzwecke 
beschaltet ist. Es sind lediglich ein paar Kondensatoren darauf, ein 
Tasten für den Reset-Pin, eine Stiftleiste zum Setzen des BOOT-Pins und 
eine Stiftleiste zum Anschluss eines JTAGs. Alle Pins sind links und 
rechts der Platine auf Stiftleisten herausgeführt, den Rest erledigt das 
Steckbrett :) Funktioniert tadellos. Habe mir auch so einen 
JTAG-China-Klon für 6€ oder so bei eBay geschossen und das Teil 
funktioniert wunderbar mit Atollic und der ST-Link Utility.

Gruß

: Bearbeitet durch User
von W.S. (Gast)


Lesenswert?

Mampf F. schrieb:
> Für mich gehört zur Minimalbeschaltung eine 5-Polige Stiftleiste mit
> den Signalen NRST, SWDIO, SWCLK, VCC und GND.

Und dazu noch /BOOT, RxD0, TxD0 - dann wird's ne runde Sache.

Ich benutze dafür seit einiger Zeit die Steckverbinder im 1mm Raster von 
JST. Sind angenehm klein und die Litzen mit Kontakten gibt es dafür auch 
schon passend vorkonfektioniert.

Aber der TO hat sich wohl davongemacht.

W.S.

von Mampf F. (mampf) Benutzerseite


Lesenswert?

W.S. schrieb:
> Ich benutze dafür seit einiger Zeit die Steckverbinder im 1mm Raster von
> JST. Sind angenehm klein und die Litzen mit Kontakten gibt es dafür auch
> schon passend vorkonfektioniert.

Hast du zufällig Bestellnummern dafür parrat? :)

von Jens (Gast)


Lesenswert?

Es geht mir um Migration und was ich ggf. beachten muss im Gegensatz zu 
so manch anderen µC - kommend von den üblichen 8Bittern.

von STM Apprentice (Gast)


Lesenswert?

Jens schrieb:
> was ich ggf. beachten muss

STM Apprentice schrieb:
> Sparen, koste es was es wolle.

Also:

- keinen Quarz
- keine Abblock-Kondensatoren
- keine Debug-Schnittstelle
- keine serielle Schnittstelle nach aussen führen
- keine Spannungsstabilisierung (alles unnötiger Ballast)
- keine Platine, sondern alles auf Steckbrett

von Pete K. (pete77)


Lesenswert?

Gerd E. schrieb:
> Pete K. schrieb:
>> Du kannst auch auf den Quarz verzichten (Kap3.9):
>
> Naja, das hängt doch sehr von der Anwendung ab.
>
> USB geht nicht ohne, nur die F0x2 und ich glaube welche aus der
> F41x-Reihe haben die spezielle PLL, die den Takt auf das USB locken
> können.
>
> Bei schnellerem UART oder CAN empfiehlt sich ein Quarz auch sehr.

Das Datenblatt macht hier aber auf keine Ausnahmen aufmerksam. Warum 
soll man einen externen Quarz nehmen, wenn doch im DB steht, dass es mit 
dem internen geht?
Ist das DB etwa nicht verlässlich?

von Stefan F. (Gast)


Lesenswert?

> Warum soll man einen externen Quarz nehmen, wenn doch im DB steht,
> dass es mit dem internen geht?

Möglicherweise weil man mit der Kombination UART + R/C-Oszillator schon 
öfters auf die Nase gefallen ist.

ST geht davon aus, dass man den R/C Oszillator ggf. kalibrieren möchte 
und kann. Ich habe das einmal (bei einem AVR) gemacht und seit dem 
beschlossen, lieber einen Quarz zu kaufen.

Aber mach ruhig deine eigenen Erfahrungen, für Dich ist ein kalibrierter 
R/C Oszillator möglicherweise völlig in Ordnung.

von STM Apprentice (Gast)


Lesenswert?

Stefan U. schrieb:
> und seit dem
> beschlossen, lieber einen Quarz zu kaufen.

... und seitdem bist du arm, wegen des teueren Quarzes.

Stefan U. schrieb:
> Aber mach ruhig deine eigenen Erfahrungen, für Dich ist ein kalibrierter
> R/C Oszillator möglicherweise völlig in Ordnung.

Ich wette dass die Erfahrung zu machen nicht ohne Quarz
auszukommen billiger ist als einen Quarz zu kaufen.

Oder war es doch anders herum? Jetzt bin mir doch nicht sicher.

von A.. P. (arnonym)


Lesenswert?

STM Apprentice schrieb:
> Keinen Quarz am Controller zu haben bereut man später immer
> wieder mal.

STM Apprentice schrieb:
> Es ist fast so schlimm wie keine oder zu wenig Abblock-
> Kondensatoren zu haben.

STM Apprentice schrieb:
> Verstehe ich auch nicht. Bloss um ein paar Cent und ein paar
> Millimeter zu sparen?

STM Apprentice schrieb:
> ... und seitdem bist du arm, wegen des teueren Quarzes.

Ok, wir wissen jetzt, dass du es überhaupt nicht haben kannst, wenn 
jemand sich mal einen Quarz oder gar andere Komponenten sparen möchte. 
Schön, wenn du dich sehr sicher fühlst, wenn du besser einen Quarz zu 
viel als zu wenig hast. Aber manche Leute mögen einfach den Thrill, ihre 
Schaltung auch mal ohne Quarz zu betreiben ;)

Übrigens, hier noch ein passender Thread für dich: 
Beitrag "Programmierbarer LED Vorwiderstand mit MikrokontrolliererATMEGA"
Da sucht noch jemand eine Jahresration Quarze, da kannst du ihm doch 
bestimmt weiterhelfen :)

Gruß

: Bearbeitet durch User
von STM Apprentice (Gast)


Lesenswert?

A.. P. schrieb:
> Aber manche Leute mögen einfach den Thrill, ihre
> Schaltung auch mal ohne Quarz zu betreiben ;)

Ja das ist das Geilste überhaupt. Und sich eine Ewigkeit mit
den elementaren Dingen des Prozessor-Betreibens auseinanderzu-
setzen um möglichst nicht zur Lösung der eigentlichen Aufgabe
vorzudringen.

von jz23 (Gast)


Lesenswert?

Mampf F. schrieb:
> Hast du zufällig Bestellnummern dafür parrat? :)
Ebay 162514756716
Da hab ich zumindest meine letztens gekauft. JST SH (Die 1mm Teile) sind 
einfach der Hammer für alles, was platzsparend und günstig gesteckt 
werden muss (Programmieradapter, Anschlüsse für Frontplatten, usw.)

von A.. P. (arnonym)


Lesenswert?

STM Apprentice schrieb:
> A.. P. schrieb:
>> Aber manche Leute mögen einfach den Thrill, ihre
>> Schaltung auch mal ohne Quarz zu betreiben ;)
>
> Ja das ist das Geilste überhaupt. Und sich eine Ewigkeit mit
> den elementaren Dingen des Prozessor-Betreibens auseinanderzu-
> setzen um möglichst nicht zur Lösung der eigentlichen Aufgabe
> vorzudringen.

Herrgott, hör auf zu trollen. Er wird auch ohne Quarz seine "Aufgabe" 
lösen, wie hier bereits mehrfach angesprochen.

von Mampf F. (mampf) Benutzerseite


Lesenswert?

Pete K. schrieb:
> Warum
> soll man einen externen Quarz nehmen, wenn doch im DB steht, dass es mit
> dem internen geht?

Für USB zB braucht man zwingend einen richtigen Quarzoszillator (oder 
einen STM32 mit HSI48 und usb-clock-recovery).

Aber USB ist wohl nicht mehr Minimalbeschaltung.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.