Forum: Digitale Signalverarbeitung / DSP / Machine Learning Problem beim kompilieren mit Matlab


von Benjamin (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe folgendes Problem: ich muss einmalig einen TMS320F2812 mit 
Matlab 2007a über Real-Time Workshop und Code Composer Studio 3.3 
programmieren.

Ich übernehme das Projekt von einem anderen Studenten, den ich leider 
nicht mehr erreichen kann. Mir liegt aber eine Beschreibung vor, wie man 
den DSP programmiert und ich habe auch das Modell, welches dieser 
Student schon auf den DSP heruntergeladen hat. Leider bekomme ich beim 
kompilieren jedoch immer folgenden Fehler:

Error building Real-Time Workshop target for block diagram 
'Regelung_new2'. MATLAB error message:
Error using ==> callMakeHook.p>callMakeHook at 47
The call to ccslink_ert_make_rtw_hook, during the entry hook generated 
the following error:
    Error using ==> i_entryHookpoint at 52
Error while creating the link for IDE.
The built process will terminate as a result.

Ich kann mich in Code Composer Studio mit dem DSP verbinden, aber 
anscheinden klappt etwas nicht zwischen der Verbindung von Matlab mit 
CCS. Die EInstellungen, die ich im Simulink Modell gemacht habe, habe 
ich im Anhang als Screenshot beigefügt.

Ich habe jetzt schon stundenlang versucht diesen Fehler zu beheben, aber 
es will einfach nicht klappen. Hat von euch jemand einen Tipp, was ich 
machen könnte? Wäre echt super, wenn mir wer helfen könnte.

Viele Grüße,
Benjamin

von Peter D. (pdiener) Benutzerseite


Lesenswert?

Muss denn an dem Programm überhaupt etwas angepasst werden?

Vermutlich liegt in dem übergebenen Projekt nämlich das fertig erstellte 
out-file noch vor (Es sei denn der Vorgänger hat vor der Agbage ein make 
clean ausgeführt). Wenn das nur einmalig auf einen Prozessor geflasht 
werden muss, ist es eine einfache Übung.
Dazu muss nichts kompiliert werden. Es muss in einem der Buildordner 
eine Datei *.out geben. die kann man einfach mit dem Flashprogrammer 
programmieren.

Darfst du das Projekt hier hochladen?

Warum es nicht kompiliert, kann ich leider nicht sagen. Ich schreibe 
alle meine DSP-Programme in C.

Grüße,

Peter

von Benjamin (Gast)


Lesenswert?

Ja, ich muss leider einen Parameter ändern. Das ist das Problem.

Das Modell dürfte ich wohl schon hier hochladen, aber sehe nicht, was 
das bringen soll.

An Matlab habe ich jetzt auch schon eine Anfrage gestartet und sogar 
schon eine ANtwort bekommen. Das hat aber nichts gebracht, die wollen 
mir nur eine neuere Version aufdrehen. Schließlich konnte mein Vorgänger 
auch mit der alten Version kompilieren.

Für weitere Ratschläge wäre ich sehr dankbar.

von Christian W. (chrisw84)


Lesenswert?

Hallo,
ich habe vor einiger Zeit einiges mit Matlab & C2000 versucht.
Hatte am Anfang auch viele Fehlermeldungen.
Da gibt es von Matlab eine Einführung in pdf-Form. Hast du die gelesen?
Ich meine mich zu erinnern, dass man im Code Composer Stutio (ccs) auch 
etwas einstellen muss, damit Matlab das ccs findet.

Falls du wirklich nicht klarkommen solltest, dann melde dich. Werde dann 
mal in die Einstellungen schauen.

Auch gibt es von TI eine Lern-DVD (Teaching-ROM), um Simulink und C2000 
zu erlernen.

Viele Grüße
Chris

PS:  Schau auch mal: Beitrag "TI C2000 und MatLAB Target Link: Interruptproblem"

Vielleicht muss du, wenn die Verbindung zwischen Matlab und ccs steht, 
das .cmd-File verändern.

von Peter D. (pdiener) Benutzerseite


Lesenswert?

>Das Modell dürfte ich wohl schon hier hochladen, aber sehe nicht, was
>das bringen soll.

So könnte jamand, der Matlab und CCS installiert hat, versuchen das zu 
kompilieren, bzw. vielleicht auch gleich den gewünschten Parameter 
ändern.

Vielleicht findet man so auch den Fehler. Die Fehlermeldung ist für 
micht jedenfalls nicht besonders aussagekräftig. Zumindest nicht, 
solange ich nicht durch das Modell klicken kann um zu sehen, wo das 
eigentlich passiert.

Aber wie gesagt, ich schreibe alle DSP Programme in C, kenne mich also 
nur von CCS bis DSP richtig gut aus. Realtime Workshop habe ich nie 
benutzt. Irgendwo hab ich aber noch eine Demoversion davon, wenn ich 
mich recht erinnere.

Ist es nicht so, dass Matlab ohnehin C-Code erzeugt? Vielleicht kommt 
man irgendwie an diesen Zwischencode um den Paramerter zu verändern. Das 
ist zwar alles andere als wartungsfreundlich, aber es könnte zielführend 
sein.

Aber das kann ich ohne das gesamte Projekt zu sehen alles nicht richtig 
beurteilen.

Grüße,

Peter

von Christian W. (chrisw84)


Lesenswert?

Peter Diener schrieb:
> Ist es nicht so, dass Matlab ohnehin C-Code erzeugt?

Korrekt. Matlab erzeugt anscheinend sehr effizienten C-Code, der in 
einem der erzeugten Ordnern zugänglich ist.
Wie effizient er ist vermag ich nicht zu beurteilen. Habe einmal zwei 
nebeneinander liegende Pins toggeln lassen... der Wechsel zueinander war 
ca. 300 ns zeitverzögert.

Da sich der Autor dieses Beitrags nicht mehr gemeldet hat, gehe ich 
davon aus dass das Problem behoben wurde.


Viele Grüße

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
Noch kein Account? Hier anmelden.