Wie funktioniert ein Spectrum Analyzer

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 27 11 2024  13:28:06      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte

Gehe zu Seite ( 1 | 2 Nächste Seite )      


Autor
Wie funktioniert ein Spectrum Analyzer

    







BID = 104099

colaturka

Neu hier



Beiträge: 30
 

  


Hi, ich wollte mir einen Spectrum Analyzer bauen, ich hab schon eine LED Matrix von 8 x 18. Aber ich weiß gar ned wie ein Spectrum Analyzer eigentlich funktioniert...
So stelle ich mir das vor:

Audio-Ausgang des PCs oder Radios mit dem Microcontroller verbinden (Atmel 80bla bla )

Der Mircontroller berechnet dann welche LEDs zu leuchten haben und welche nicht...

Aber wie kann ich die Berechnung machen??
Muss ich da irgendwie die Signale "dekodieren" oder so
wie geht das einfach ??

BID = 104107

Jornbyte

Moderator



Beiträge: 7178

 

  

Dazu brauchst du FFT (Fast Fourier Transformtion).
Infos gibt es hier:

http://ourworld.compuserve.com/homepages/steve_kifowit/fft.htm

_________________
mfg Jornbyte

Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.

BID = 104113

colaturka

Neu hier



Beiträge: 30

aha und was ist ....was macht es ....

BID = 104122

BlackLight

Inventar

Beiträge: 5321

