hallo forum, brauche dringend Hilfe für unser Projekt. Wir arbeiten zur Zeit am sharc ADSP-21262. Die eigentliche Aufgabe lautet: Zwei Mikrofone anschließen und anhand der Kreuzkorrelation beide signale bewerten, d.h. die Laufzeitunterschiede beider Signale messen. Leider haben wir keine Ahnung wie wir das in Visual DSP++ implementieren sollen (als Assembler-code). Daher brauchen wir dringend eure Hilfe. Ich bedanke mich schon mal im Voraus!
Was erwartest du? Das jemand dir die fertige Lösung postet? Wenn du konkrete Fragen hast, stell diese, vielleicht kann sie ja jemand beantworten.
Das ist doch im Grunde nichts anderes als eine Faltungssumme. Nur dass es eben 2 verschiedene Signale sind.
Das ist mit paar Schleifen erledigt. Da könntest du fündig werden: http://dspguide.com/
hallo nochmals, ich hab mich etwas schlauer gemacht. Undzwar nutze ich für die Kreuzkorrelation die vorlage des FIR-Filters aus der Analog.com seite für den ADSP-21262-Sharc Prozessor. Der folgende Code könnte doch für die Kreuzkorrelation verwendet werden? Corr.algorithmus: f0=dm(i0,m0), f4=pm(i8,m8); // Zwei Signale in Register f0 und f4 // laden f8 =f0*f4, f0=dm(i0,m0), f4=pm(i8,m8); //werte miteinander //multiplizieren; gleichzeitig // 2 neue Signale laden // usw f12=f0*f4, f0=dm(i0,m0), f4=pm(i8,m8); lcntr=r6, do schleife until lce; schleife: f12=f0*f4, f8=f8+f12, f0=dm(i0,m0), f4= pm(i8,m8); f12=f0*f4, f8=f8+f12; f13=f8+f12; dm(i1,m1)=f13; //Endwert abspeichern Meine weiter Frage lautet: Ich möchte zwei Mikrofone anschließen, die Eingangssignale sollen ja dann in den Ringpuffer abgelegt werden. Wie weiß mein Prozessor das die beiden Signale getrennt von einander gespeichert(gepuffert) werden sollen.
>Wie weiß mein Prozessor das die beiden Signale getrennt von einander >gespeichert(gepuffert) werden sollen. Indem du das so programmierst?! Möchtest du nicht vielleicht bei deinem Wissensstand lieber die in VDSP++ eingebaute C-Funktion für die Kreuzkorrelation nutzen?
Achso, Assembler als vorgegebene Programmiersprache. Dann erübrigt sich mein zweiter Hinweis wohl.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.