mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik DTMF


Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

ich habe eine Aufgabe, die unter anderem folgendes Problem beinhaltet.
ich habe einen AudioAusgang, der DTMF-Signale sendet, die ich nun 
mittels eines "Atmel ATmega 103 (STK300)" erkennen soll, um darauf hin 
entsprechende Befehle zu verarbeiten.

Ich wollte nun Fragen, ob irgendwo CodeBeispiele für eine 
DTMF-Signal-Erkennung zu finden sind, oder ob mir jemand erklären 
könnte, wie eine DTMF-Erkennung zu bewerkstelligen ist.

(ich programmier in C mit AVR CodeVision)

(wenn garnichts geht, würde ich mich auch mit Assembler anfreunden)

danke
Dieter

Autor: str (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Dieter

da gibt es ein Chip der kann die DTMF Signale wieder
decodieren und gibt die über 8 Bit Schnittstelle
wieder aus.
Das brauchst du dich nur noch um die richtige
zuordnung kümmern

str.

Autor: gero bojens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der DTMF Dekoder (Mitel MT8870D) ist ein spezieller IC der eigens zur 
Dekodierung von DTMF-Tastentöne konzipiert ist.  Er filtert selbsttätig 
nur die DTMF-Töne aus und gibt ein 4 Bit Wort aus sobald er sie erkannt 
und dekodiert hat und gibt dies über den Pin StD zu erkennen.


gruß
gero

Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das klingt ja alles schön und gut, meine Aufgabe besteht aber darin, das 
mit dem "Atmel ATmega103" zu bewerkstelligen, da gleichzeitig noch 
andere Aufgaben mit implementiert werden müssen.

Ich wollte einfach ein Chinchbuchse an den A/D-wandler schließen, und 
den Rest Softwaremäßig lösen.
Genaugenommen soll ich es sogar Softwaremäßig lösen.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das in Software zu machen ist bestimmt kein Anfängerprojekt.

Das müßte über ne FFT gehen, d.h. ein Frequenzspektrum aufnehmen und 
dann 2 Maxima suchen und diese mit der Tabelle der möglichen 
Frequenzkombinationen vergleichen.

Dann braucht man noch spezielle Filterfunktionen, damit Sprache und 
andere Geräusche nicht als DTMF fehlinterpretiert werden.

Damit dürfte in Assembler der 103 bei 4MHz aber schon maximal 
ausgelastet sein, wenn ers denn überhaupt schaffen sollte.

Deshalb gibt es ja diese Mitel-ICs für sowas.


DTMF erzeugen geht mit nem AVR (siehe Atmel-Seite).
Aber fürs wieder rausfiltern und dekodieren hab ich noch nirgends ne 
Software gesehen.


Peter

Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
na gut, wenn ich nun so einen Mitel-IC verwende?
wie muss ich mir das dann vorstellen?
irgendwie muss die ganze geschichte am ende trotzdem in den 103.

Autor: Meinrad Götz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Texas Instruments brachte 1997 eine Applikationsschrift mit dem Titel 
"DTMF Tone Generation and Detection: An Implementation Using the 
TMS320C54x".
Vielleicht hilft dir das ja weiter. Darin ist so einiges zu DTMF, deren 
Erzeugung und digitaler Filterung und damit Rückgewinnung beschrieben. 
Es ist auch die gesamte Software zur generierung und dekodierung der 
Signale enthalten, aber natürlich nur für den DSP. Dass diese 
Applikation mit einem DSP realisiert wurde hat sicher den Grund der auch 
aus den obigen Kommentaren entnommen werden kann: Ein Mikrocontroller 
hat einfach nicht die Rechenpower für diese Aufgabe. Für einen 
Mikrocontroller ist das eine echt harte Nuss. Wenn Du das mit einem µC 
hinbekommst, dann alle Achtung.

Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
na ich würde sagen, ihr habt mich schon überzeugt, daß ich es wohl nicht 
mit einen controller mache.

darum würde mich nun interessieren, wie die sache mit so einem Mitel-IC 
genau funktioniert, da ich ja trotzdem daten für meinen controller 
brauche.

ist auf dem Mitel-IC schon ein programm drauf, was die DTMF-signale 
erkennt?
was spuckt dieser dann für daten aus?

Autor: Andreas Tekautz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo dieter,

ich würde vorschlagen du liest dir mal das datenblatt durch, dann müsste 
dir eigentlich alles klar sein.
zu finden ist es hier:
http://www.ee.mut.ac.th/datasheet/MT8870d.pdf

lg andi

Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mal ne ganz ander frage.

wo kann ich überhaupt son Mitel IC (MT8870C oder MT8870D) kaufen?

Autor: Andreas Tekautz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
du bekommst ihn z.b. bei rs-components:
www.rs-components.de
für €2,32

lg andi

Autor: Dieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
oh tschuldigung, ich hab bei conrad nach MT8870 gesucht, aber man 
findets nur als MT 8870.

Autor: mohammad (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
plz tell me what can i use c compiler for generate dtmf in avr
thanks

Autor: Rahul Der trollige (rahul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
look at the atmel applicationnotes. there is one that discribes how it
works.

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.