Forum: Mikrocontroller und Digitale Elektronik Niederfrequenzumtastung mit MEGA8


von cmb (Gast)


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

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


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.

von cmb (Gast)


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?

von Michael U. (amiga)


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

von cmb (Gast)


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.

von Gast (Gast)


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

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.