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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren