Forum: Mikrocontroller und Digitale Elektronik R8C - printf - HEW


von Jörn (Gast)


Lesenswert?

Hi,

ich Programmiere den R8C (R5F21238) von Renesas mit HEW.

Ich versuche schon eine ganze Zeit lang printf auf uart 1 zum laufen zu 
bekommen allerdings ohne erfolg.

Ich binde stdio.h ein und initialisiere den UART1 der auch funktioniert.

Benutze ich nun printf hängt sich der Controller auf. Compilieren lässt 
sich das ganze ohne Fehler und warnungen.

Hat jemand einen Tipp was ich flasch mache..?

Gruß Jörn

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Lange ist es her... Da war ein Haken dabei, wenn mich meine Erinnerung 
nicht täuscht. Da beissen sich vielleicht Debugger und die 
Initialisierung in der C-Library. 
http://www.ureader.de/message/481067.aspx

von Jörn (Gast)


Lesenswert?

Hi,

ja das problem mit dem Debugger und Uart 1 ist mir bekannt, solange aber 
sofort auf RUN gestellt wird ohne Breakpoints und anhalten dürfte es 
keine Probleme geben.... hab auch schon komplett ohne Debugger 
getestet...

Gruß Jörn

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Wie äussert sich das Aufhängen? Kommt nur keine Ausgabe oder rennt der 
R8C komplett nicht mehr. Hast du schon einen Timer-Interrupt-Task 
laufen, der eine Lebenzeichen-LED blinken lässt?

Vielleicht musst du zunächst den Ausgabestream UART1 auf printf richten. 
Defaultmäßig ist wahrscheinlich UART2 auf printf gebogen. Gängig ist 
eine fdevopen()-Funktion dafür, ich weiss aber nicht, ob das bei der R8C 
Standardlibrary auch so ist.

von Jörn (Gast)


Lesenswert?

So wie es aussieht bleibt der Controller irgendwo in der printf funktion 
hängen.

Alles was über Interrupts läuft funktioniert noch.

Das mit dem fdevopen dachte ich auch, aber information dazu sind bei 
Renesas schwer zu finden.
Hab nur mal irgendwo gelesen das printf Standartmäßig auf UART1 liegen 
soll...

von Jörn (Gast)


Lesenswert?

Hi,

ich kann mir gar nicht vorstellen das niemand printf auf dem R8C 
verwendet...?

Bin für jeden Tipp dankbar...

Gruß Jörn

von Stefan B. (stefan) Benutzerseite


Lesenswert?

"Wenn du die Hosen runter lässt, packe ich auch meinen aus."

Also: Minimalsourcecode posten und ich schaue, ob der auf meinem R8C/13 
(!) Board (Elektorplatine inkl. Elektor-Applicationboard) die gleichen 
Probleme zeigt und wenn ja, was man dagegen machen kann.

von Jörn (Gast)


Lesenswert?

Hi,

Minimalcode.... tja viel gibt es da nicht.
Initialisierung des Uart.....

und in der main schleife dann ganz einfach

printf("Hallo Welt");

Sollte eigentlich reichen, da angeblich standartmäßig die ausgabe auf 
Uart 1 erfolgt.

Gruß Jörn

von User (Gast)


Lesenswert?

Kann leider nicht helfen, habe mein eigenes printf gemacht ;)

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.