mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Einfacher IIR-Filter für langsamen UC verbessern


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Rechenfreak (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich brauche eine Art Frequenzweiche für einen AVR. Geht in die Richtung 
Beitrag "Audio Equalizer"

Als einfachste Rechnung habe ich einen TP gebaut, der so funktioniert: 
TPWert(t+1) = TPWert(t)*0,9 + Input(t)*0,1 was zu einem -6dB Verhalten 
oberhalb der GF führt. Als Hochpassausgang nehme ich einfach den Rest, 
also HPWert(t+1= = Input(t)  - TPWert(t+1).

Frage 1: Ist das so ok, oder muss ich den TPWert(t) nehmen, um die 
Differenz zu bilden?

Ich weiß, dass ich den HP auch anders, getrennt berechnen kann, muss 
aber in dem Fall sicherstellen, dass zu jedem Zeitpunkt die Summe aus 
beiden Werten wieder ein weißes Signal ergibt, so als wäre es 
ungefiltert.

Frage 2: Kann ich das kaskadieren, also einfach zwei 
hintereinanderschalten?

Wie muss ich die Dämpfung/Trennung einstellen? Kleiner, Grösser oder 
genau gleich dem Wert im ersten Filter?  Beim Probieren scheint es so zu 
sein, dass der Knick beim gleichen Wert auch an derselben GF liegt und 
ab dann die erwünschten 12dB auftreten.

Kann ich auch dann wieder einfach die Differenz zwischen dem Input und 
dem zweifach gedämpften TP bilden?

von Christoph db1uq K. (christoph_kessler)


Bewertung
0 lesenswert
nicht lesenswert
Zur Berechnung analoger Frequenzweichen habe ich hier mal Literatur 
gepostet:
Beitrag "Re: Rechtecksignal in Tiefpassfilter"

von Dergute W. (derguteweka)


Bewertung
0 lesenswert
nicht lesenswert
Moin,

Rechenfreak schrieb:

> Als einfachste Rechnung habe ich einen TP gebaut, der so funktioniert:
> TPWert(t+1) = TPWert(t)*0,9 + Input(t)*0,1 was zu einem -6dB Verhalten
> oberhalb der GF führt. Als Hochpassausgang nehme ich einfach den Rest,
> also HPWert(t+1= = Input(t)  - TPWert(t+1).

Hm - 0.9 und 0.1 sind so dezimal, mit 0.875 und 0.125 ging's sicher 
schneller ;-)

> Frage 1: Ist das so ok, oder muss ich den TPWert(t) nehmen, um die
> Differenz zu bilden?

So ausm Bauch raus koennt's schon passen, guck' einfach, ob wenn du in 
den Apparat einen Dirac reingibst auch die Summe von TP und HP Antwort 
einen Dirac ergeben.

> Ich weiß, dass ich den HP auch anders, getrennt berechnen kann, muss
> aber in dem Fall sicherstellen, dass zu jedem Zeitpunkt die Summe aus
> beiden Werten wieder ein weißes Signal ergibt, so als wäre es
> ungefiltert.
Wenn du das so haben willst, dann passt das schon so.

> Frage 2: Kann ich das kaskadieren, also einfach zwei
> hintereinanderschalten?
Ja kannst du schon machen, aber da kommt nix allzu dolles dabei raus. Du 
kannst damit nur immer einen reellen Pol in deinem Filter kriegen, 
kein kongungiert-komplexes Polpaar. Das brauchts aber bei allen 
"vernuenftigen" Filterapproximationen mit Ordung >1.

> Kann ich auch dann wieder einfach die Differenz zwischen dem Input und
> dem zweifach gedämpften TP bilden?
Ja.

Gruss
WK

von Rechenfreak (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Danke für die bisherigen Antworten.

Dergute W. schrieb:
> damit nur immer einen reellen Pol in deinem Filter kriegen,
> kein kongungiert-komplexes Polpaar.
Danke für diesen input. Dazu muss ich aber nochmals Literatur wälzen, 
was das nochmals genau war. Ich frage dann später gfs. nochmals nach.

Christoph db1uq K. schrieb:
> Zur Berechnung analoger Frequenzweichen habe ich hier mal Literatur
> gepostet:
> Beitrag "Re: Rechtecksignal in Tiefpassfilter"
Ok, aber das bezieht sich doch auf reelle Bauteile. Kriege ich das auch 
in überschaubare SW hinein?

von Joe F. (easylife)


Bewertung
0 lesenswert
nicht lesenswert
Um bei der Frequenzweiche einen Übergang zu erreichen, der möglichst 
keinen Pegelsprung oder Phasenänderung hat, bietet sich ein 
Linkwitz-Riley Crossover an. Digital lässt sich dieser mit 4 IIR 
Butterworth Filter implementieren (-> LR4). Jeweils 2 hintereinander 
geschaltete Filter werden als TP, 2 als HP verwendet.
Als Filter-Algorithmus sollte man die klassiscche Bi-Quad 
Implementierung verwenden, für die Koeffizienten-Berechnung finde ich 
dieses Excel-Sheet sehr praktisch:
https://www.minidsp.com/images/fbfiles/files/All_digital_coefs_v1-20101026.zip
https://www.minidsp.com/applications/advanced-tools/advanced-biquad-programming

von Gunar (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Rechenfreak schrieb:

> Ok, aber das bezieht sich doch auf reelle Bauteile. Kriege ich das auch
> in überschaubare SW hinein?

Du als Rechenfreak wirst da keine Probleme haben.

von Rechenfreak (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Gunar schrieb:
> Du als Rechenfreak wirst da keine Probleme haben.
Danke für diesen hilfreichen Beitrag.

Dergute W. schrieb:
> Wenn du das so haben willst, dann passt das schon so.
Das war der erste Denkansatz. Allerdings sehe ich, dass es bei 
Rechtecken zu enormen Sprüngen kommt, weil der Tiefpassanteil in der 
Phase wegläuft und das Abziehen zu einem gewaltigen Offset führt.

Joe F. schrieb:
> Linkwitz-Riley Crossover an
Eigentlich wollte ich das möglichst einfach halten, wegen der 
Rechenzeiten.

Würde denn dieses Filter das Problem der Phase beheben? D.h. kommt der 
HP dann auch so raus, dass er phasenverschoben ist und ohne Offset kommt 
- trotzdem aber die Summe perfekt passt?

von Dergute W. (derguteweka)


Bewertung
0 lesenswert
nicht lesenswert
Moin,

Rechenfreak schrieb:
> Allerdings sehe ich, dass es bei
> Rechtecken zu enormen Sprüngen kommt, weil der Tiefpassanteil in der
> Phase wegläuft und das Abziehen zu einem gewaltigen Offset führt.

Da kann ich dir nicht folgen. Das klingt komisch. Was stellst du denn 
auf dem Bild dar? Schraubst du da von links nach rechts auch an der 
Grenzfrequenz?

Joe F. schrieb:
> Um bei der Frequenzweiche einen Übergang zu erreichen, der möglichst
> keinen Pegelsprung oder Phasenänderung hat, bietet sich ein
> Linkwitz-Riley Crossover an.

Linkwitz-Riley TP/HP Kombis haben eine (kleine) Beule in der 
Gruppenlaufzeit um die Grenzfrequenz herum. Daher ist die Summer der 
(Dirac)Impulsantworten von HP und TP kein Dirac.
Nochdazu ist der Rechenaufwand fuer so ein "serioeses" Filter (aufm AVR) 
deutlich hoeher.

Gruss
WK

von Gustl B. (-gb-)


Bewertung
0 lesenswert
nicht lesenswert
Dergute W. schrieb:
> Schraubst du da von links nach rechts auch an der
> Grenzfrequenz?

Würde der Rechteck dann nicht an allen Ecken runder werden? Das sieht 
sehr nach Lade- und Entladekurve aus, so als käme Kapazität hinzu.

von Karl K. (karl2go)


Bewertung
0 lesenswert
nicht lesenswert
Rechenfreak schrieb:
> TPWert(t+1) = TPWert(t)*0,9 + Input(t)*0,1

Du rechnest aber hoffentlich nicht mit Floats?

Mit Int wäre es:

tpwert8 := tpwert8 - tpwert8 div 8 + input;

tpwert8 ist 8mal so groß wie der Eingangswert. Das ist nötig um 
Summierung von Rundungsfehlern zu vermeiden. Natürlich muss der 8fache 
Eingangsbereich in die Variable passen.

div 8 macht ein Shiftright, was wenige Takte dauert. Alles andere dauert 
deutlich länger. Teiler muss unbedingt 2^n sein. Mit anderen Teilern 
wird eine Software-Division aufgerufen, die ewig dauert.

Es gibt noch einen Rundungsfehler mit div 8, sind die Werte nur positiv 
kann man das so vermeiden:

tpwert8 := input + tpwert8 - (tpwert8 + 4) div 8;

von Rechenfreak (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Karl K. schrieb:
> Es gibt noch einen Rundungsfehler mit div 8, sind die Werte nur positiv
> kann man das so vermeiden:
>
> tpwert8 := input + tpwert8 - (tpwert8 + 4) div 8;
Die Technik ist mir bekannt, aber es muesste auch für negative Werte 
klappen. Ich runde meistens in einem Schritt und entscheide dann über 
Addition und Subtraktion.


Dergute W. schrieb:
> Schraubst du da von links nach rechts auch an der
> Grenzfrequenz?
Ja sicher, dass ist ein konstantes Rechteck mit variabler Grenzfrequenz 
und zeigt die Aufteilung in tiefe und hohe Frequenzen.

Im Prinzip ist das Ergebnis richtig, weil HP ja aus Eingang - TP 
gebildet wird. Da aber der Eingang auf Phase 0 liegt und der TP 
phasenverschoben ist kommt hintenraus sehr viel offset rein. Es wäre 
wünschenswert, wenn der HP mitverzögert würde. Ich habe aber keinen 
Schimmer wie man das macht und wie das geht.

Dergute W. schrieb:
> Linkwitz-Riley TP/HP Kombis haben eine (kleine) Beule
Das hört sich aber so an, dass das geeigneter sein könnte. Der 
Wiki-Artikel unterscheidet offenbar Butterworth und L-R-Filter und 
zeigt, dass das L-R zweiter Ordnung diese Beule nicht haben soll. Oder 
beträgt die nur nicht die in der blauen Kurve dargestellten 3dB?
https://de.wikipedia.org/wiki/Linkwitz-Riley-Filter

Auf der Seite Linkwitzlab wird in der Originalpublikation auch eine 
flache Kurve als Summe aufgeführt. Die 180°Phasenverschiebung-Thematik 
muss ich nochmals prüfen, aber das Filter käme mir schon entgegen. 
Leider tue ich mich schwer die Formeln in eine Vorschrift in den 
Zeitbereich zu übersetzen.

Hier wird das auch angesprochen:
Beitrag "Linkwitz-Riley Filter bauen"

Und vor allem hier:
Beitrag "1 - Tiefpass = Hochpass"

Bringt mich aber auch noch nicht direkt auf die Formeln. Was ich den 
Grafiken entnehme ist, dass einem ein TP+HP und dann ein HP+TP 
aufgezogen wird. Aus der NT kann ich mich noch dunkel an solche Dinge 
wie Phasenkompensation erinnern.

Wie auch immer:

In diesem Bericht wird auf die Konstellation der Lautsprecher abgehoben. 
Dabei kommt eine anzuwendende Zeitverzögerung vor:
https://www.rane.com/note160.html

Versteht das jemand wie man das verzögern muss?

von Dergute W. (derguteweka)


Bewertung
0 lesenswert
nicht lesenswert
Moin,

Rechenfreak schrieb:
> Ja sicher, dass ist ein konstantes Rechteck mit variabler Grenzfrequenz
> und zeigt die Aufteilung in tiefe und hohe Frequenzen.
>
> Im Prinzip ist das Ergebnis richtig, weil HP ja aus Eingang - TP
> gebildet wird.

Ja, so seh' ich das dann auch.

Rechenfreak schrieb:
> Da aber der Eingang auf Phase 0 liegt und der TP
> phasenverschoben ist kommt hintenraus sehr viel offset rein. Es wäre
> wünschenswert, wenn der HP mitverzögert würde. Ich habe aber keinen
> Schimmer wie man das macht und wie das geht.

Naja dein Tiefpass hat halt auch alles andere als eine konstante 
Gruppenlaufzeit. Die Kroete musst du um der Einfachheit halber 
schlucken.
Im Durchlass ist die so von 9..0 samples.
Du kannst dein Eingangssignal mal so um 4..5 Samples verzoegern, bevor 
du von ihm den TP abziehst, um den HP zu erhalten.


Die Beule in der Gruppenlaufzeit bei den LR-Filtern sieht man nirgends 
auf den Bildern. Im engl. Wikipediaartikel kann man's lesen, wenn man 
drauf achtet:

> However, crossovers of higher order than 4th may have less usability
> due to their complexity and increasing peak in group delay around
> crossover frequency.

Aber ist auch klar, denn LR-Filter bestehen aus kaskadierten 
Butterworthfiltern. Und Butterworth hat eben eine kleine GLZ-Beule, 
sonst waer's ein Bessel und kein Butterworth...

Rechenfreak schrieb:
> Das hört sich aber so an, dass das geeigneter sein könnte.

Das musst du wissen, ob dir das eher taugt. Und ob du's schnell genug 
rechnen kannst.


Gustl B. schrieb:
> Würde der Rechteck dann nicht an allen Ecken runder werden?
Nein.

> Das sieht
> sehr nach Lade- und Entladekurve aus, so als käme Kapazität hinzu.

Jepp. Das gehoert dann genauso.

Gruss
WK

von Joachim B. (jar)


Bewertung
0 lesenswert
nicht lesenswert
Karl K. schrieb:
> Du rechnest aber hoffentlich nicht mit Floats?

die Frage ist berechtigt aber immer noch unbeantwortet!

von Joe F. (easylife)


Bewertung
0 lesenswert
nicht lesenswert
Rechenfreak schrieb:
> Leider tue ich mich schwer die Formeln in eine Vorschrift in den
> Zeitbereich zu übersetzen.

https://ccrma.stanford.edu/~jos/filters/Biquad_Software_Implementations.html

https://en.wikipedia.org/wiki/Digital_biquad_filter

von Dergute W. (derguteweka)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

Naja, ob nach einer Linkwitz-Riley HP/TP-Kombi das aufgesplittete 
Rechtecksignal jetzt "schoener" aussieht, als nach der hier 
urspruenglich verwendeten Methode? Mehr CPU_Bumms/Sample braucht man auf 
jeden Fall...

Gruss
WK

von Karl K. (karl2go)


Bewertung
0 lesenswert
nicht lesenswert
Dergute W. schrieb:
> Naja, ob nach einer Linkwitz-Riley HP/TP-Kombi das aufgesplittete
> Rechtecksignal jetzt "schoener" aussieht, als nach der hier
> urspruenglich verwendeten Methode?

Musst Du halt ein Filter dahinterschalten. ;-)

von Joe F. (easylife)


Bewertung
-1 lesenswert
nicht lesenswert
Dergute W. schrieb:
> ob nach einer Linkwitz-Riley HP/TP-Kombi das aufgesplittete
> Rechtecksignal jetzt "schoener" aussieht, als nach der hier
> urspruenglich verwendeten Methode?

Ich kann irgendwie nicht erkennen, was dein Diagramm darstellt.
Und auch weiss ich nicht, was an einem gefilterten Rechtecksignal als 
"schön" durchgeht und was nicht.
Filter beurteile ich in der Regel mit Hilfe von Sinus-Sweeps und den 
daraus resultierenden Kurven (Amplitude, Phase).

: Bearbeitet durch User
von Dergute W. (derguteweka)


Bewertung
0 lesenswert
nicht lesenswert
Moin,

Joe F. schrieb:
> Ich kann irgendwie nicht erkennen, was dein Diagramm darstellt.

Das stellt jeweils den zeitlichen Verlauf des Ausgangssignal nach einem 
Hoch- und einem Tiefpass dar, wenn man einen nullsymmetrischen 
Rechteckburst mit Grundfrequenz in der Naehe der Uebernahmefrequenz der 
Filter reinschickt.

> Und auch weiss ich nicht, was an einem gefilterten Rechtecksignal als
> "schön" durchgeht und was nicht.
> Filter beurteile ich in der Regel mit Hilfe von Sinus-Sweeps und den
> daraus resultierenden Kurven (Amplitude, Phase).

Das weiss ich eben auch nicht. Aber das war wohl ein Grund, diesen 
Thread zu eroeffnen.
Und je nachdem was man vorhat, kann ein Filter ruhig auch von aus der 
Filterantwort im Zeitbereich her definiert werden.
Weil wir das aber nicht wissen, und weil Linkwitz-Riley hier genannt 
wurde und ich heute frueh aus dem Fenster schaute und mir dachte: "Was 
fuer ein wunderschoener Herbsttag, da muss ich doch gleich mal schauen, 
wie so eine Filterkombi auf einen Rechteckburst reagiert", schrub ich 
meinen vorhergehenden Post in diesem Thread ;-)

Gruss
WK

von Karl K. (karl2go)


Bewertung
0 lesenswert
nicht lesenswert
Joe F. schrieb:
> Filter beurteile ich in der Regel mit Hilfe von Sinus-Sweeps und den
> daraus resultierenden Kurven

Wenn ich eine PWM filtern will interessiert mich das schon, wie der 
Filter auf einen steilen Anstieg reagiert, und Linkwitz-Riley scheint 
hier ziemlich abzukacken. Etwas, das man in einem Sinus-Sweep 
anscheinend nicht sieht.

von Joe F. (easylife)


Bewertung
0 lesenswert
nicht lesenswert
Karl K. schrieb:
> und Linkwitz-Riley scheint
> hier ziemlich abzukacken.

Das kann man von Biquads wohl so pauschal nicht sagen...
Ursprünglich war von "Audio" und "Frequenzweiche" die Rede, und dafür 
sind die wunderbar geeignet.

Wozu willst du denn eine PWM durch eine Frequenzweiche schicken?
Tiefpassfiltern (mit höherer Ordnung) würde ich ja noch verstehen, aber 
was interessiert einen dabei der HP Anteil?

von Phreak (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> die Frage ist berechtigt aber immer noch unbeantwortet!
Nein, Integer, entsprechend hoch skaliert. Das sollte kein Problem sein, 
oder?

Joe F. schrieb:
> Rechenfreak schrieb:
>> Leider tue ich mich schwer die Formeln in eine Vorschrift in den
>> Zeitbereich zu übersetzen.
https://ccrma.stanford.edu/~jos/filters/Biquad_Software
D.h. der biquad ist der Linkwitz-Riley? - bzw. der LR gehört zu den 
biquads?

Ich habe inzwischen weitergelesen und sehe sich widersprechende 
Darstellungen. Ich hatte oben schon gemutmaßt, dass das Filter so 
aufgebaut sein müsse, dass jeweils ein HP und ein LP verschaltet sind, 
jedenfalls bei dem "2. Ordnung".

HighPath = HPF + LPF  und LowPath = LPF + HPF.

Das erkenne ich an der biquad-Struktur noch nicht wieder. Das ist ja nur 
ein Pfad (?).

Die Struktur kenne ich gleichwohl, ich nehme an dass ich die 
Koeffizienten aus dem Kochbuch von RBJ entnehmen kann. Dazu habe ich auf 
dessen DSP-Seite einiges gefunden.

Demnach müsste ich den biquad 4x nehmen und jeweile 2 HP und 2 TP 
aufbauen, wobei ich annehme, dass die HPs und TPs jeweils identisch 
sind?

von Phreak (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Joe F. schrieb:
> Das kann man von Biquads wohl so pauschal nicht sagen...
> Ursprünglich war von "Audio" und "Frequenzweiche" die Rede, und dafür
> sind die wunderbar geeignet.
Ja, das ist die Anwendung.

> Wozu willst du denn eine PWM durch eine Frequenzweiche schicken?
Weil die im Rahmen der Signalverarbeitung durchaus vorkommen könnte.

> Tiefpassfiltern (mit höherer Ordnung) würde ich ja noch verstehen, aber
> was interessiert einen dabei der HP Anteil?
Weil das auf dem HighPath herauskommt und somit dem Verstärker des HT 
zugeführt wird.

Um das technisch sinnvoll zu nutzen muss natürlich noch eine 
Bandbegrenzung des Highpath rein, als z.B. 25-30kHz. Die Frage ist, ob 
man das nicht VOR das Trennfilter einbaut, wenn das Filter damit 
Probleme hat, oder ob es egal ist, weil hinten dasselbe rauskommt.

von Joe F. (easylife)


Bewertung
0 lesenswert
nicht lesenswert
Phreak schrieb:
> Das erkenne ich an der biquad-Struktur noch nicht wieder. Das ist ja nur
> ein Pfad

Ein Biquad stellt dabei nur einen 2nd-order Filter dar. Du brauchst also 
insgesamt 4 Biquads (2xHP, 2xTP). Wenn du den Multiplikator für Gain 
weglässt kommst du so auf 4x4=16 Multiplikationen insgesamt.

Die LR4 Struktur sieht dann so aus:
          -> HP1 -> HP2 -> OUTPUT_HP
        /
INPUT -o
        \
          -> LP1 -> LP2 -> OUTPUT_LP

Aus irgendeinem Grund, den ich gerade nicht finde, habe ich 
unterschiedliche Q's für die jeweils hintereinander liegenden Filter 
verwendet (0.5411 und 1.3068). Fc ist für alle 4 Filter gleich.

: Bearbeitet durch User
von Joe F. (easylife)


Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Habs gerade noch mal ausprobiert. Die Qs 0.5411 und 1.3068 waren für 
einen Crossover mit jeweils 4 Biquads hintereinander (LR8).

LR4 kann man ganz prima mit 2 jeweils identischen Biquads mit Q=0.70711 
bauen.
Das Produkt aller Qs (für einen Pfad) muss insgesamt 0.5 ergeben, damit 
der Frequenzgang der Summe flach wird.

Hier ein Beispiel mit Fc=200 Hz.
LP (2x):
a1:  1.962980251780930
a2: -0.963653146670958
b0:  0.000168223722508
b1:  0.000336447445016
b2:  0.000168223722508

HP (2x):
a1:  1.962980251780930
a2: -0.963653146670958
b0:  0.981658349612971
b1: -1.963316699225940
b2:  0.981658349612971

a0 ist jeweils 1.0

Die Koeffizienten sind im "MiniDSP" Format, evtl. muss für andere BiQuad 
Implementierungen bei a1 und a2 das Vorzeichen invertiert werden.

: Bearbeitet durch User
von Egal (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Auf YouTube gibt es ein interessantes Video wo erklärt wird, wie man ein 
Audio Hochpass / Tiefpass mittels IIR Filter auf einem STM32 realisiert.

Youtube-Video "[#5] Audio DSP On STM32 - IIR Filters (24 Bit / 96 kHz)"

von Joe F. (easylife)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Egal schrieb:
> Auf YouTube gibt es ein interessantes Video

Ich will ja nicht meckern, aber ist es wirklich hilfreich 30 Minuten 
lang jemandem mit sehr anstrengendem Akzent auf youtube zuzuhören, nur 
um zu erfahren, dass man Audioprocessing mit dem STM32 machen kann?
Die Musik am Ende des Videos ist ja sehr hübsch anzuhören, aber 
eigentlich möchte man lieber Messergebnisse sehen... ;-)

Zum Glück gibts da ja noch den Link zu seinem Git-Repository, und da 
entdeckt man dann, dass die Filterparameter leider sehr ungeeignet für 
einen Crossover sind.
Der Crossoverbereich ist "dank" niedriger Filterordnung (nur je 1 Biquad 
für HP und TP) sehr groß.
Mit Q=0.7 gibt es an der Crossoverfrequenz eine hässliche +3dB Delle.
Und nicht erwähnt wird, dass entweder HP oder TP um 180° in der Phase 
gedreht werden müssen.
Nicht wundern, bei meiner Grafik ist der Crossoverpunkt bei 500 Hz, das 
liegt daran, dass mein Sweep mit 48KHz läuft und die Koeffizienten in 
dem STM32 Demo-Programm für 96 KHz sind. Das Problem dürfte aber 
trotzdem sichtbar sein.

von Rechenfreak (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Joe F. schrieb:
> Ich will ja nicht meckern, aber ist es wirklich hilfreich 30 Minuten
> lang jemandem mit sehr anstrengendem Akzent

Das ist auch mein Eindruck mit den ganzen Möchtegerns auf dieser 
Plattform. Drehen ein Video zur Selbstdarstellung und ommeln minutenlang 
herum, für wenig Information. Da fragt man lieber in einem Fachforum.

Danke für deine Bemühungen. Bringt mich weiter!

von Jürgen S. (engineer) Benutzerseite


Bewertung
-1 lesenswert
nicht lesenswert
Karl K. schrieb:
> tpwert8 := input + tpwert8 - (tpwert8 + 4) div 8;

Das gibt aber sattes digitales Rauschen!

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.

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