mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP FFT Gesucht - FixPoint, fft/ifft


Autor: Der Albi (der-albi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Mein derzeitiges Projekt benötigt eine FFT :-)
Es wird FixedPoint und min 16bit Genauigkeit gebraucht.
Vorhandensein muss eine fft und eine inverse fft.
Ich habe schon KissFFT versucht, aber mit deren Daten komme ich nicht 
zurecht.
Einerseits erzeugt kiss_fftr mehr Daten, als man reingibt (Bei 32 
InputSamples kommen 17 komplexe Werte heraus!?) andererseits muss man 
nach der inversen fft "kiss_fftri" alle Zeitwerte mit der anzahl der 
Inputsamples multiplizieren. d.h. bei 32 Samples gehen mit 5bit 
genauigkeit flöten :-/
Unschön.

Hier im Forum habe ich eine FixedPoint-FFT gefunden.. aber diese geht 
auch nicht wie gewüscht.
Dort kommen aus 32 Inputsamples 32 imaginäre Zahlen heraus.. 
normalerweise müssten sich die Werte am dem 16. Wert wiederholen.. tuen 
sie aber nicht ganz

Gibt es eine 16bit ganzzahl FFT die mir auch nur InputSample/2 nötige 
imaginäre Ergebnisse liefert, sodass ich daraus das originalsignal 
wiederherstellen kann?

32Bit ist auch ok.. es werden halt nur 16Bit genutzt.

Autor: Der Albi (der-albi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Grml. Ich hoffe es ist rübergekommen: eine reele FFT ist gesucht :-)

Autor: Björn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
eine "reele" FFT gibt es nicht...

Autor: Der Albi (der-albi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Och menno.. ich glaube jeder weiß, was gemeint ist... weiter bin ich 
jetzt immernoch nicht :-(

Autor: Der Albi (der-albi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Och leute.. ihr habt doch bestimmt irgendwo was... nich?

Autor: eric (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: eric (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich habe schon KissFFT versucht, aber mit deren Daten komme ich nicht
zurecht.

??

eric.

Autor: Der Albi (der-albi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lies nochmal:

Einerseits erzeugt kiss_fftr mehr Daten, als man reingibt (Bei 32
InputSamples kommen 17 komplexe Werte heraus!?) andererseits muss man
nach der inversen fft "kiss_fftri" alle Zeitwerte mit der anzahl der
Inputsamples multiplizieren. d.h. bei 32 Samples gehen mir 5bit
Genauigkeit flöten :-/
Unschön.


Und das will ich nicht.

Autor: eric (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> (Bei 32 InputSamples kommen 17 komplexe Werte heraus!?)

Komplexe Ergebnisse für NUMBER_OF_SAMPLES / 2 ist korrekt für DFT.


Vielleicht hilft Dir die FFT aus folgendem Projekt weiter:

http://www.codeproject.com/KB/audio-video/oscilloscope.aspx



eric.

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Der Albi (der-albi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die FFT kenn ich auch schon. Das ist die, deren Ergebnisse nicht 
spiegelbar sind... oder müssen die das gar nicht sein?? (kann ja auch 
sein, dass ich falsch liege)
Ich dachte bisher, das aus 32inputsamples 16 Imaginäre Zahlen werden.
Eine FFT spuckt aber 32 imaginäre Zahlen aus.. dafür sollten die nach 
dem 16. Element gespiegelt sein.. dachte ich zumindest :-/

Autor: RST (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

ich bin auf eine FFT gestossen, die im C Source Code vorliegt und 
außerdem noch gut dokumentiert ist. Es handelt sich um die Applikation 
Note AN3722 von Maxim.

Dort wird auf Basis des MAXQ2000 eine komplette FFT beschrieben.

http://www.maxim-ic.com/appnotes.cfm/an_pk/3722

Hat jemand Erfahrungen mit dieser FFT und dies vielleicht noch mit 
PIC18Fxxx ?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.