Fragen zur FFT-Berechnung auf einem PIC Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte
Autor |
Fragen zur FFT-Berechnung auf einem PIC Suche nach: pic (2058) |
|
|
|
|
BID = 746644
Racingsascha Schreibmaschine
    
Beiträge: 2247 Wohnort: Gundelsheim
|
|
Hallo Leute,
ich bin gerade dabei, eine FFT-Routine auf PIC-Hardware zu entwickeln. Als Vorlage für den Algorythmus habe ich ein Stück Pseudocode auf Wikipedia gewählt. Der grundsätzliche Programmablauf ist mir klar, nur bei der Berechnung von xlinks,neu und xrechts,neu wirds kritisch. Bei Sprut wird die Verhackstückung der einzelnen Samples für "Dummies" erklärt, da werden Vektoren (also die Samples aus Real- und Imaginärteil des Eingangssignals) gedreht und addiert. Das addieren ist ja offensichtlich, nur der Term
verschliesst sich mir aufgrund nur rudimentär vorhandenen Wissens über das Rechnen mit imaginären Zahlen. Er muss wohl für die Drehung zuständig sein, wobei der Bruch quasi den Winkel angibt. Kann man diesen Term als
auffassen oder stell ich mir das zu einfach vor?
Zur Erzeugung der komplexen Samples hat Sprut auch was, er samplet das Eingangssignal mit der 4fachen Samplingrate und wirft dann die Hälfte davon weg, die andere Hälfte wird als Real- und Imaginarteil behandelt. Er beschreibt diese Methode als unsauber, warscheinlich weil Real- und Imaginärteil nicht zur gleichen Zeit gemessen werden. Ist dieser Fehler vernachlässigbar oder kommt man ohne große Einbußen in der Qualität nicht um Mischer etc. herum?
_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie. |
|
BID = 746730
perl Ehrenmitglied
       
Beiträge: 11110,1 Wohnort: Rheinbach
|
|
Zitat :
| bin gerade dabei, eine FFT-Routine auf PIC-Hardware zu entwickeln. | Du bist sicher, dass du wirklich FFT machen willst und nicht etwa DCT oder Goertzel?
Hast du denn einen, der die Bit-reverse-Adressierung beherrscht und genügend RAM mitbringt?
Dann brauchst du vermutlich das Rad nicht neu zu erfinden, sondern nur in die Applikationsberichte schauen. |
|
BID = 746862
Racingsascha Schreibmaschine
    
Beiträge: 2247 Wohnort: Gundelsheim
|
Zitat :
| Du bist sicher, dass du wirklich FFT machen willst und nicht etwa DCT oder Goertzel? |
Komplexe Mathematik werd ich wohl überall machen müssen, also sollte es keinen großen Unterschied machen, zudem ist die FFT imho das "bekannteste" Verfahren zur Umrechnung eines Signals vom Zeit- in den Frequenzbereich.
Ich wollte das mit einem PIC18 machen, die haben genug RAM und einen 8bit Hardwaremultiplizierer. Die Adressierung mach ich entweder per Tabelle oder mit einer wilden shift-Orgie  So wahnsinnig hochauflösend will ich auch garnicht werden, 256 Frequenzen reichen völlig aus, die Samples wollte ich mit 8bit auflösen.
Ich hab hier einen Beispielcode für eine FFT, sie läuft auf einem PIC17, einer den PIC18 nicht unähnliche Familie. Wenn ich mich da ausreichend reingedacht habe, werde ich ihn etwas umschreiben und portieren.
_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.
|
|
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 11 Beiträge im Durchschnitt pro Tag heute wurden bisher 1 Beiträge verfasst © x sparkkelsputz Besucher : 184370736 Heute : 1046 Gestern : 6968 Online : 196 11.6.2025 8:30 4 Besucher in den letzten 60 Sekunden alle 15.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
|
xcvb
ycvb
0.0368580818176
|