mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP TMS320F2812 erstes Programm


Autor: Torsten O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich versuche gerade den TMS320F2812 von Texas Instrumentes via Code 
Composer Studio zu programmieren. Leider komme ich nicht wirklich weit, 
da ich mit den Fehlermeldungen bzw. Warnungen nicht viel anfangen kann. 
Vielleicht kann mir da jemand helfen oder ein Tutorial empfehlen wie ich 
"mein erstes Programm" schreiben kann.

Hier wäre erstmal mein aktueller Quelltext, wobei da natürlich noch 
keine Funktion enthalten ist.

#include "DSP281x_Device.h"
#include "DSP281x_Examples.h"

void main()
{
  EALLOW;

  SysCtrlRegs.PLLCR.bit.DIV = 0x0A;      // Prescaler OscCLK * 10 / 2 
einstellen
  SysCtrlRegs.HISPCP.all = 0x00;        // Systemtakt 150MHz

  EDIS;
}

Die Datei lässt sich problemlos kompilieren, wenn ich allerdings auf 
"Build" klicke kommt folgender Output :

-----------------------------  source.pjt - Debug 
-----------------------------
[main.c] "C:\CCStudio_v3.3\C2000\cgtools\bin\cl2000" -g -fr"C:/Dokumente 
und Einstellungen/Administrator/Desktop/Source/Debug" -d"_DEBUG" 
-d"LARGE_MODEL" -ml -v28 -@"Debug.lkf" "main.c"

[Linking...] "C:\CCStudio_v3.3\C2000\cgtools\bin\cl2000" -@"Debug.lkf"
<Linking>
>> warning: entry point symbol _c_int00 undefined

undefined                        first referenced
 symbol                              in file
---------                        ----------------
_SysCtrlRegs                     C:\Dokumente und 
Einstellungen\Administrator\Desktop\Source\Debug\main.obj
>>   error: symbol referencing errors - './Debug/source.out' not built

>> Compilation failure

Build Complete,
  2 Errors, 1 Warnings, 0 Remarks.

Also meine Fragen sind :

1) Was hat es mit "_c_int00" auf sich (ich nehme an, das ist der 
Eintrittspunkt für das Programm)?

2) Wieso kennt er "_SysCtrlRegs" nicht?


Vielen Dank im Voraus



lg Torsten

Autor: Michael K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist bei mir (leider) schon ne Weile her, aber soweit ich mich erinnere 
kommt der Fehler durch eine fehlende Library. Um das zu beheben trägst 
du unter
-> Build Options -> Linker -> Libraries -> Incl. Libraries eine 
entsprechende Lib ein. Bei mir ist das die "rts2800_ml.lib" für einen 
2812.

Torsten Ohne schrieb:
> 1) Was hat es mit "_c_int00" auf sich (ich nehme an, das ist der
> Eintrittspunkt für das Programm)?
Richtig.

> 2) Wieso kennt er "_SysCtrlRegs" nicht?
Das hängt mit dem oben zusammen.

Autor: Jens Sch (jenser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin Torsten,

ich kämpfe mich auch gerade durch die schreckliche Welt der DSPs von TI. 
Zur zeit benutze ich ein eZdsp Board mit einem TMSF2812, ich vermute mal 
du hast das gleiche Board!

Zu Beginn hatte ich auch ziemliche Schwierigkeiten! Geholfen hat mir 
dabei die Beispielcodesammlung von TI. Die ist schön nach Themen 
unterteilt und für den Sart optimal.

Google am besten und du findest sie. Im Notfall kann ich sie dir auch 
per Mail schicken!

Viel Erfolg!

Autor: Torsten O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Tipps. Die Beispiele habe ich mir auch schon aus dem Netz 
gezogen, direkt von der TI-Seite. Die Programme lassen sich fehlerfrei 
kompilieren und in den Prozessor übertragen.

Allerdings! Ich habe als erstes die GPIOToggle-Sachen probiert. Um zu 
sehen ob sich was auf der Hardware tut habe ich ein Oszi an den Pin9 des 
40-poligen Steckverbinders gehalten - und nichts zu sehen. Der Pin 
bleibt auf high. Benötige ich denn unbedingt diesen "Zwickauadapter" 
oder müsste es auch ohne dem funktionieren?


lg Torsten

Autor: Jens Sch (jenser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ne, du brauchst keinen Adapter. Messe einfach direkt am DSP, da müsstest 
du die Flanken sehen.

Was ist eigentlich ein Zwickauadapter?

Da haben wir vermutlich doch unterschiedliche Boards! 
(http://www.spectrumdigital.com/product_info.php?cP...)

Autor: Jens Sch (jenser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jetzt hab ich´s doch selber raus gefunden^^!

http://www.lmgtfy.com/?q=Zwickauadapter

Autor: Torsten O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

so, ich habe nochmal direkt am Pin92 gemessen. Das Signal bleibt trotz 
laufendem Programm auf High. Ich nutze zur Zeit leider nur das parallele 
Schnittstellenkabel, d.h. ich kann nicht debuggen. Hat noch jemand eine 
Idee was ich falsch machen könnte?


lg Torsten

Autor: Honk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Hast Du alle GPIO-Register richtig konfiguriert? Die GPIO-MUX-Register 
sind EALLOW-protected, d.h. man muss die GPIO-Konfiguration zwischen 
EALLOW und EDIS machen.

Sind die GPIO-Register auf die richtigen Adressen gemapped?

http://focus.ti.com/lit/ug/spru078f/spru078f.pdf
(Chapter 4)

Grüße,
Honk

Autor: Torsten O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Quelltexte sind ja die originalen von der TI-Seite, mal abgesehen 
von Rechtschreibtfehlern kann ich da keine anderen Fehler finden - diese 
Quelltexte sollten doch eigentlich funktionieren, oder?

lg Torsten

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.