mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Sinuston generieren mit TMS320VC5505


Autor: Ingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich soll mit Assembler einen Sinuston erzeugen, der dann über Kopfhörer 
vom TMS320VC5505 ausgegeben werden kann. Allerdings muss die Freqeunz 
variabel gestaltbar sein (womöglich in 1Hz- oder 10Hz-Schritten).
Da ich noch recht unerfahren sowohl mit Assembler als auch dem EZDSP 
bin, kann ich nicht nachvollziehen, wie ich den entsprechenden Adressen 
sage, was sie zu tun haben bzw. wie ich einzelnen Variablen ihre Werte 
zuordne.

Vielleicht kann mir ja jemand helfen

Autor: Ingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mir geht es darum nachzuvollziehen, wie beim EZDSP vorgegangen werden 
muss, da ich bisher nur über Matlab oder R programmiert habe und jetzt 
einfach nicht so schnell umdenken kann.

Vielen Dank schonmal im Voraus.

Ingo

Autor: Peter Diener (pdiener) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier gibt es einige Beispiele für das Board:
http://code.google.com/p/c5505-ezdsp/

Die Beispiele sind in C geschrieben. Das Audiofilter Beispiel lässt sich 
bestimmt entsprechend abändern.
Das würde ich dann compilieren und das Assemblerlisting anschauen. Das 
wiederum dann als Basis für eigene Assemblerentwicklung verwenden. So 
sieht man an einem schon relativ großen Beispiel, auf welche Eigenheiten 
man aufpassen muss und hat nebenbei einen schon relativ gut optimierten 
Programmierstil.

Mit entsprechenden Vorkenntnissen kann man das natürlich auch einfach 
unter der Hilfe aller Datenblätter und App-Notes der verwendeten 
Hardware gleich in Assembler machen, ohne eirgendwelche Beispiele 
anzusehen.

Warum muss das denn eigentlich in Assembler geschrieben sein?
Da gab es vor kurzem schon mal eine Anfrage:
Beitrag "TMS320VC5505 eZDSP USB Stick"

Ist das zur zu Ausbildungszwecken?
Normalerweise schreibt man Programme für so große Prozessoren nicht mehr 
in Assembler. Üblich ist es, Programmteile, die in einem bestimmten 
Timing ablaufen müssen, bzw. entsprechend schnell sein müssen, in 
Assembler zu schreiben und im C-Programm zu nutzen. Nachdem die 
Prozessoren aber immer komplizierter werden, so dass man mögliche 
Optimierungen selbst gar nicht alle überblickt, ist bei DSPs eine 
Implementierung in einer Hochsprache oft genauso effizient.

Grüße,

Peter

Autor: Ingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Peter,

vielen Dank für Deinen Hinweis!

Allerdings habe ich dieses Beispiel schon mal ausprobieren bzw. 
ausführen wollen. Nur leider kann ich das Beispiel nicht in den 
Controller laden und ausführen lassen. (In der Debug-Ansicht des 
Code-Composer-Studios kommt die Fehlermeldung "Source not found").
Auch wenn ich die Codebeispiele einzeln in die C/C++ Ansicht reinlade 
und dann ausführen möchte, werden permanent Fehler angezeigt.
Bei allen anderen Beispielen funktioniert es aber seltsamerweise.
Übersehe ich eventuell etwas?

Danke schonmal für die Hilfe.

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.