FIR filter mit ARM7 zur Tonerkennung

OP #725802
Lesenswert?
• ▲
▼
hi leute,

vielleicht könnt ihr mir weiterhelfen :-)

ich möchte mit meinem Atmel ARM7 (AT91SAM7S64) einen FIR filter zur 
erkennung von Tönen realisieren.

Im speziellen gehts mir darum einen Ton mit 1750Hz zu erkennen.
Soweit so gut.

Hardware, C-Code für den FIR filter, ist soweit verständlich.

allerdings die mathematik dahinter und die einbindung kapier ich nicht 
so ganz, darum weiß ich auch nicht so recht was nach so einem FIR filter 
für werte rauskommen.

ich hab jetzt mal mit einem Programm einen C code für einen Bandpass mit 
200Taps (geht das mit dem ARM7 noch? hab da keinen bezug dazu was ich da 
an rechenleistung benötige...) berechnet. Sieht in der Theorie soweit 
gut aus.
Muss ich da jetzt nach jedem mal samplen des AD-Wandlers die 
filterfunktion aufrufen und den einen gesampelten wert reinschieben? 
oder wie genau funktioniert das dann...?

am ausgang des filters würde ich wahrscheinlich die werte rausbekommen 
welche ich auch rausbekommen würde wenn das filter analog aufgebaut 
wäre... nur wie hilft mir das in der tonerkennung? ich muss ja dann 
sozusagen festellen das hier ein sinus dann anliegt... sollte dann auch 
noch funktionieren wenn störungen im signal sind und der ton relativ 
leise ist, darum ein sehr schmaler bandpass...

vielleicht kann mir wer weiterhelfen! :-)

danke
st0ne

achja: FFT ist mir zu grob, da ich andere frequenzen auch noch erkennen 
möchte...
Gast #725898
Lesenswert?
• ▲
▼
Was willst du nun, den Ton oder "andere Frequenzen"?

Prinzipiell würde ich FIR-Filter wenn es Performance-kritisch ist eher 
auf nem DSP mit einer MAC einsetzen als auf einem ARM7. Hier wäre eher 
ein IIR mit dem ihm eigenen Nachteilen angebracht.
OP #725905
Lesenswert?
• ▲
▼
vorerst mal einen ton, eventuell dann auch 2 verschiedene töne 
erkennen...

DSP hab ich zu wenig erfahrung damit...
ist ja auch nicht zeitkritisch, also muss nicht echtzeit sein, wenn er 
200ms braucht dafür ist das auch ok, falls ers in der zeit überhaupt 
schafft... ;-)
OP #726438
Lesenswert?
• ▲
▼
danke für die tollen links!

der goertzel algorythmus wird mir da sicher weiterhelfen, da ich sowieso 
vor hatte dtmf auch noch zu dekodieren, werde das morgen gleich mal 
testen!

sourcecode werde ich dann nach erfolgreicher funktion natürlich posten, 
dann haben andere auch was davon :-)

gruß st0ne

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.