Wir programmierten in der Schule einen seriellen Sender. Dazu brauchten wir beim Empfänger ein Oversampling zur Taktrückgewinnung. Jedoch versteh ich nicht ganz, wie man den Takt dabei rückgewinnt. Vielleicht kann mir wer helfen.. mfg
@ Gast (Gast) >Wir programmierten in der Schule einen seriellen Sender. Dazu brauchten >wir beim Empfänger ein Oversampling zur Taktrückgewinnung. Jedoch >versteh ich nicht ganz, wie man den Takt dabei rückgewinnt. Schau dir mal die Funktionsweise eines UART an. Dort wird mit Überabtastung gearbeitet. Siehe auch Baud, Baudratenquarz. http://pdfserv.maxim-ic.com/en/an/AN2141.pdf MfG Falk P.S. @ Oskar (Gast) >PLL - gfs ein händisch programmierte. http://video.google.de/videoplay?docid=763949850889929695
Hm... Es gibt eine Abtastfrequenz - das ist mir schon klar und bei unserem Beispiel beträgt die 32.6 kHz. Das Startbit sagt dem Empfänger, dass nun Daten übertragen werden, und eine halbe Bitlänge später kann er das erste Datenbit abtasten, eine weitere Bitlänge später dass 2. Datenbit ? So richtig ? Was ich da jetzt nicht ganz verstehe - Das Oversampling besteht aus folgenden Teilen: Übertragen vom Sender wird immer 1 Bit(insgesamt ergeben 10 Bits ein e Übertragung, sprich 10 Bits gehören immer zusammen), dann folgt ein Flankendetektor und danach ein 12-Bit-Counter. Wenn aus dem Flankendetektor '1' rauskommt, wird der Counter zurückgesetzt. Nach dem Counter folgt schließlich noch einmal ein Flankendetektor. Was hat der Counter hier für eine Aufgabe bzw warum wird er zurückgesetzt, wenn eine Flanke aus dem 1. Flankendetektor komm ?
@ Gast (Gast) >So richtig ? Ja. >Was ich da jetzt nicht ganz verstehe - Das Oversampling besteht aus >folgenden Teilen: Übertragen vom Sender wird immer 1 Bit(insgesamt >ergeben 10 Bits ein e Übertragung, sprich 10 Bits gehören immer >zusammen), Arbeite mal an deinen Formulierungen. Das klingt ziemlich verdreht. >Was hat der Counter hier für eine Aufgabe bzw warum wird er >zurückgesetzt, wenn eine Flanke aus dem 1. Flankendetektor komm ? Zeichne das mal. Sonst reden wir aneinander vorbei. Poste die Zeichnung unter Beachtung der Bildformate. MFG Falk
Hm der untere Teil mit den 3 Flip Flops und einem XOR soll der NRZI-Decoder sein. PS: Habs jetzt nur schnell mitn Paint gezeichnet, hab nichts anderes auf dem PC ;-)
@ Gast (Gast) >Hm der untere Teil mit den 3 Flip Flops und einem XOR soll der >NRZI-Decoder sein. Passt im Prinzip. >PS: Habs jetzt nur schnell mitn Paint gezeichnet, hab nichts anderes auf >dem PC ;-) Aber leider nicht die Bildformate beachtet. :-( Nun, der erste Flankendetektor synchronisiert den Zähler auf die Flankenwechsel im Signal, der zweite generiert aus dem Zählerüberlauf von 2047 auf 2048 einen Übernahmepuls. D.h. deine Daten müssen 4096 Takte lang sein, bei 32,6 kHz Takt sind das dann ~ 8 Bit/s. Kann man so machen. MFG Falk
Hm Und was macht nun der Counter genau? Dient der zur Abtastung und alle 2^12(=4096) ns wird abgetastet?
@ Gast (Gast) >Und was macht nun der Counter genau? Dient der zur Abtastung und alle >2^12(=4096) ns wird abgetastet? Erstmal sind das keine ns, sondern Takte! Und der stellt, wie bereits gesagt, eine sycnhrone Zeitbasis zu Abtastung der Daten zur Verfügung. Wenn der Zähler einfach frei laufen würde, wäre die Phase von Zähler und Datenstrom undefiniert, asynchron. D.h. der Zählerstand Null würde nicht genau mit dem Start eines Bit zusammenfallen. Durch den Flankendetektor wird er nun aber immer zum Beginn eines Bits zurückgesetzt, sprich mit dem Datenstrom synchronisiert. Nun läuft er erstmal für eine Weile synchron (im Gleichschritt) mit den ankommenden Daten. Das geht eine Weile gut. Nach ein paar Bits kann es aber passieren (und es WIRD passieren!), dass der Zähler zu weit oder zu wenig gezählt hat. Nicht weil er sich verzählt, sondern weil der Takt vom Zähler und der Takt vom Datenstrom nie 100%ig gleich sind. Also muss in regelmässigen Abständen der Zähler durch eine Flanke im Datenstrom neu synchronisiert werden. Die NRZI Kodierung ist dabei hilfreich. MfG Falk
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.