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 x
links,neu und x
rechts,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.