(→Grundlagen) |
|||
Zeile 97: | Zeile 97: | ||
[[Kategorie:Quellcode C]] | [[Kategorie:Quellcode C]] | ||
[[Kategorie:Quellcode Assembler AVR]] | [[Kategorie:Quellcode Assembler AVR]] | ||
+ | |||
+ | === Weblinks === | ||
+ | |||
+ | *[http://home.no.net/fenja256/dtmfpro Mehrfrequenzwahlverfahrenprogramm ''DTMFpro'' - Freeware] | ||
+ | *[http://www.vanity-rechner.de/dtmf.html Das Tonwahlverfahren (MFV/DTMF)] | ||
+ | *[http://www.matthis.thorade.de/mfv/ MFV-Töne anhören und ausprobieren (mit Flash&MP3, deutsch)] | ||
+ | *[http://www.dsptutor.freeuk.com/dtmf/ToneGenerator.html MFV-Töne anhören und ausprobieren - engl.] | ||
+ | *[http://margo.student.utwente.nl/el/phone/dtmf.htm DTMF-FAQ] | ||
+ | *[http://www.ing-pfenninger.ch/dtmfa.html Gerät zur DTMF-Anzeige selber bauen] | ||
+ | *[http://www.mhessler.de/mfvfaq/mfvfaq.html Anleitung zur Umstellung älterer Telefone der ehemaligen deutschen Bundespost/Telekom auf MFV] |
Aktuelle Version vom 29. August 2007, 16:34 Uhr
Dieser Artikel ist noch lange nicht vollständig. Der Auto/Initiator hofft das sich weitere User am Ausbau des Artikels beteiligen.
Das Ergänzen ist also ausdrücklich gewünscht! Besonders folgende Dinge würden noch fehlen: C und Assembler-Programmbeispiele |
DTMF - (Dual Tone Multiple Frequency: „Doppeltonmehrfrequenz“) ist die bei der analogen Telefontechnik gebräuchliche Wähltechnik und ist das heute überwiegend in der Telefonvermittlungstechnik genutzte Verfahren zur Übermittlung der Rufnummer an das Telefonnetz oder einer Telefonanlage.
Inhaltsverzeichnis
Grundlagen
Je nach Telefonziffer werden 2 Frequenzen üblagert.
1209 Hz | 1336 Hz | 1477 Hz | 1633 Hz | |
697 Hz | 1
|
2
|
3
|
A
|
770 Hz | 4
|
5
|
6
|
B
|
852 Hz | 7
|
8
|
9
|
C
|
941 Hz | *
|
0
|
#
|
D
|
Diese Töne werden von der Telefonvermittlung erkannt und der Teilnehmer mit der entsprechenden Nummer verbunden. Wobei die Buchstaben A-D nur bei speziellen Anwendungen verwendet werden.
Jede Zeile repräsentiert einen tiefen Ton, jede Spalte einen hohen. Wenn die Taste „5“ gedrückt wird, ergibt sich also ein Ton aus der Überlagerung der Tonfrequenzen 1336 und 770 Hz. Damit die Vermittlungseinrichtung die gedrückte Taste sicher erkennen kann, sollte Dauer des Tones mindestens 70 Millisekunden betragen.
Die Generierung der MFV-Töne mittels zweier Sinusgeneratoren für die Spalten- und Zeilenfrequenz ist verhältnismässig einfach. Zur Detektion der einzelnen Frequenzen wird meist der Goertzel-Algorithmus angewendet, ein Algorithmus zum Erkennen einzelner Tonfrequenzen (Spektralkomponenten) basierend auf der diskreten Fourier-Transformation.
MFV ist ein In-Band-Signalisierungsverfahren, das heißt die Signale befinden sich innerhalb des normalen Sprachfrequenzbandes und können vom Telefonierenden mitgehört werden. Daher könnten natürliche Geräusche (zum Beispiel Musik) von der Vermittlungsstelle ebenfalls als Signal aufgefasst werden. Die Frequenzen von MFV-Signalen wurden daher so gewählt, dass sie Dissonanzen erzeugen, die mit sehr geringer Wahrscheinlichkeit in der Umgebung eines Telefons auftreten.
Manche Vermittlungsstellen mit einfacher Technik, insbesondere von nordamerikanischen Herstellern, nehmen während einer bestehenden Verbindung keine Mehrfrequenzkommandos mehr entgegen. Zur Steuerung netzseitiger Dienstmerkmale (wie zum Beispiel Dreierkonferenz oder Makeln) muss dann zuvor die bestehende Verbindung durch eine definierte Unterbrechung, die als Flash oder Hook-Flash bezeichnet wird, in den Steuerungsmodus gewechselt werden. Für die definierte Unterbrechung ist häufig auch die R-Taste vorgesehen. ISDN-Anschlüsse und andere digitale Telefonsysteme wie VoIP benötigen kein MFV zur Übertragung der Rufnummer an die Vermittlungsstelle, da bei diesen Systemen die einzelnen Ziffern der Telefonnummer als eine Bitabfolge und nicht im Audioband übertragen werden.
Die Tasten „A“ bis „D“ werden heutzutage kaum noch genutzt; eine Verwendung besteht in der Festsetzung der Priorität eines Gespräches im Telefonsystem Autovon des US-Militärs.
AVR & DTMF
Bascom
Mit Bascom kann man leicht einen solchen Ton generieren:
Dtmfout Syntax: Dtmfout String, Dtmftime
Dabei ist Dtmftime die Dauer des Tones´. Damit ein Telefon den Ton als einen DTMF-Ton erkennt, sollte die Dauer min. 70ms betragen.
Hier ein Programmbeispiel:
$regfile = "2313def.dat" $crystal = 4000000 Dim Counter As Byte Enable Interrupts Do For Counter = 0 To 15 Dtmfout Counter , 200 Waitms 250 Next Counter Wait 1 Loop End
Das obrige Programm erzeugt alle 16 DTMF-Töne nacheinander auf dem OC1 Port eines AVRs. Bascom benützt Timer1 für die DTMF Generierung.
Folgendes sollte beim Programmieren beachtet werden:
Die Reihenfolge ist: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,*,#.
Das bedeutet der DTMF-Wert für die Raute, ist 15. Für die Zahl 3 ist er 4...usw
Autor: hackgreti
Weblinks
- Mehrfrequenzwahlverfahrenprogramm DTMFpro - Freeware
- Das Tonwahlverfahren (MFV/DTMF)
- MFV-Töne anhören und ausprobieren (mit Flash&MP3, deutsch)
- MFV-Töne anhören und ausprobieren - engl.
- DTMF-FAQ
- Gerät zur DTMF-Anzeige selber bauen
- Anleitung zur Umstellung älterer Telefone der ehemaligen deutschen Bundespost/Telekom auf MFV