Forum: Mikrocontroller und Digitale Elektronik Manchestercode


von Heller (Gast)


Lesenswert?

Hi

Habe gelesen das hier schon viel zu dem Tema steht und hoffe das ihr mir 
helfen könnt.
Ich habe daten in hex vorliegen die ich Manchestercodiert vom PC zum µC 
geben will von da gehts zu einem Sendebaustein.
Nun meine eigentlich ganz simple frage wie kann ich meine daten codieren

vielen dank für eure hilfe

Heller

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


Lesenswert?

Heller schrieb:
> Manchestercodiert vom PC zum µC
Wie stellst du dir das auf der PC-Seite vor?
Hast du da entsprechende Hardware, die das kann?

von Heller (Gast)


Lesenswert?

nein keine hardware ich habe hex daten dich ich per softwar codiere also 
aus deiner 9B wird einen 1001011010011010 und das schicke ich dann zum 
µC

von Hrm (Gast)


Lesenswert?

Und was ist jetzt genau Dein Problem?

von Heller (Gast)


Lesenswert?

wie ich von meinen daten zum manchestercode komme

von Erich (Gast)


Lesenswert?


von Thomas (Gast)


Lesenswert?

warum willst Du Manchestercode vom PC zum µc nehmen, wenn Du nicht weist 
wie es geht? Nimm doch etwas das Du kennst.

von ... (Gast)


Lesenswert?

Vielleicht findest du ein Terminalprogramm, das das unterstützt.

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


Lesenswert?

... schrieb:
> Vielleicht findest du ein Terminalprogramm, das das unterstützt.
Ich würde sagen, dazu braucht man Hardware, die das unterstützt. Für ein 
Terminal ist die Art der hardwaremäßigen Codierung erst mal schnurzegal. 
Das zeigt nur Daten an, die über eine serielle Schnitte in den PC 
hereinkommen. Die Manchester-Codierung spielt sich ganz woanders ab...

>> aus 9B wird 1001011010011010 und das schicke ich dann zum µC
Genau das ist falsch. Du schickst eine 9B zum uC und irgendwer in der 
Signalkette codiert das dann um in 1001011010011010 bevor es auf die 
Leitung geht.
BTW: welche Baudrate willst du denn verwenden?
Und warum unbedingt irgendwas Manchester-Codiertes?

von Reinhard Kern (Gast)


Lesenswert?

Heller schrieb:
> wie ich von meinen daten zum manchestercode komme

Hallo,

du hast es doch selbst schon beschrieben: aus 1 wird 01, aus 0 wird 10. 
Einfacher geht's nicht. Da sich die Anzahl Bits verdoppelt, muss im 
USART die doppelte Baudrate eingestellt werden.

Manchestercode ist aber nur bei synchroner Übertragung sinnvoll und 
üblich und dann macht das der USART per Hardware. Asynchrone Strecken 
mit Manchestercode gibt es meines Wissens nicht, ich lasse mich aber 
korrigieren wenn's garnicht anders geht.

Gruss Reinhard

von Christian R. (supachris)


Lesenswert?

Gerade auf asynchronen Strecken bietet sich Manchester an, weil man aus 
dem gleichspannungsfreien Signal den Takt und die Daten rückgewinnen 
kann. Im Normalfall wird das mit einem XOR erlegigt. Beim Kodieren 
einfach mit dem Bit-Takt verknüpfen. Beim Empfänger tastet man das 
Signal mit z.B. der 8-fachen Frequenz ab, und detektiert mit dem XOR die 
Flanken. Wieso man zwischen PC und µC über die UART sowas machen sollte, 
ist mir allerdings völlig unklar. Weder PC noch µC unterstützen sowas 
direkt.

von ja ist denn schon wieder Freiitag... (Gast)


Lesenswert?

Christian R. schrieb:
> Wieso man zwischen PC und µC über die UART sowas machen sollte,
> ist mir allerdings völlig unklar. Weder PC noch µC unterstützen sowas
> direkt.

Na ja, vielleicht als "Abhörschutz" ? RS232 lässt sich ja einfacher 
mitschreiben.

von Reinhard Kern (Gast)


Lesenswert?

Christian R. schrieb:
> Gerade auf asynchronen Strecken bietet sich Manchester an, weil man aus
> dem gleichspannungsfreien Signal den Takt und die Daten rückgewinnen
> kann. Im Normalfall wird das mit einem XOR erlegigt. ...

