Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
ich hab wieder mal eine einfache Frage an euch und bitte um Hilfe.
Ich möchte bei einem FIR-Filter das Ergebnis in einem Array anzeigen lassen. Es sollen einfach nur n=4 Schritte gemacht werden und als y(n) in ein Array reinlaufen. Ich schaffe es nun nicht, dass y(n) in die 4 Zellen des Arrays reinläuft, sondern immer nur die erste Zelle überschrieben wird.
(17.09.2011 09:47 )Falk schrieb: Meinst du vielleicht so?
Hallo Falk, danke für das fertige Vi - es funktioniert... Aber was mach ich da bloß falsch? Denn das hab ich auch schon probiert mit diesem Sub-Array. Muss man da irgendetwas initialisieren oder so etwas in der Richtung? Denn wenn ich das genauso nachbaue habe ich wieder das selbe Problem.
Danke dir.
Gruß Hermann
Anzeige
17.09.2011, 15:43 (Dieser Beitrag wurde zuletzt bearbeitet: 17.09.2011 15:44 von Lucki.)
Du hast fast nichts falsch gemacht - außer dass Du den Ausgang hättest indizieren müssen. Gerd hat es Dir gezeigt, das Beispiel von Falk ist umständlicher und bei mir kommt ein falsches Ergebnis heraus. Einfache Probe mit Impulsantwort: Bei 1,0,0,0,0 muß am Ausgang 1,1,0,0,0 herauskommen.
Noch einfacher ist es nur, wenn man das Punkt-zu-Punkt FIR-Filter benutzt:
und am allereinfachsten, wenn man das normale FIR-Filter verwendet, dann fällt die for-Schleife weg.
18.09.2011, 13:06 (Dieser Beitrag wurde zuletzt bearbeitet: 18.09.2011 13:39 von HermannPrechtl.)
(Wobei ich deine Rechnung nicht mit der angegebenen Formel in Verbindung bringen kann...)
Hallo Gerd,
danke für deinen Vorschlag. Ich bekomm das jetzt auch hin, wenn ich auch nicht genau weiß was ich nun falsch mache... Die Formel stimmt nicht? Hättest du einen anderen Vorschlag? Ausgehend von der Formel?
Danke dir.
Gruß Hermann
(17.09.2011 15:43 )Lucki schrieb: Du hast fast nichts falsch gemacht - außer dass Du den Ausgang hättest indizieren müssen. Gerd hat es Dir gezeigt, das Beispiel von Falk ist umständlicher und bei mir kommt ein falsches Ergebnis heraus. Einfache Probe mit Impulsantwort: Bei 1,0,0,0,0 muß am Ausgang 1,1,0,0,0 herauskommen.
Noch einfacher ist es nur, wenn man das Punkt-zu-Punkt FIR-Filter benutzt:
und am allereinfachsten, wenn man das normale FIR-Filter verwendet, dann fällt die for-Schleife weg.
Hallo Lucki,
danke für deine Tipps. Mit der Indizierung meinst du dieses "Enable Indexing"?
Ich hab nun die von dir angesprochenen FIR-Filter ausprobiert, ist eigentlich eine feine Sache, ich komme aber mit den Koeffizienten nicht zurecht. Ich bräuchte ja nur einen Koeffizienten für b=1. Du hast aber drei Zahlen mit 110 eingestellt. Wie ist das zu verstehen? In der Hilfe lese ich raus, dass das wiederum als Array anzusehen ist? Ich komme dabei aber nicht auf mein Ergebnis für y(n) = 0110, bei einer Eingabe von x(n) = 0100.
Danke dir.
Gruß Hermann
18.09.2011, 16:55 (Dieser Beitrag wurde zuletzt bearbeitet: 18.09.2011 16:57 von GerdW.)
Ich sagte nicht, die Formel wäre falsch. Ich sagte: "kann nicht in Verbindung bringen"!
Du hattest eine Formal als Kommentar angegeben. Diese Formel kann ich teilweise wiederentdecken: die Terme "x[n]" und "b*" sind im Blockdiagram enthalten. Aber du multiplizierst b nicht mit "x[n]" und ich sehe nirgends etwas, was auf "^n-1" passt...
Ich sagte nicht, die Formel wäre falsch. Ich sagte: "kann nicht in Verbindung bringen"!
Du hattest eine Formal als Kommentar angegeben. Diese Formel kann ich teilweise wiederentdecken: die Terme "x[n]" und "b*" sind im Blockdiagram enthalten. Aber du multiplizierst b nicht mit "x[n]" und ich sehe nirgends etwas, was auf "^n-1" passt...
Hallo Gerd,
danke für deinen Hinweis, aber ich dachte die Schleife wäre die Verzögerung x^n-1?
Dafür hab ich ja auch für ein x(n)=0100 als Ergebnis y(n)=0110. Mach ich da einen Denkfehler?