10+band audio spectrum analyser

OP #5000317
Guten Tag zusammen
Ich möchte einen Audio Spectrum analyzer bauen doch ich finde nur IC's 
dafür mit 7 Bändern. Jedoch wäre eine 10Band oder mehr Abstufung meiner 
Meinung nach viel besser.

 Die einzige Lösung dafür die mir in den Sinn kommt wären Aktive OPV 
Filter für jedes Band selbst zu machen aber dan habe ich auch keine 
saubere Spannung welche ich mit dem uController auswerten kann um es 
darzustellen. Der MSGEQ7 wäre gut da er das alles beinhaltet aber er hat 
nur 7 Bänder. Im Internet sieht man 2 sorten von Lösungen. Eine ist mit 
2 LA3600 in Serie. Wobei ich nicht verstehe wie man dan auswählt welche 
man nun auslesen will.

Oder per fft was jedoch in Assembler geschrieben werden müsste und was 
ich nicht behersche und für meinen Atmega 2560er habe ich keinen bereits 
geschriebenen code gefunden.
Was kennt ihr für Lösungen?
OP #5000449
Erstmal danke für die Antwort. Ich hatte leider erst jetzt zeit den 
Thread durchzulesen. Die codes darin sind alle in Assembler geschrieben 
und ganz nachvolziehen kann ich das ganze auch nicht. Den Teil mit dem 
Aufteilen der Frequenzen durch kaskadierte filter verstehe ich. Aber dan 
steht man da mit Frequenzbänder welche ca 0.7V oder mehr oder weniger 
haben und müsste diese alle auf einen ADC führen oder wie?
#5000476
Moin,

Naja, das mit dem Assembler ist halt fast zwangslaeufig, wenn man auf 
den AVRs ein bisschen unter Zeitdruck steht. Auf z.B. STM32 wird der 
Kram sicherlich auch in C laufen.
Aber egal wie - bei der Geschichte mit der Filterbank kommt zuerst das 
komplette Signal in den ADC; die ganze Filterei ist ja dann schon 
digital, d.h. am Ausgang der Filter krieg ich auch immer nur einen 
Haufen Zahlenwerte. Die sind schon digital. Die kann man dann z.b. 
quadrieren und aufsummieren (um den Effektivwert zu erhalten) und 
logarithmieren (um die Anzeige in dB zu erhalten) und entsprechend auf 
die LED-Matrix multiplexen.
Der Witz ist ja, dass das alles mit einem µController funktioniert - 
also auf der einen Seite kommt das Analogsignal rein und auf der anderen 
Seite haengen schon die LEDs der Anzeigematrix.
Diese Filter sind auch steilflankiger und trennen die Kanaele daher 
besser als das "normale" Analogfilter koennen oder eine FFT kann.

Gruss
WK
#5000578
Moin,

Klar kann man auch per Software filtern. Das ist ein Grossteil der 
digitalen Signalverarbeitung.
Es ist halt deutlich weniger Loetarbeit, wenn du >= 10 Filter in 
Software baust anstatt analog mit z.B. 10-40 OpAmps oder gar Spulen und 
Kondensatoren. Und der Gag bei der Filterbank in meinem Analyzer ist 
halt der, dass die einzelnen Filter dann auch noch alle gleich sind und 
zusammen nur doppelt so viel Rechenzeit brauchen, wie das erste Filter. 
Und nicht 10x so viel.
Natuerlich gibts auch Leute die sagen: Is mir alles wurscht, ich loete 
viel lieber als zu programmieren. Die sind dann halt mit einem Haufen 
OpAmps oder Spulen gluecklicher.

Gruss
WK

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.