Forum: Mikrocontroller und Digitale Elektronik [STM32L0] HSI16 und 115200 Baud


von Mampf F. (mampf) Benutzerseite


Lesenswert?

Guten Abend,

der zB L052 ist nett - hat einen HSI48 für USB, aber er hat keinen HSE 
mehr - denkt ihr der HSI16 ist genau genug für UART mit 115200 Baud?

Viele Grüße,
Mampf

von Ob S. (Firma: 1984now) (observer)


Lesenswert?

Mampf F. schrieb:

> Guten Abend,
>
> der zB L052 ist nett - hat einen HSI48 für USB, aber er hat keinen HSE
> mehr - denkt ihr der HSI16 ist genau genug für UART mit 115200 Baud?

Warum rechnest du dir das nicht einfach selber aus? Zu blöd oder zu 
faul?

von J. S. (jojos)


Lesenswert?

Ob S. schrieb:

> Warum rechnest du dir das nicht einfach selber aus? Zu blöd oder zu
> faul?

Holst du dir einen runter auf deine Antworten oder warum schreibst du so 
dauernd so einen Scheiß?

: Bearbeitet durch User
von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Angehängte Dateien:

Lesenswert?

Offenbar reicht HSI16 bezüglich der Toleranz o.ä. nicht aus, um damit 
USB zu betreiben, was man an dem roten Kästchen in der Taktkonfiguration 
mittels STM32CubeMX erkennen kann. Aber natürlich gibt es auch den 
STM32L052 in Gehäusebauformen mit HSE, z.B. Pin 5 des LQFP48.

Ob die Toleranz von HSI16 für UART-Verbindungen ausreicht, musst Du Dir 
schon selbst ausrechnen, da es natürlich extrem auf die 
Einsatzbedingungen, d.h. vorrangig Temperaturbereich und 
Versorgungsspannung ankommt. Tabelle 46 im Datenblatt ist doch 
hinreichend aussagekräftig. Es geht also nicht um persönliche Meinungen, 
sondern knallharte Rechnungen, und zwar unter Berücksichtigung der 
Toleranzen beider UART-Kommunikationspartner. Um zumindest noch etwas 
Sicherheit zu haben, sollte der Versatz am Ende eines Bytes nicht mehr 
als ein Viertelbit betragen, auch wenn es meist noch mit einem halben 
Bit funktionieren sollte.

Der HSI48 hat übrigens laut Tabelle 47 schon bei 25 °C deutlich größere 
Abweichungen als HSI16. Daher verwundert mich auch etwas das o.a. rote 
Kästchen.

: Bearbeitet durch User
von Bauform B. (bauformb)


Lesenswert?

Andreas S. schrieb:
> Der HSI48 hat übrigens laut Tabelle 47 schon bei 25 °C deutlich größere
> Abweichungen als HSI16.

Aber wenn du USB benutzt, wird der HSI48 per Hardware getrimmt, mit dem 
Takt vom USB-Host als Referenz. Das reicht dann leicht.

Wenn man irgendwo eine genaue Frequenz findet, kann man die als Referenz 
benutzen und den HSI16 per Software auf ca. 1% trimmen. Ein RTC-Baustein 
kann z.B. 1Hz oder 32kHz liefern, das reicht. Bei 32kHz braucht man noch 
einen freien Timer, 1Hz geht rein per Software.

von Mampf F. (mampf) Benutzerseite


Lesenswert?

Andreas S. schrieb:
> Aber natürlich gibt es auch den
> STM32L052 in Gehäusebauformen mit HSE, z.B. Pin 5 des LQFP48.

Aaah ... okay 🙈 In der 32pin Variante hat er keinen ...

Mhmmm, das ist jetzt wirklich sehr doof ...

USB hatte ich letztens mit dem HSI48 ausprobiert und das funktioniert 
wunderbar. Glaub die haben auch irgendeine automatische Clock-recovery 
eingebaut, damit die Toleranz des HSIs größer sein kann oder so.

