UART bei Stm32 mit internem RC

Gast #7238615
Lesenswert?
• ▲
▼
moin

wie stabil ist UART wenn ich nur den internen RC verwende? Controller 
ist auf kurzem Weg mit einem ESP8266 verbunden. Eine Baudrate von 38400 
scheint problemlos zu funktionieren. Aber wie könnten sich 
Temperaturschwankungen auswirken? Gibt es eine "sichere" Baudrate?
Gast #7238678
Lesenswert?
• ▲
▼
Wie geizig und/oder faul und/oder dumm muss man sein keine
Quarzreferenz zu verwenden? Früher oder später bereut man
die Verwendung eines "freilaufenden" Oszillators. Überall
bekommt man Quarze für kleines Geld nachgeschmissen oder
sie sind in einer bestehenden Schaltung schon drin. Sparen
koste es was es wolle, man zahlt irgendwann Lehrgeld.

L.Q.O. schrieb:
> Gibt es eine "sichere" Baudrate?

Ja, die Rauchzeichen-Baudrate.

L.Q.O. schrieb:
> Controller ist auf kurzem Weg mit einem ESP8266 verbunden.

Der Controller muss natürlich geheim bleiben sonst könnte
versehentlich hier jemand eine genauere Aussage machen.
#7238687
Lesenswert?
• ▲
▼
L.Q.O. schrieb:
> wie stabil ist UART wenn ich nur den internen RC verwende?

Kommt auf das konkrete STM32-Derivat an. Bei manchen ist er genauer, bei 
manchen ungenauer, also am besten einfach ins Datenblatt schauen, ob der 
RC-Oszillator genau genug ist für Deine Anwendung.
Es gibt sogar STM32-Derivate, bei denen man die USB-Schnittstelle mit 
einem internen Oszillator betreiben kann; da findet irgendwie noch 
automatisch ein Abgleich mit den Daten von der Gegenstelle statt.
Gast #7241861
Lesenswert?
• ▲
▼
Datenblattleser schrieb:
> Und hier die zweite Tabelle. Für den konkreten Chip möge man im
> zugehörigen Datenblatt nachlesen. Es kommt also nicht nur auf die
> Stabilität des RC-Oszillators sondern auch auf die Implementierung und
> Konfiguration des Empfängers an.

ziemlich kompliziert! Da nimmt man doch einfach nen Quarz und hat seine 
Ruhe! So muss man sich durch die Innerein von UART wühlen. Das lohnt 
sich nie und nimmer
Gast #7242240
Lesenswert?
• ▲
▼
Nicht nur das. Ich hatte es mit einem STM32-Chip zu tun, bei dem intern 
der OSC_IN-Pin mit dem RX-Pin des USART verbunden ist, d.h. ich hatte 
die Wahl zwischen USART oder externem Takt, beides gleichzeitig ging 
nicht. Der HSI hat sich als ausreichend genau erwiesen (auf der 
Gegenseite ist ein größerer STM32-Chip mit Quarzoszillator).
Gast #7242279
Lesenswert?
• ▲
▼
Datenblattleser schrieb:
> Es kommt also nicht nur auf die
> Stabilität des RC-Oszillators sondern auch auf die Implementierung und
> Konfiguration des Empfängers an.

Das sind verschiedene Baustellen. Das eine ist der systematische Fehler 
auf Grund der diskreten Teiler im Baudratengenerator bei idealen 
µC-Takt, das andere sind die Fehler durch die Variabilität des 
RC-Oszillators in Abhängigkeit von Temperatur, Versorgungsspannung und 
sonstigen Einflussfaktoren.
Gast #7242740
Lesenswert?
• ▲
▼
Der TO erwähnte nichts von einem Quarzoszilator im/am STM32. Es kann 
sehr wohl sein, daß er wie Datenbattleser gar keinen Quarz anschließen 
kann. Und die maximale Bitrate mit RC-Oszillator, nach der er fragte, 
hängt, wie ich den Tabellen entnehme, sehr wohl von der Konfiguration 
des Empfängers ab, je nach Bitrate kann man 16-fach Oversampling 
verwenden oder muß 8-fach Oversamping verwenden und kann (im Falle eines 
STM32 und auch in Abhängigkeit der Leitungsqualität) 1-Bit-Samping oder 
muß 3-Bit-Sampling verwenden. Die Bitrate und die Taktfrequenz haben 
Auswirkungen auf den Wert in BRR[3:0] und damit auf die Toleranz. Das 
hängt alles zusammen. Da wir nicht wissen, welchen STM32 mit welcher 
Taktfrequenz der TO benutzt, können wir ihm nur raten, mit Kältespray 
und Heißlluft selbst auszuprobieren, ob der RC-Oszilator für seine 
Situation ausreicht.
Gast #7242859
Lesenswert?
• ▲
▼
L.Q.O. schrieb:
> wie stabil ist UART wenn ich nur den internen RC verwende? Controller
> ist auf kurzem Weg mit einem ESP8266 verbunden. Eine Baudrate von 38400
> scheint problemlos zu funktionieren. Aber wie könnten sich
> Temperaturschwankungen auswirken? Gibt es eine "sichere" Baudrate?

Warum versorgst du nicht einfach beide µC aus derselben Taktquelle. Dann 
kann dir irgendeine Taktdrift durch Temperatur oder sonstwas egal sein.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.