Forum: Mikrocontroller und Digitale Elektronik Frequenz Baudrate


von Markus M. (member2)


Lesenswert?

Hallo zusammen

Wir haben in der Schule gerade das Thema Kommunikationstechnik und ich 
komm dort nicht so richtig vorwärts.Die folgenden Frage bezieht sich auf 
eine Schnittstelle mit 38‘400 Baud; 8 Daten-Bit, ohne Parity und einem 
Stop-Bit. Ausserdem ist eine Signalfolge gegeben, bei der sich der 0 und 
1 Pegel abwechseln.

Welche Frequenz hat das Rechtecksignal (siehe Baud-Rate )?

Ich hab keinen Schimmer wie man das ausrechnet^^? Welche Formel muss man 
hier einsetzen?

Gruss

von Markus (Gast)


Lesenswert?

Markus M. schrieb:
> Welche Frequenz hat das Rechtecksignal (siehe Baud-Rate )?

Kommt drauf an, was übertragen wird.
Bei 0101010101 beträgt die Frequenz die Hälfte der Baudrate.
Bei 0000000000 sehe ich gar keine Frequenz, dito bei 111111111.
Bei 001001001 sind dann wieviel kHz?

von Clemens L. (c_l)


Lesenswert?

Dies ist ein Byte (Start-Bit, 8 Daten-Bits, Stop-Bit):
1
   _   _   _   _   _
2
|_| |_| |_| |_| |_|
Die Länge eines Bits ist eine 38400-tel Sekunde.

Das Ausrechnen der Frequenz ist trivial, man muss nur verstanden haben, 
was genau mit der Frequenz gemessen wird. Siehe 
https://de.wikipedia.org/wiki/Frequenz .
Bei einer Rechteck-Welle entspricht eine Periode nicht einem Bit.

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Markus schrieb:
> Kommt drauf an, was übertragen wird.

Das ist doch bis auf die Dauer der 0- und 1-Pegel klar.

Markus M. schrieb:
> Ausserdem ist eine Signalfolge gegeben, bei der sich der 0 und
> 1 Pegel abwechseln.

Auch sollte man Baudrate und Symbolrate nicht durcheinander schmeißen. 
Für die Frequenz ist die Symbolrate entscheidend. Bei einem Bit pro 
Symbol ist die einfach aber gleich der Baudrate, so dass man da nicht 
groß rechnen muss ;-)

von Joachim B. (jar)


Lesenswert?

Markus schrieb:
> Bei 0101010101 beträgt die Frequenz die Hälfte der Baudrate.
> Bei 0000000000 sehe ich gar keine Frequenz, dito bei 111111111.

???

> Bei 001001001 sind dann wieviel kHz?


immer noch genauso, meintest du etwa

1100110011 ?

von Markus (Gast)


Lesenswert?

Joachim B. schrieb:
> ???
>
>> Bei 001001001 sind dann wieviel kHz?
>
> immer noch genauso, meintest du etwa
>
> 1100110011 ?

Dann definiere man zuerst, was man mit Frequenz meint.
Die Frage war:
Welche Frequenz hat das Rechtecksignal (siehe Baud-Rate )?

Welches Rechtecksignal zustande kommt, hängt von der übertragenen 
Bitfolge ab.

von c-hater (Gast)


Lesenswert?

Markus schrieb:

> Kommt drauf an, was übertragen wird.

Richtig.

> Bei 0101010101 beträgt die Frequenz die Hälfte der Baudrate.

Falsch. Das sind 10 Bit, die kannst du nicht über 8N1 senden. Richtig 
wäre gewesen: 10101010 = (LSB first!) 0b01010101 = $55 = 85 = 'U'

> Bei 0000000000 sehe ich gar keine Frequenz, dito bei 111111111.

Auch falsch. Der Trick einer UART ist die Wortsynchronisation durch 
Start- und Stop-Bits. Das Startbit ist immer logisch Low, das Stopbit 
ist immer logisch high. In jedem Wort gibt es also immer mindestens 
einen Pegelwechsel zu Beginn des Startbits. Und zusätzlich mindestens 
noch einen weiteren, der bei den von dir gepostetenen Beispielen 
entweder am Beginn des Stopbits (0b00000000) oder am Ende des Startbits 
(0b11111111) erfolgt.

