mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik dsPIC DSP Libraries Tutorial


Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

die dsPICs sind ja im Gegensatz zu normalen PICs oder anderen µC mit
speziellen MAC-Einheiten usw. ausgerüstet, um komplexe mathematische
Berechnungen FFTs, Filterung,... durchzuführen.

Ich finde allerdings überhaupt keine Application Notes oder Tutorials, 
die
die Benutzung dieser Funktionen erklärt.
Microchip hat einige kleine Democodes, die aber nicht aussagekräftig 
sind.

Gibt es eventuell ein Dokument, welches diese Libraries und ihre 
Anwendung beschreibt ?

Danke für eure Hilfe.

MfG
Thomas

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thomas,

wenn du dir den C30 Compiler installiert hast (--> 
Programme-->Microchip-->C30-->Library-->DSP-->Doku  oder so ähnlich), 
oder auch nur die DSP-Lib von Microchip, dann ist dort die Doku für die 
DSP Sachen dabei. Ansonsten steht eigentlich alles über die Verwendung 
der MAC/Speichereingeit im Datenblatt des jeweiligen dsPics.

In den DSP-libs sind auch die Assembler Dateien der einzelnen Funktionen 
vorhanden. Sie sind sehr aufschlussreich. Jedoch sollte man wissen, wie 
z.B: ein FIR Filter funktioniert.


Stefan

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Microchip wirft Dich doch tot mit Infos...

Welche Anwendung soll es denn werden ??

Die dsPICs sind echt stark !

Autor: C. H. (_ch_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Microchip wirft Dich doch tot mit Infos...
Das ist vielleicht genau das Problem. Wenn man irgend etwas wissen 
will, muss man immer mehrere Dokumente gleichzeitig durcharbeiten - 
anstatt dass es ein vernünftiges Datenblatt mit allen Infos gibt.

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie gesagt, ich habe bisher bei denen nur Code-Examples, ohne 
dazugehörige Applicagtion Notes oder sonstiges gefunden.

Wo steht z.B., wie ich die Filter-Koeffizienten im Programm ablegen 
kann, ohne
dieses File, dass vom kostenpflichtigen "dsPIC Filter Design"-Programm 
erstellt wird ?

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thomas,

"Wo steht z.B., wie ich die Filter-Koeffizienten im Programm ablegen
kann, ohne dieses File, dass vom kostenpflichtigen "dsPIC Filter 
Design"-Programm erstellt wird ?"

Das steht eigentlich alles im Datasheet!

Zum Ablegen der Koeffizienten stehen dir eigentlich 2 Möglichkeiten zur 
Verfügung. Du definierst dir ein "fractional Array" und speicherst die 
Koeffizienten darin.

a) im Data-Speicher (=RAM) ablegen:
   Der dsPIC besitzt 2 RAM Bereiche, X und Y. Die MAC Einheit kann 
gleichzeitig auf diese beiden Bereiche zugreifen. z.B. liegen für einen 
FIR Filter die Koeffizient im Y-Bereich und die Datan im X-Bereich. 
Zusätzlich werden noch die Delay-Werte für die Filterung im X-Bereich 
gespeichert.
Der dsPIC holt sich gleichzeitig ein Daten-word aus dem X-Speicher und 
einen Koeffizient aus dem Y-Speicher und berechnet "MAC".

b) im Programm-Speicher (=FLASH) ablegen:
 Die Koeffizienten werden als Konstante so in dem FLASH abgelegt, dass 
sie über den PSV Zugriff gelesen werden können -->C30 Compiler Attribut 
"PSV". Durch einen PSV Zugriff wird der FLASH Speicherbereich in den 
Y-Speicherbereich gespiegelt. Somit kann die MAC-Einheit darauf, wie auf 
einen normalen Speicher zugreifen.
Die Daten und die Delay Werte werden weiterhin im X-Speicher abgelegt.

Aber deine Koeffizienten musst du dir schon selber berechnen z.B. 
Octave, Matlab oder diverse Programme. Wenn du nur mit festen 
Filterfunktionen arbeitest, dann kannst du sie einfach in wie in b) 
beschrieben in den FLASH legen. Brauchst du öfters andere Koeffizienten, 
dann musst du sie jedes mal z.B. per PC in den RAM laden oder neu in den 
FLASH schreiben.

Stefan

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan,

danke für die Infos.
Ich bin eben erst auf dsPICs umgestiegen.
Durch das Lesen des Reference Manuals habe ich schon mehr Durchblick.

Die Speicherbereiche sind mir auch klar.

Digitale Signalverarbeitung und Digitale Filter sind kein Problem.

Filter waren nur ein Einstieg in die DSP Libraries des dsPICs. 
Eigentlich brauche ich die FFT-Funktion wesentlich öfter.

Mal sehen, wie es damit aussieht.

MfG
Thomas

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.