www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Niederfrequenzumtastung mit MEGA8


Autor: cmb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich versuche gerade eine Niederfrequenzumtaszung mit einem MEGA8 
auszuwerten. Das Verfahren besteht aus einem höheren und einem tieferen 
Ton, welche 1 und 0 darstellen. Verwendet wird 1200 und 1800 Hz bei 1200 
Baud.
http://de.wikipedia.org/wiki/Audio_Frequency_Shift_Keying

Hat jemand eine Idee wie so etwas funktionieren könnte?

Danke schonmal für Antworten

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schließe das Signal an den Analog-Komparator an und schalte dessen 
Ausgang auf die Input-Capture-Einheit des Timers 1. Dann kannst Du die 
verschieden langen Periodendauern der Signale messen.

Autor: cmb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Verstehe ich leider noch nicht so ganz. Also das heißt im Prinzip ich 
Messe die Zeit zwischen den Amplituden - somit habe ich meine Frequenz? 
und dann schaue ich einfach wann der Wert steigt oder fällt?

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

welches Kodierung bei Dir verwendet wird mußt Du wissen...

Wenn es z.B. asyncron 8N1 ist und der Ruhepegel 1 (wie bei serieller 
Übertragung üblich) mu0t Du eben auf den Beginn des Startbits warten, 
also Frequenzänderung von 1-Frequenz auf 0-Frequnez.
Dann 1,5 Bitzeiten warten, Frequenz messen, feststellen, ob das Bit 0 
oder 1 ist. Das dann in einer Bitzeit Abstand für alle 8 Bit.

Gruß aus Berlin
Michael

Autor: cmb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also in der Dokumentation finde ich folgendes:

Es werden Datentelegramme von 48 Bit Länge übertragen, in diesen sind 40 
Bit Nutzdaten enthalten. Vor dem Datentelegramm werden zur 
Synchronisation der Empfänger eine Serie von 10 Bits des Wertes „1“ und 
anschließend das Block-Synchronisations-Byte „00011010“ übertragen. Die 
Datenbits werden in Niederfrequenzumtastung in einer Geschwindigkeit von 
1200 Baud übertragen, wobei als Frequenzpaar die Frequenzen 1200 und 
1800 Hz verwendet werden. Eine vollständige Statusübertragung dauert 
insgesamt 0,055s und ist meist nur als kurzes Aufsteuern oder Rauschen 
hörbar. Der komplette Aufbau der Übertragung sieht wie folgt aus:

Bit   Bedeutung
Vorlauf   10 x „1“ Bit und Block-Synchronisation „00011010“ (s.o.)
1-4   BOS-Dienstekennung (4 Bit)
5-8   Länderkennung (4 Bit)
9-16   Ortskennung (8 Bit)
17-32   Fahrzeugkennung (16 Bit)
33-36   Status (4 Bit)
37   Baustufenkennung (1 Bit)
38   Richtungskennung (1 Bit)
39-40   taktische Kurzinformation (2 Bit)
41-47   Redundanz
48   Schlußbit

Ich durchblicke das gerade nicht so ganz. Würde mich freuen wenn mir da 
jemand einen Tipp geben könnte.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gerne. Beispielsweise bei Bit 39-40, taktische Kurzinformation (2 Bit) 
würde ich tippen auf:

  11  Angriff
  10  Verteidigung
  01  Selbstverteidigung
  00  Rückzug

SCNR ;-)

Spaß beiseite: Eigentlich klingt das doch recht einfach: Insgesamt 
besteht die Sequenz aus 66 Bit (10*1 + 8*Sync + 48*Daten). Aus 66 Bit 
dividiert durch 1200 Baud resultiert die Übertragungsdauer von 55ms.

Demoduliert wird die Bitfolge durch eine Erkennung der jeweils 
anliegenden Signalfrequenz innerhalb eines Zeitfensters von einem Bit, 
also 1/1200 Baud bzw. 0,833.. ms. Dazu können einfache (Frequenzmessung, 
Periodendauermessung) bis aufwändige (FFT) Verfahren eingesetzt werden - 
je nach geforderter Störunempfindlichkeit und zur Verfügung stehender 
Verarbeitungsleistung.

Letzendlich wird der Demodulator alle 0,833.. ms ein empfangenes Bit 
liefern. Die insgesamt 18 Initialen und Sync-Bit können verwendet 
werden, um den Start einer Übertragung zu erkennen, und bei Bedarf 
zusätzlich noch, um die Abtastung im Empfänger genau auf die 
Sende-Baudrate einzustellen, falls dort Toleranzen erlaubt sind, und 
nicht von fixen 1200 Baud ausgegangen werden darf.

Die 48 folgende Bit werden (bei 1200 Baud wieder alle 0,833.. ms) 
Schritt für Schritt in ein 6-Byte-Buffer geschoben. Nach dem Ende der 
Übertragung können die Informationen entsprechend der Bit-Zuordnung 
durch die Tabelle aus diesem Buffer extrahiert oder ausgelesen werden - 
beispielsweise mit Hilfe von Maskierungs-, Shift-, Compare- oder 
Move-Operationen.

MfG

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.