Ich möchte von einem Elektretmikrofon ein Audiosignal mittels FFT analysieren. Das Audiosignal werde ich verstärken und über einen Bandpass auf den Frequenzbereich zwischen 300-800Hz filtern. Meien Frage wäre woher weiß ich welchen Atmega 8/16 ich verwenden soll und wie ich am Besten die FFT realisiere, sodass ich das Spektrum analysieren kann.
Soll die FFT in "echtzeit" ablaufen?
>> 300-800Hz Bandpass über FFT Spektrum erzeugen
soll die FFT jetzt auch die Filterfunktion übernehmen oder
hängt ein digitales Filter vor der FFT?
Nein sie müsste nicht echtzeitfähig sein
Der Bandpass wird extern realisiert und somit vor dem FFT vorgeschalten
ATmega und FFT? Die ideale Kombination ist es auch bei nicht Echtzeit nicht.Hängt natürlich von der FFT Auflösung ab, aber so 2048 Punkte sollten es wohl sein. Selbst bei inplace Berechnung macht das 4096 Werte + ein Scratch Speicher mit 2048 Werten. Hmmm... gute 6K Werte wohl mit mehr als 8Bit, also insgesamt gute 12KB Speicherbedarf.Rechenzeit wird sehr ausgedehnt sein (mehrere Sekunden). Es hat schon einen Grund, warum es DSP's gibt. Grüsse
Also wäre es am besten wenn man die FFT über einen DSP macht?
@Markus Dafür sind die DSP's gemacht. Fixpoint-DSP's wie die ADSP21xx Serie reichen dafür aus und kosten nicht die Welt. Deinen ATmega kannst dann immer noch einsetzen, weil diese DSP's haben keinen UART und müssen irgendwie gebootet werden. Oder du nimmst gleich ein Blackfin-Board, die laufen auch mit Linux und haben auch MC Eigenschaften. Grüsse
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.