Die Frequenz ist in beiden Fällen gleich, nämlich Baudrate/10, nur das 
Tastverhältnis variiert (1:10 bzw. 9:10).

Oder anders ausgedrückt: Keine Frequenz (f=0/"DC") kann man niemals 
dadurch erzeugen, dass man irgendwelche normalen Daten sendet. Das geht 
nur, indem man entweder nix sendet, dann ist der Kram IDLE (konstant 
logisch high) oder indem man einen BREAK sendet, dann ist der Kram 
konstant logisch low (für die Dauer des BREAK, mindestens eine 
Datenwortlänge).

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Markus M. schrieb:
> Ich hab keinen Schimmer wie man das ausrechnet^^? Welche Formel muss man
> hier einsetzen?
Da muss man erst mal nicht einfach Werte in "eine fertige Formel aus der 
Formelsammlung einsetzen", sondern "Nachdenken"...

Joachim B. schrieb:
> Markus schrieb:
>> Bei 0101010101 beträgt die Frequenz die Hälfte der Baudrate.
>> Bei 0000000000 sehe ich gar keine Frequenz, dito bei 111111111.
> ???
>> Bei 001001001 sind dann wieviel kHz?
> immer noch genauso
Ich würde da 1/3 der Taktfrequenz messen, genausoe wie bei 110110110

> meintest du etwa  1100110011 ?
Das ergibt dann 1/4 der Taktfrequenz genauso wie 100010001000 und 
111011101110 ...

Markus schrieb:
> Markus M. schrieb:
>> Welche Frequenz hat das Rechtecksignal (siehe Baud-Rate )?
> Kommt drauf an, was übertragen wird.
> Bei 0101010101 beträgt die Frequenz die Hälfte der Baudrate.
Und übertragen wurde dabei 10101010, denn die erste 0 von 0-10101010-1 
ist das Startbit, die letzte 1 das Stopbit...

> Bei 0000000000 sehe ich gar keine Frequenz, dito bei 111111111.
Weil aber immer mindestens ein Startbit dabei ist, ist die niedrigste 
erreichbare Frequnez bei dauernder Übertragung 1/10 der Baudrate:
0-11111111-1 und 0-00000000-1

EDIT: Pech, Zweiter... ;-)

: Bearbeitet durch Moderator
von Markus M. (member2)


Lesenswert?

Danke für die vielen Antworten :)
Es ist egal ob die Zeichenfolge mit 0 oder 1 beginnt, es ist einfach 
abwechselnd.
Also vier Nullen und vier Einsen.
Darum würde ich einfach rechnen: Baud/2 = 38‘400/ 2 = 19200 Hz.

von m.n. (Gast)


Lesenswert?

Markus M. schrieb:
> Baud/2 = 38‘400/ 2 = 19200 Hz.

Lernt Ihr da's in der 'Schule?

von Joachim B. (jar)


Lesenswert?

Lothar M. schrieb:
>> meintest du etwa  1100110011 ?
> Das ergibt dann 1/4 der Taktfrequenz genauso wie 100010001000 und
> 111011101110 ...

sicher?


wenn 2 oder mehr aufeinander folgende Bits gleich und danach genauso 2 
oder mehr aufeinander folgende Bits anders sind dann ändert sich doch 
die Frequenz, wenn es nur 1 Bit 0 oder 1 auf mehr Bits 0 oder 1 gibt hat 
man eine PWM aber immer noch dieselbe Frequenz.

Bei PWM ändert die sich ja auch nicht nur das 0 1 Verhältnis.

: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Markus M. schrieb:
> Danke für die vielen Antworten :)
> Es ist egal ob die Zeichenfolge mit 0 oder 1 beginnt, es ist einfach
> abwechselnd.
Durchaus nicht!
Denn wenn das Bitmuster 10101010 ist, dann kommt bei andauernder 
Übertragung wegen des Startbits=0 und des Stopbits=1 dieser Bitstrom 
heraus:
101010101010101010101010101010
Mal mit #=1 und _=0 untereinander geschrieben:
#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_