Fourier Transformation:
Transformiert eine Zeit-Funktion in den Frequenzraum(in eine Frequenz-Funktion,
bzw. ordnet einer Funktion eine andere Funktion zu,
bzw. ordnet einem "Signal" seine Frequenzen zu.

Sieh ein Klavierstück als "Signal", die FT davon sind die Noten.

Da man für die FT die Funktion/Signal sehr genau und komplett wissen muss und es nicht gerade schnell geht, die FT zu bilden,
hat man sich eine nummerische Näherung überlegt, die nur ein paar Funktionswerte braucht (2^n) und relativ schnell sowas wie eine FT davon liefert.

Die FFT ist diese nummerische Näherung.


Wenn es dich interesiert, schau dir Fourier-Reihen, Fourier Transformation und FFT in einem Script, Physik-, Mathe- oder Nummerikbuch an.
Man sollte aber schon mindestens mal einen Leistungskurs Mathematik o.ä. besucht haben.

BID = 104131

colaturka

Neu hier



Beiträge: 30

lol das hört sich echt interessant an, aber erstens gibt es bei uns kein LK oder GK mehr, zweitens brauch ich noch eine andere hardware dazu, oder kann der atmel auch verschiedene signal erkennen mit hilfe von FFT?

Wenn ja, dann ist das echt geil , man lernt dabei mathe hihi, kannst du mir dann dann mals sagen wie ich das ins programm einbringen muss....

BID = 104162

Henne02

Stammposter

Beiträge: 493
Wohnort: Aachen
Zur Homepage von Henne02

MCUs haben keine FFT implementiert!!
Das bedeutet, du musst selbst eine solche fast fourier transformation in assembler bewerkstelligen.

Ich halte es für wahrscheinlich, dass du fertigen C-Code als Vorbild findest. Den musst du nur verstehen (viel Spass...), dessen Effizienz hochschrauben und dann wie gesagt in Assembler ausführen.

Bessere Ergebnisse erziehlst du mit DSPs. Diese Prozessoren sind speziell für Signaltransformationen entwickelt, aber teuer und übel zu verbasteln...

Du hast Dich da an ein Hardcore-Thema rangewagt

WinAmp liefert einen FFT-Output. Den kann man einfach über eine DLL anzapfen und dann die Daten über Drucker- oder RS232-Port rausschieben. Mit derart aufbereiteten Daten kommt Dein AVR besser klar...

Ansonsten kann ich Dir nur viel Glück wünschen
Hendrik

BID = 104166

Henne02

Stammposter

Beiträge: 493
Wohnort: Aachen
Zur Homepage von Henne02

Zur Mathe für FFT:
Ich studiere Masch'bau an der RWTH und komme hier in Mathe über die Runden...

Ich habe eine Einführung in DSP-Algorithmen in die Finger bekommen. Die Entwicklung von moving avarage filtern verstehe ich noch beim Überfliegen. FFT in Pseudoassembler geht aber hart an meine Grenzen...

Grüße, Hendrik

BID = 104186

Jornbyte

Moderator



Beiträge: 7178


Zitat :
WinAmp liefert einen FFT-Output. Den kann man einfach über eine DLL anzapfen und dann die Daten über Drucker- oder RS232-Port rausschieben.


Ist das dein Ernst? Bei jeden Lied den Atmel neu proggen?

_________________
mfg Jornbyte

Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.

BID = 104221

Henne02

Stammposter

Beiträge: 493
Wohnort: Aachen
Zur Homepage von Henne02

NEIN!!!! Blos nicht!!

Man schiebt mit einer eigenen vis.dll die FFT-Level der gewünschten Frequenzen über den Druckerport oder den seriellen Port in den AVR und dieser übernimmt nur noch das Demultiplexen auf die LEDs.

Die mcu wird einmal geprogt, dient danach aber als Interface zu einem PC

Grüße, hendrik

- das hört sich doch besser an, oder -

BID = 104254

colaturka

Neu hier



Beiträge: 30

aha....ok wenn ich jetzt FFT mit Asm mache, blickt "er" auch dann durch welche Signalstärke ankommt.
Also ein µC versteht ja auch nur High oder Low, ich kapier dann nicht soo wie "er" dann zwischen einem "schwachen" High oder "starken" High unterscheiden kann....

BID = 104255

colaturka

Neu hier



Beiträge: 30

mit DSP lieber ned ....schon Assembler, ich will ASM jetzt mal einigermaßen beherschen.....

BID = 104295

MinceR

Stammposter



Beiträge: 277

neneneeeee, das was henne02 meint ist eine art tool was du mit winamp verbindest. dein winamp macht dann alles automatisch. somit kannste aber nur das von deinem pc gerade abgespielte musik anzeigen lassen.
ist also eine visualisierung statt auf dem monitor auf einem zusätlichen LCD.
der µC empfängt dann bereits vom pc daten in die richtung 100hz viel /200hz wenig/ usw usw. der wandelt die daten dann nur so um das das LCD die daten auch rafft.

meines wissens gibts auch tools die das ohne µC schaffen. also wo der PC direkt daten auswirft der dein LCD rafft.

ist aber alles wie gesagt eine einfache visualisierung. kannst dir je nachdem welches zusatztools du für winamp nutzt genausogut den namen der MP3 sowie bitraten oder sonstige informationen der gerade abgespielten mp3 anzeigen lassen.

wenn du einen spectrum analyser selber entwickeln und bauen willst der einen analogen eingang hat und alles verträgt sag ich nur: " viel spass" ohne den wirstes schnell dir ausm kopf schlagen.
ach ein µC mit analog zu digital konverter (ADC) kann auch "spannungen messen" einfach gesagt.

falls du nur wie oben gemeint ne visualisierung haben willst http://www.jalcds.de

falls du ne etwas besseres haben willst mitdem man schon etwas arbeiten kann solltest mal nach "winscope" gucken. ein ein oszilloscop proggi das den eingang der soundkarte nutzt. hat auch einen spectrum analyser drin.. brauchst nur einen spannungsteiler damit du dir die soundkarte nicht schiesst. sieht zwar scheisse aus aber man kann ein wenig damit messen...

BID = 104324

Henne02

Stammposter

Beiträge: 493
Wohnort: Aachen
Zur Homepage von Henne02

Aber wenn das ganze auf LEDs demultiplexen willst, ist doch wieder Zeit für eine mcu (oder 30shift register...)

Grüße, Hendrik

ansonsten: wenigstens MinceR versteht mich...

BID = 104398

colaturka

Neu hier



Beiträge: 30

joooo genau das blinkenleds hab ich schon gebaut, hab sogar eigene software dafür geproggt in delphi hihi hat alles geklappt, nur jetzt will ich das teil mit µC machen, denn ich möchte ASM können.
Und außerdem will ich das ans bsp autoradio anschließen.

Sooo nun muss ich halt wissen ob man sowas mit dem µC machen kann, so ich das mitbekommen habe geht das auch.

Nur ich möchte halt wissen wie das soo funktioniert, vom prinzip her!!

BID = 104463

tixiv

Schreibmaschine



Beiträge: 1492
Wohnort: Gelsenkirchen

Du wirst um das Signal in den UC zu bekommen einen AD Wandler brauchen. Manche typen haben bereits einen eingebaut, ansosnten kann man aber auch einen externen anschliessen. Dann liesst Du eine kurze Zeit lang ein Stück von dem Audio Signal ein, und speicherst es zwischen (da wirst Du allerdings Probleme bekommen, da dafür das interne Ram vom Prozessor wohl nicht reichen wird). Dann lässt Du dadrauf den FFT los, der Dir dann die Pegel der einzelnen Frequenzen errechnet.
Du wirst wohl noch ein externes RAM brauchen.


      Nächste Seite
Gehe zu Seite ( 1 | 2 Nächste Seite )
Zurück zur Seite 0 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 20 Beiträge im Durchschnitt pro Tag       heute wurden bisher 0 Beiträge verfasst
© x sparkkelsputz        Besucher : 182412129   Heute : 4112    Gestern : 7797    Online : 283        27.11.2024    13:28
4 Besucher in den letzten 60 Sekunden        alle 15.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0343019962311