Dachte auch, dass der HSI16 schon genau genug sein sollte - also für USB 
auf keinen Fall, aber zumindest UART sollte damit funktionieren 🤔

War mir aber unsicher und hatte statt auf dumme Antworten auf 
Erfahrungeberichte gehofft, da ich mich nicht erinnern kann, ob ich 
damit mal Probleme hatte oder nicht - und UART über HSI ist ja nicht 
gerade edgy und sollten viele mal probiert haben 🤔

Aber hab die Antworten eh zu spät gesehen ... Platinenlayout ist schon 
beim Fertiger 🙈

Irgendwie wirds schon gehen, hoffe ich^^

Wahrscheinlich hätte ich einen 8Mhz Oszillator einfach auf dem Board 
vorsehen sollen, auch wenn der L052 in der Bauform keinen eingebaut hat. 
Gibt bestimmt andere Varianten, die den HSE haben.

: Bearbeitet durch User
von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

Im "normalen" Temperaturbereich passt HSI16 fuer UART

von Ob S. (Firma: 1984now) (observer)


Lesenswert?

J. S. schrieb:
> Ob S. schrieb:
>
>> Warum rechnest du dir das nicht einfach selber aus? Zu blöd oder zu
>> faul?
>
> Holst du dir einen runter auf deine Antworten oder warum schreibst du so
> dauernd so einen Scheiß?

Das ist kein Scheiß. Es ist wohl jedem Entwickler zuzumuten, dieses 
Problem durch eine simple Berechnung mit dem Taschenrechner oder einem 
ähnlichen Werkzeug selber zu vollziehen.

Es ist absolut nicht einzusehen, dass andere Leute mit solche 
Trivialitäten behelligt werden. Das zeugt nur von einem: von 
grenzenloser Faulheit. Sowas soll und das darf man nicht unterstützen.

von J. S. (jojos)


Lesenswert?

In einem Forum geht es auch um Erfahrungen, und die stehen nicht im 
Datenblatt. Mit so einer Einstellung bräuchte man kein Forum, kann man 
ja alles ergoogeln. Und keiner zwingt dich zu antworten.
Der TO hat hier schon tolle Projekte incl Quellen und Plänen 
vorgestellt, von dir liest man nur Rants gegen alle. Auf Leute wie dich 
kann jedes Forum verzichten. Wenn du Unterhaltung brauchst dann geh ins 
Kino.

: Bearbeitet durch User
von Mampf F. (mampf) Benutzerseite


Lesenswert?

Ob S. schrieb:
> Das ist kein Scheiß. Es ist wohl jedem Entwickler zuzumuten, dieses
> Problem durch eine simple Berechnung mit dem Taschenrechner oder einem
> ähnlichen Werkzeug selber zu vollziehen.

Blah Blah Blah.

Uwe B. schrieb:
> "normalen" Temperaturbereich passt HSI16 fuer UART

Vielen Dank dafür!

: Bearbeitet durch User
von Mampf F. (mampf) Benutzerseite


Lesenswert?

J. S. schrieb:
> Der TO hat hier schon tolle Projekte incl Quellen und Plänen
> vorgestellt, von dir liest man nur Rants gegen alle. Auf Leute wie dich
> kann jedes Forum verzichten. Wenn du Unterhaltung brauchst dann geh ins
> Kino.

Vielen Dank für deinen Zuspruch!

Das nächste Projekt, das ich veröffentlichen werde, wird wohl ein Google 
Chrome Plugin mit dem man ganze Beiträge bestimmter User über eine 
Blocklist voll automatisch entfernen lassen kann 🤔

von Mampf F. (mampf) Benutzerseite


Lesenswert?

Hier bitte schön - funktioniert prima und der erste User ist schon auf 
der Liste:

https://www.mikrocontroller.net/topic/562769

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.