Und wenn das zu übertragende Bitmuster 01010101 ist, dann ergibt sich
001010101100101010110010101011
__#_#_#_##__#_#_#_##__#_#_#_##
Und damit ist die Grundfrequenz nur 1/10 der Taktfrequenz (denn mit 
1/10 der Taktfrequenz wiederholt sich das gesamte Bitmuster). Allerdings 
gibt es viele recht hässliche Oberwellen...


> Also vier Nullen und vier Einsen.
> Darum würde ich einfach rechnen: Baud/2 = 38‘400/ 2 = 19200 Hz.

Joachim B. schrieb:
> Lothar M. schrieb:
>>> meintest du etwa  1100110011 ?
>> Das ergibt dann 1/4 der Taktfrequenz genauso wie 100010001000 und
>> 111011101110 ...
> sicher?
Ja.
1
#___#___#___
2
##__##__##__
3
###_###_###_
Leicht erkennbar, dass sich die Sache mit der selben Häufigkeit 
(=Frequenz) wiederholt. Der einzige Unterschied ist das Tastverhältnis.

Einen Schritt weiter in richtung Musik: dieses geänderte Tastverhaltnis 
ergibt andere Oberwellen und damit einen anderen Klang. Aber die 
Tonhöhe und damit die Frequenz ist die selbe.

> Bei PWM ändert die sich ja auch nicht nur das 0 1 Verhältnis.
Bei einer korrekt aufegbauten PWM ändert sich entweder die Frequenz 
oder das Tastverhältnis. Bei einer einfachen PWM ergeben sich 
Wechselwirkungen.

: Bearbeitet durch Moderator
von Joachim B. (jar)


Lesenswert?

Lothar M. schrieb:
> Joachim B. schrieb:
>> Lothar M. schrieb:
>>>> meintest du etwa  1100110011 ?
>>> Das ergibt dann 1/4 der Taktfrequenz genauso wie 100010001000 und
>>> 111011101110 ...
>> sicher?
> Ja.

ich weiss ja nicht,vermutlich meinen wir das selbe aber du drückst dich 
sehr unglücklich aus.

eine reine 1 0 Folge ist halbe Baudfrequenz
eine reine 11 00 Folge ist dann drittel Baudfrequenz
eine reine 111 000 Folge ist dann viertel Baudfrequenz

soweit stimme ich zu


Mit Nachdenken stimme ich zu:
eine 1 000 Folge ist eine viertel Baudfrequenz mit schiefem 
Tastverhältnis .

Weil aber Start und Stoppbit die schönen Folgen versauen hat man Jitter.

Mit diesem  "Jitter" konnte sogar RC5 umgehen als Pofahl seine IRDEO FB 
am UART presentierte.
http://pofahl.de/irdeo/irdeoqa.htm

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> ich weiss ja nicht,vermutlich meinen wir das selbe aber du drückst dich
> sehr unglücklich aus.
>
> eine reine 1 0 Folge ist halbe Baudfrequenz
Ok, klar...

> eine reine 11 00 Folge ist dann drittel Baudfrequenz
Nein, das ist dann ein bereits 1/4, denn nach jedem vierten Takt 
wiederholt sich das Muster...

> eine reine 111 000 Folge ist dann viertel Baudfrequenz
Das ist dann korrekterweise 1/6 der Ausgangsfrequenz mit 50% TV

von Joachim B. (jar)


Lesenswert?

Lothar M. schrieb:
>> eine reine 11 00 Folge ist dann drittel Baudfrequenz
> Nein, das ist dann ein bereits 1/4, denn nach jedem vierten Takt
> wiederholt sich das Muster...

arg ......


du hast schon wieder Recht, manno habe ich heute einen Knoten im Hirn.

logisch, diese Umrechnerei macht einen kirre!

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Joachim B. schrieb:
> diese Umrechnerei macht einen kirre!

