mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Datenstrom in Atmega8 einlesen


Autor: Christian S. (kruemel)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Düsendieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Phantomix Ximotnahp (phantomix) Flattr this
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Christian S. (kruemel)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Christian S. (kruemel)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Christian S. (kruemel)
Datum:

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

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.