Hallo zusammen,
sehe ich es richtig, dass es keinen STM32L0 im LQFP32-Package gibt, bei
dem ein externer Quarz als HSE verwendet werden kann?
Einige Controller haben einen Takteingang, bei denen kann als Takt ein
entsprechendes Taktsignal genutzt werden. Die Nutzung eines Quarzes ist
aber anscheinend nur für den LSE möglich, für den HSE fehlen die
entsprechenden Eingänge.
Zur Klarstellung, mir geht es um einen einfachen Quarz (mit zwei
Anschlüssen), nicht um einen Quarzoszillator.
Übersehe ich hier etwas oder ist das tatsächlich so? Ich habe jetzt
schon zahlreiche Datenblätter angesehen und nur die µCs mit 48 oder mehr
Pins haben entsprechende Eingänge (OSC_IN und OSC_OUT).
Gruß
So sieht das aus. Externe Quarze (mit 2 Pins) sind wohl ziemlich aus der
Mode gekommen. So: die L0 haben kein CAN und kein USB, also braucht auch
niemand einen Quarz ;) Der HSI ist ziemlich stabil und lässt sich auf
±0.35% trimmen, der MSI auf ±0.5%., das reicht für UARTs. Sie haben Low
Power UART und -Timer, die den LSE benutzen können.
Die G0-Reihe hat einen stabileren HSI, der reicht für UART fast immer
über den vollen Temperaturbereich.
Der STM32L412KxT kann seinen MSI per Hardware auf den LSE
synchronisieren, kommt damit aber auch nur auf ±0.25%. Sein HSI ist so
gut wie bei den G0 und lässt sich auf ±0.2% trimmen. Außerdem kann er in
Hardware dividieren ;)
Jetzt sollte man sich direkt die Kinetis Familie anschauen...
Bastelmensch schrieb:> Argumente dafür wären Low Power und der integrierte EEPROM.
Naja, extremes Low Power und Quarzoszillator passen schon mal nicht
richtig zusammen. EEPROM kann man im Flash simulieren und wenn da extrem
häufig geschrieben werden soll, ist ein FRAM über i2c sicher die bessere
Wahl.
Bastelmensch schrieb:> temp schrieb:>> Warum ausgerechnet die L-Serie?>> Argumente dafür wären Low Power und der integrierte EEPROM.
Und weniger Umweltverschmutzung, der L051 ist bei 32MHz um knappe 30dB
besser als der F051 bei 48MHz. Bei den anderen Modellen ist der
Unterschied nicht ganz so krass.
temp schrieb:> Naja, extremes Low Power und Quarzoszillator passen schon mal nicht> richtig zusammen.
Deswegen ist der Oszillator ja abschaltbar.
Bauform B. schrieb:> Und weniger Umweltverschmutzung, der L051 ist bei 32MHz um knappe 30dB> besser als der F051 bei 48MHz. Bei den anderen Modellen ist der> Unterschied nicht ganz so krass.
Da könnte man fast draus schließen dass der Unterschied im
homöopathischen Bereich liegt wenn der F051 auch mit 32MHz arbeitet...
Bauform B. schrieb:> temp schrieb:>> Naja, extremes Low Power und Quarzoszillator passen schon mal nicht>> richtig zusammen.> Deswegen ist der Oszillator ja abschaltbar.
Stimmt, aber irgendwann wird er ja auch eingeschaltet. Und in diesem
Zustand düften sich die L0x und F0x bei gleichem Takt nicht so
wesentlich unterscheiden. Die spannende Frage ist dann halt die Summe
über alles und ob man wirklich von den geringeren Stromaufnahmen im
Standby/Shutdown Bereich partizipieren kann. Aber das kann halt nicht
pauschal beantwortet werden.
Danke für die zahlreichen Antworten. Dann habe ich wohl leider nichts
übersehen und die STM32L0 lassen sich nicht ohne Weiteres mit einem
Quarz betreiben.
Bauform B. schrieb:> So: die L0 haben kein CAN und kein USB, also braucht auch> niemand einen Quarz ;) Der HSI ist ziemlich stabil und lässt sich auf> ±0.35% trimmen, der MSI auf ±0.5%., das reicht für UARTs.
Das stimmt, der HSI ist grundsätzlich gar nicht so schlecht. Wenn man
aber doch mal präzise Interrupts mit einem Timer erzeugen möchte, dann
ist ein richtiger Quarz meiner Meinung nach durchaus noch sinnvoll. Wenn
man eine RTC nutzen möchte, dann ist ein Quarz noch wichtiger, aber
hierfür haben die STM32L0 ja entsprechende Anschlüsse.
temp schrieb:> Es gibt ja noch STM32F0x1/2 sowie STM32F303, STM32F334 in LQFP32. Warum> ausgerechnet die L-Serie?
Wie bereits geschrieben, sind der EEPROM und der niedrige Stromverbrauch
interessant. Außerdem kommt die L-Serie mit niedrigeren Spannungen
zurecht als die F-Serie, dem Großteil der Controller reichen schon 1,65
V aus. Die STM32L0x2 und L0x3 haben zudem einen Zufallszahlengenerator
(TRNG), das hört sich auch interessant an.
Ein Nachteil ist, dass vergleichbare Controller aus der F-Serie mehr
Schnittstellen haben (z.B. mehrere SPI).
Wenn ich also doch einen Quarz zusammen mit einem STM32L0 nutzen möchte,
dann brauche ich eine zusätzliche Schaltung, die mithilfe des Quarzes
ein Rechtecksignal mit der passenden Frequenz mit erzeugt.
Da müsste ich mich mal einlesen, wie man das am besten macht.
Alternativ kann ich auch einfach einen fertigen Quarzoszillator nehmen,
aber ich habe hier noch sehr viele Quarze mit unterschiedlichen
Frequenzen, die ich gerne verbauen würde.
beema schrieb:> Wenn man aber doch mal präzise Interrupts mit einem Timer erzeugen> möchte, dann ist ein richtiger Quarz meiner Meinung nach durchaus> noch sinnvoll.
Ein Timer (der LPTIM) kann vom LSE-Quarz bzw. mit externen 32kHz
getaktet werden. Diese 32kHz könnte man mit einem
SIT1630AI-S4-DCC-32.768 erzeugen. Das ist ein MEMS-Oszillator im SOT-23.
Der ist ein wenig genauer als ein normaler externer 32kHz-Uhrenquarz.
Deutlich genauer sind RTC-Bausteine mit integriertem Quarz, die sind
nämlich temperaturkompensiert. Manche von denen können auch 32kHz
ausgeben, fast alle können diverse niedrigere Frequenzen.
Der LSE mit externem Quarz ist mir viel zu kompliziert und ungenau.
Oszillatoren im Bereich von ca. 3 bis 10 MHz könnte einfach man mit 2
Invertern aufbauen. Aber die brauchen viel Strom und sparsame
Schaltungen sind wieder garnicht so einfach.
Bauform B. schrieb:> Ein Timer (der LPTIM) kann vom LSE-Quarz bzw. mit externen 32kHz> getaktet werden.
Danke für den Hinweis, das wusste ich nicht. Damit hätte man zumindest
einen ziemlich genauen Timer, auch wenn die Auflösung begrenzt ist (ca.
30 µs). Wenn man damit auskommt, dann gibt es nur noch wenig Gründe, die
für einen HSE mit einem Quarz sprechen. Vermutlich hat ST deswegen die
Pins weggelassen bzw. nur bei Packages mit mehr als 48 Pins verbaut.
Bauform B. schrieb:> Diese 32kHz könnte man mit einem> SIT1630AI-S4-DCC-32.768 erzeugen. Das ist ein MEMS-Oszillator im SOT-23.
Das ist ein sehr interessantes IC. Ich habe gerade mal ins Datenblatt
geschaut, der Stromverbrauch liegt typischerweise bei 1 µA. Was es nicht
alles gibt.
Bauform B. schrieb:> Der LSE mit externem Quarz ist mir viel zu kompliziert und ungenau.> Oszillatoren im Bereich von ca. 3 bis 10 MHz könnte einfach man mit 2> Invertern aufbauen. Aber die brauchen viel Strom und sparsame> Schaltungen sind wieder garnicht so einfach.
Genau das ist das Problem. Evtl. gibt es ja hier auch ICs, die mithilfe
eines Quarzes ein passendes Rechtecksignal erzeugen.
Dann nimm doch einfach einen LQFP48 und werd glücklich. Mehr Platz
braucht der auch nicht auf dem PCB. Ja, per Hand etwas schwerer zu
löten. Allerdings kann man in der Zeit die hier verdiskutiert wird
bestimmt 10 Chips per Hand auf das PCB nageln.
Um das Thema abzuschließen:
Ich habe mir jetzt einen STM32L0 im LQFP32-Package und den oben
empfohlenen MEMS-Oszillator bestellt.
Der HSI sollte mir von der Genauigkeit her gut ausreichen, mit dem
MEMS-Oszillator kann ich bei Bedarf einen genauen Timer nutzen, falls
der HSI hier zu ungenau sein sollte.
Danke für die hilfreichen Beiträge und Hinweise.