Mach nichts, sie ist ja auch ziemlich sinnlos.

von Joachim B. (jar)


Lesenswert?

Rufus Τ. F. schrieb:
> Mach nichts, sie ist ja auch ziemlich sinnlos.

na ja, wer mag kann damit PWM erzeugen und das als "HilfsDAC" verwenden, 
ungeachtet der Jitter durch Start und Stopp Bit, sogar IR RC5 o.ä. ging 
darüber.

von Markus M. (member2)


Lesenswert?

Stimmt wohl doch nicht was ich gesagt habe, also um nochmals auf meine 
Anfangsfrage zurückzukommen, ich habe eine Schnittstelle mit 38400 Baud, 
8  Daten Bit, kein Parity-bit, ein Start und ein Stop Bit, dazu habe ich 
eine Signalfolge mit folgendem Muster :10101010 und zwar nur mit diesen 
8 Bits und nichts zusätzlichem.
Wie gross ist dann die Frequenz im Rechtecksignal?
Ich tippte ja auf 19200 Hz, stimmt wohl aber nicht.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Markus M. schrieb:
> Ich tippte ja auf 19200 Hz, stimmt wohl aber nicht.
Und warum nicht? Wer behauptet was anderes?

> 10101010
Mit diesem Bitmuster ergibt sich:
1
Start Daten Stop Start Daten Stop Start Daten Stop Start Daten Stop 
2
  0 10101010 1     0 10101010 1     0 10101010 1     0 10101010 1
Also ergibt sich bei dauernder Übertragung
1
0101010101010101010101010101010101010101010101...
Und jeder der Signalpegel 0 und 1 wird für 1/38400 stel Sekunden 
gehalten.
Der Zyklus (und damit die Frequenz) des resultierenden Signals ist 
also 2/38400 stel Sekunden und somit 1/19200 stel Sekunden. Und damit 
ist die Frequenz 19200 Hz...

: Bearbeitet durch Moderator
von Markus M. (member2)


Lesenswert?

Ok gut danke.

von Wolfgang (Gast)


Lesenswert?

Markus M. schrieb:
> Es ist egal ob die Zeichenfolge mit 0 oder 1 beginnt, es ist einfach
> abwechselnd.

Bei weitem nicht. Die Start- und Stopbits machen dir da einen Strich 
durch die Rechnung. Wenn man mal das Startbit (=0) mit "S", das Stopbit 
(=1) mit "E" und die Bits der 8 Zeichenfolge mit "xxxxxxxx" markiert, 
kommt bei einer Zeichenfolge, die mit "1" beginnt
1
01010101010101010101
2
SxxxxxxxxESxxxxxxxxE
raus und bei einer, die mit "0" beginnt
1
00101010110010101011
2
SxxxxxxxxESxxxxxxxxE
Im ersten Fall hat man schöne 19200Hz, im zweiten Fall sehr unsaubere 
15360Hz.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Wolfgang schrieb:
> Im ersten Fall hat man schöne 19200Hz, im zweiten Fall sehr unsaubere
> 15360Hz.
Ich hatte da im Beitrag "Re: Frequenz Baudrate" 
noch eine viel tiefere Frequenz vermutet. Aber die 38400 * 2/5 ist 
sicher auch eine Harmonische im Frequenzgemisch...  ;-)

von c-hater (Gast)


Lesenswert?

Joachim B. schrieb:

> na ja, wer mag kann damit PWM erzeugen und das als "HilfsDAC" verwenden,
> ungeachtet der Jitter durch Start und Stopp Bit, sogar IR RC5 o.ä. ging
> darüber.

Jitter gibt es keinen. So eine UART läßt sich problemlos als eine 
lupenrein zyklische PWM (geringer Auflösung) verwenden.

Der einzige Unterschied z.B. zum dedizierten FastPWM-Mode eines 
AVR8-Timers wäre, dass keiner der beiden Endwerte erreichbar ist, 
während beim AVR8-Timer das nur für einen der beiden Endwerte nicht 
erreichbar ist...

Ich würde das mal für einen ziemlich marginalen Unterschied halten...

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.