www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Text Ausgabe in CCE2.0


Autor: Buwei Zhang (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo zusammen,

ich programmiere zurzeit MSP430 mit CCE2.0 und habe ein Problem mit der 
Software.

Würde ich gerne fragen , ob es möglich ist ,ob z.B " Hallo world " von 
CCE 2.0 ausgegeben wird, also wie in normal C Sprach.

ich habe zum Test ein Skript geschrieben:

#include <stdio.h>

main()
{

  printf("Hello world\n");
}


Es gibt zwar einen Snytaxfehler, aber das Skript wird auch nicht 
durchgeführt.

wenn ich z.B ein Word oder eine int-Zahl ausgeben möchte, wie sollte ich 
in CCE 2.0 schreiben ?


mfG!
Buwei

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Buwei Zhang wrote:

> Es gibt zwar einen Snytaxfehler, aber das Skript wird auch nicht
> durchgeführt.

Das wäre auch sehr ungewöhnlich, da bei einer Fehlermeldung kein 
ausführbares Programm erzeugt wird.

Man könnte nun rumraten, was der Wortlaut dieser Fehlermeldung sein 
könnte, wenn man viel Langeweile hat.


Schau doch mal in das Example Verzeichnis Deiner Compilerinstallation, 
da ist bestimmt ein UART-Beispiel drin.


Peter

Autor: Buwei Zhang (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

habe ich einen Schreibfehler gemacht. Es gibt bei meinem Programm KEIN 
Syntaxfehler.

Gruß!
Buwei

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das geht so nicht. Ich nehme an, du willst in der Konsole des CCE was 
ausgeben, was der MSP430 berechnet hat? Meines Wissens hat die 
Debug-Logik im MSP430 dafür keine Funktionen eingebaut, dazu müsste die 
über einen dedizierten JTAG-Kanal Infos an den Host-PC schicken können.

Printf beim MSP430 (und bei fast allen anderen µC) ist eine leere 
Funktion, die durch den Nutzer gefüllt werden muss. Im einfachsten Fall 
durch Senden an die UART, so dass man mit Hyperterminal oder so am PC 
die printf Ausschriften lesen kann. Über JTAG geht das (zumindest am 
MSP430) nicht.

Printf ruft für jedes Zeichen eine putchar() Funktion auf, die du selbst 
noch festlegen musst.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Über JTAG geht das (zumindest am MSP430) nicht.

Mit Rowley Crossworks geht so etwas doch, zwar ziemlich langsam, aber 
immerhin.

Allerdings wird nicht das normale printf durchgereicht, sondern 
spezielle Varianten davon, die in cross_studio_io.h deklariert sind, wie 
z.b. debug_printf.

Das Zeitverhalten von Anwendungen, die diese Funktionen nutzen, ist 
allerdings über den Jordan, irgendwelche Timerprobleme kann man damit 
nicht debuggen.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das hatte ich auch mal wo gelesen, allerdings geht das über 
irgendwelche "normalen" Register, die dann ausgelesen werden. Das geht 
dann allerdings wirklich übel langsam, weil ja immer erst die CPU 
angehalten werden muss, damit der JTAG Kontrolle über MDB und MAB 
bekommt. Naja, kurz und gut: Nimm die serielle Schnittstelle und lass es 
dir per HyperTerminal ausgeben.

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.