www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Codierung


Autor: Martin Schneider (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

in einem aktuellen Projekt muß ich bessere Kodierung als Manchester
verwenden, um die Bandbreite meines Kanals (Funkstrecke) besser zu
nutzen.
Beim Stöbern bin ich auf Miller-Kodierung (MFM) gestoßen und war
sofort an die alten Platten (MFM, RLL2.7) erinnert.

Gibt es fertigen Code/ Schnipsel für die Erzeugung und Rückgewinnung
dieser Codierung?
(Wunsch ist C, eher 8 als 16 Bit µC)
Irgendwelche weiterführenden Links?
Die Embedded Forth Nr. 6 ist inzwischen leider auch nicht mehr frei
lesbar.

Ahoi, Martin

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Teil zum Miller Code ist noch lesbar, auf Seite 5:
http://www.embeddedforth.de/emb6.pdf

"Theoretisch ist Miller, auch Delay Modulation oder auf Floppys und
Magnetbändern auch MFM ( „modified frequency modulation“ )
genannt, besser als Manchester. ...
Miller ist also nur dann eine
gute Alternative für Manchester, wenn
die Kanalkapazität stärker begrenzt ist
als die Rechenleistung des Controllers."

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier gibts ein kurzes Kochrezept
http://www.dyneng.com/ipbis_miller.html :

"Definition of Miller Code (also called Delay Modulation; DMM)
1. Miller Code is a method of encoding serial data.
2. All encoded information is contained in the spacing between 
transitions; the polarity does not matter.
3. The only permitted spacings between transitions are 1.0, 1.5, and 2.0 
bit periods.
4. An input of ONE always produces a transition at the end of the bit 
period.
5. An input of ZERO produces a transition in the middle of the bit 
period unless there was a transition at the start of the period. Thus, a 
ZERO bit following a ONE bit never produces a transition.

Miller Code Rules:
1. Determine the time, T, between the last two transitions in units of 
the bit period.
2. The decoding may depend upon the last decoded bit so this must be 
remembered.
3. Start the decoding when a two bit period spacing (T=2) is found. Then 
the last bit is a ONE.
4. If T=1, the next bit is the same as the last bit.
5. If T=2, the next two bits are ZERO followed by ONE.
6. If T=1.5, AND the last bit = ZERO, then the next bit = ONE.
7. If T=1.5, AND the last bit = ONE, then the next two bits are ZERO and 
ZERO."

Autor: Martin Schneider (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke, Christoph, das hilft schon mal ein Stück weiter.

Martin

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ist mit QAM ? ( mit Phasendifferenzkodierung).
Es gibt inzwischen µCs mit Quadraturencoder. Dann braucht man nur noch
einen passenden HF-Teil.

Damit wird bei der geringen Bandbreite des Analogtelefons DSL
übertragen (256 QAM). Hat allerdings einen kleinen Nachteil, was
die Störsicherheit betrifft. Man sollte einen Fehlerkorrigierenden
Code für die Daten verwenden. Besonders, wenn man nur in eine Richtung
übertragen kann.

Die Bandbreite hängt ja schließlich von der Anzahl Signalwechsel pro
Zeiteinheit ab. Bei 256 QAM kann man so mit einem Zustandswechsel ein
Zeichen übetragen. Es würde wahrscheinlich auch eine 4 oder 16 QAM
reichen. Muss man entsprechend berechnen, was in dem Anwendungsfall
das Beste ist.

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Effizienz eines Digitalübertragungsverfahrens wird gern als Diagramm 
"Bitfehlerrate zu Rauschabstand" gezeichnet :
http://en.wikipedia.org/wiki/Phase-shift_keying

weitere Wikipedia-Artikel:
http://en.wikipedia.org/wiki/Differential_coding
http://en.wikipedia.org/wiki/Modified_Frequency_Modulation
http://en.wikipedia.org/wiki/Line_code

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matthias wrote:
>
> Was ist mit QAM ? ( mit Phasendifferenzkodierung).
> Es gibt inzwischen µCs mit Quadraturencoder. Dann braucht man nur noch
> einen passenden HF-Teil.

"Nur noch" ist gut...

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas

Ich weiss, wenn man das selber bauen will, dann wird's höllisch.

Aber wenn ich mich recht entsinne gibt es sowas als IC's zu kaufen.
Nur noch 100 Bauteile (Spulen, Cs, SAW, ...) drum rum löten und fertig.
Allerdings kann es sein, dass die Teile nicht leicht zu bekommen sind.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.