Hallo,

mit einem XOR ist das schon möglich, aber in Software? Wie kann man per 
Software mit einem normalen UART Start- und Stopbits manchestercodieren 
bzw. dekodieren? So wollte das nämlich der Fragesteller machen. 
Vielleicht gibt es ja tatsächlich eine Möglichkeit, aber im Moment ist 
mir das zuviel Arbeit, alle möglichen Bitkombinationen zu prüfen.

Gruss Reinhard

von ja ist denn schon wieder Freitag... (Gast)


Lesenswert?

Oh, ich dachte es geht um den Code zum Umwandeln in Manchester? von UART 
war doch erst später die Rede.

@Heller:
schon mal in der Codelibrary geschaut und nach Manchester gesucht?

RC5 ist übrigens auch Manchester Code.

von Reinhard Kern (Gast)


Lesenswert?

ja ist denn schon wieder Freitag... schrieb:
> Oh, ich dachte es geht um den Code zum Umwandeln in Manchester? von UART
> war doch erst später die Rede.

Was bitte nützt ein Manchestercode, wenn man ihn nicht per UART auf die 
Leitung bringen kann? Der Uart fügt Start- und Stoppbit ein, und damit 
ist die Mancherstercodierung hin.

Das ist ungefähr so kurz gedacht, wie wenn man die Farbtemperatur eines 
Ausdrucks ändern will, obwohl man garkeinen Farbdrucker hat.

Gruss Reinhard

von ja ist denn schon wieder Freitag... (Gast)


Lesenswert?

Reinhard Kern schrieb:
> Was bitte nützt ein Manchestercode, wenn man ihn nicht per UART auf die
> Leitung bringen kann? Der Uart fügt Start- und Stoppbit ein, und damit
> ist die Mancherstercodierung hin.

Die Frage nach dem Nutzen wurde ja bisher sowieso nicht beantwortet, 
aber wo steht, das es per UART sein MUSS? Die PC Schnittstelle war ja 
bisher nicht definiert.
Und durch die Start und Stoppbits ist es ja eh kein Manchester mehr, wie 
Du selbst schreibst. Damit scheidet UART ja schon mal aus.

Die einzigen Posts die USART enthalten sind von Dir, bzw. Antworten 
darauf...

Und code zum Umwandeln von Bytes in Manchester Bits ist in der 
Codesammlung vorhanden...

von Wolfgang-G (Gast)


Lesenswert?

>Die Frage nach dem Nutzen wurde ja bisher sowieso nicht beantwortet,
eigentlich doch; in der 1.Frage steht etwas von Sendebaustein
und bei der Funkübertragung von Daten bevorzugt man, soweit ich es in 
Erinnerung habe, Manchestercode, da sich als Mittelwert immer eine 
konstante Gleichspannung ergibt
MfG

von spess53 (Gast)


Lesenswert?

Hi

>Weder PC noch µC unterstützen sowas direkt.

Stimmt zumindest für µC nicht ganz. AT90PWMxxx haben 
Manchester-Decoder/Encoder in Hardware.

MfG Spess

von ja ist denn schon wieder Freitag... (Gast)


Lesenswert?

Wolfgang-G schrieb:
>>Die Frage nach dem Nutzen wurde ja bisher sowieso nicht beantwortet,
> eigentlich doch; in der 1.Frage steht etwas von Sendebaustein
> und bei der Funkübertragung von Daten bevorzugt man, soweit ich es in
> Erinnerung habe, Manchestercode, da sich als Mittelwert immer eine
> konstante Gleichspannung ergibt

Dann lies die ursprüngliche Frage noch mal. Du hast schon Recht, für 
Funksender nimmt man gerne Manchester Code, dazu muss man aber die Daten 
nicht per Manchester Code vom PC zum Controller übertragen, und danach 
wurde gefragt. Es wurde auch nur ein Senderbaustein erwähnt, nicht das 
die Software für den Sender entwickelt werden soll.

Da sich der Fragesteller aber wohl eh schon verabschiedet hat...

von Wolfgang-G (Gast)


Lesenswert?

Nun ja, mit dem Begriff "Sendebaustein" habe ich versucht, Gedanken zu 
lesen und geschlußfolgert, dass er den Sendebaustein mit Manchester Code 
füttern will

MfG

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.