Forum: Mikrocontroller und Digitale Elektronik Datenstrom in Atmega8 einlesen


von Christian S. (kruemel)


Lesenswert?

Hallo,

ich möchte gerne einen Datenstrom, der mir über ein Stereo Klinkenkabel 
bereitgestellt wird in einen Atmega8 einlesen und dekodieren.

Es handelt sich dabei um ein Datentelegramm, dass mit 512 Baud 
übertragen wird und mit einer Präambel versehen ist.

Es geht mir nun darum das Signal in den Atmega zu bekommen. Wie muss ich 
das genau machen?
Gibts irgendwo ein Tutorial wo die Grundlagen dazu erklärt werden?

Gruß
Christian

von Karl H. (kbuchegg)


Lesenswert?

Christian S. schrieb:

> Es geht mir nun darum das Signal in den Atmega zu bekommen. Wie muss ich
> das genau machen?

In 3 Schritten.

* zunächst mal die unterste Schicht anpassen
  die elektrischen Parameter so abgleichen, dass ein Signal
  rauskommt, welches in der Spannungslage zu deinem Mega8 passt.
  Wenn dein Mega8 mit 5V läuft, dann heißt das, den Signalpegel
  auf 5V bringen.

* dann die Low Level Signalerkennung erledigen.
  Sprich aus den Signalpegeln müssen 0-en und 1-en werden, die in Bytes
  zusammengefasst werden. Dabei ist natürlich interessant:
  Wo, eigentlich wann, beginnt eigentlich ein Byte und woran kann
  man das erkennen.
  Die Beschreibung des Signalaufbaus auf elektrischer Ebene hilft
  da weiter.

* tja, und dann gehts los aus den Bytes eventuell Datensätze zusammen-
  zustellen, die man einer Fehlerprüfung unterziehen kann.

> Gibts irgendwo ein Tutorial wo die Grundlagen dazu erklärt werden?

Nicht das ich wüsste. Diejenigen, die sich so einer Aufgabe stellen, 
haben normalerweise das Grundwissen, wie man so etwas angeht. Diejenigen 
die es nicht haben, haben zumindest soviel Programmiererfahrung, dass 
sie wissen wie man mit vermeintlich schwierigen Problemen umgeht um sie 
auch ohne Tutorial lösen zu können.

von Düsendieb (Gast)


Lesenswert?

Da musst Du noch mehr Infos liefern, wenn Dir geholfen werden soll.

Wie ist der Spannungslevel?
Woher kommt das Telegramm?
Wie ist das Telegramm aufgebaut?

"Stereo Klinkenkabel" spricht nicht für einen 5V Signalpegel.

Axel

von Phantomix X. (phantomix)


Lesenswert?

Abgesehen davon, dass Klinkenkabel nicht sehr schön für einen Datenbus 
sind (Beim reinstecken / rausziehen schließt du evtl. den Bus kurz), 
fehlt wie schon gesagt jede Info, was für einen Bus du da hast.


Layer 1
- Signalpegel?

- OK 512 Baud, das lässt mich in Verbindung mit dem Stereokabel auf 
entweder RS232 oder einen differentiellen Bus schließen. Reine 
Spekulation, weißt du es genauer?

Layer 2
- Präambel ist dann schon das nächst höhere Layer, d.h. wird in Software 
verarbeitet

von Christian S. (kruemel)


Lesenswert?

Hallo,

also hier nochmal ein paar Informationen.
Es handelt sich dabei um ein Funksignal, das mittels 
Diskriminatorausgang an einem Funkscanner abgegriffen wird und 
normalerweise der Soundkarte eines Rechners zugeführt wird und dort dann 
meist per Software ausgewertet wird.

Der Signalpegel liegt also in den max Bestimmungen der Soundkarte, ca. 
1-2 V.

Bei dem Telegramm handelt es sich um das so genannte POCSAG Protokoll.
Ich hatte in einem anderen Post schon angesetzt nur das war Assembler 
und etwas viel.Würde das ganze gerne in C programmieren. Mich 
interessiert daher erstmal wie ich die Daten in den Atmega bekomme und 
über welchen Pin so etwas gemacht wird.

Hier noch ein Link:

http://hem.passagen.se/communication/pocsag.html

Gruß
Christian

von Christian S. (kruemel)


Lesenswert?

Sry für den Doppelpost.
Erst nochmal danke für eure Antworten.

Ich habe nochmal ein bisschen gegoogelt, eignen sich Basic Programme für 
UART für ein Beispiel solch einer Dateneinlesung?

Oder kann man das nicht vergleichen. Im Prinzip bräuchte ich eben nur 
die Receiveseite.

Gruß
Christian

von Karl H. (kbuchegg)


Lesenswert?

Christian S. schrieb:

> Ich habe nochmal ein bisschen gegoogelt, eignen sich Basic Programme für
> UART für ein Beispiel solch einer Dateneinlesung?

Nein und ja

Was du da hast ist völlig eigenständig.
Du kannst dir die Programme ansehen und sie studieren, vorausgesetzt sie 
benutzen eine Software-UART mit Autobauding.
Das wars dann aber auch schon mit den Gemeinsamkeiten.

von Christian S. (kruemel)


Lesenswert?

Okay,
dann schau ich mir erstmal die sachen an als Basis.
Irgendwie is das ein undurchsichtiges Thema...

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.