Forum: Mikrocontroller und Digitale Elektronik printf - fehler meldung?!


von Daniel W. (danny84)


Angehängte Dateien:

Lesenswert?

Ich bekomme immer einen Fehler wenn ich printf nutzen will.

z.b.

#define MICROCONTROLLER_T89C51RD2
#include <mcs51reg.h>
#include <stdio.h>
void main (void)
{
printf("Halli hallo");
while(1);
}

fehlermeldung im anhang.

vll kann mir jmd sagen was ich falsch mache.

von Daniel W. (danny84)


Lesenswert?

Achso habe ein AT 89C51 ED2 :)

von Rolf Magnus (Gast)


Lesenswert?

Wow, Fehlermeldungstext als JPEG. Auch mal ne nette Idee.

Wo erwartest du die Ausgabe von printf denn? Wenn es wie bei der 
avr-libc ist, mußt du erst einmal eine Funktion implementieren, die ein 
Zeichen dort, wo du es haben willst, ausgibt. Die wird dann von printf 
genutzt. Mehr sollte die Doku deiner libc enthalten.

von Daniel W. (danny84)


Lesenswert?

Ich nutze als IDE Mide und als Compiler SDCC.
Der fehler läßt sich nicht kopieren, und ein screenshot ist leichter als 
abtippen.

Die Daten sollen über dier serielle schnittstelle an das 
terminal-programm gesendet werden, bei meinem alten uC ging das einfach 
so.

von Daniel W. (danny84)


Lesenswert?

keiner eine idee?

von JÜrgen G. (psicommand)


Lesenswert?

auf einem µC ein printf? was soll das für einen sinn haben?

von Christian (Gast)


Lesenswert?

Die Fehlermeldung sagt es doch: putchar ist undefiniert. Du musst eine 
Funktion definieren, die dann das Zeichen auf der Schnittstelle ausgibt.

Eine Google-Suche nach SDCC printf ergibt gleich als ersten Treffer:
http://www.pjrc.com/tech/8051/tools/win32_install.html: "The putchar() 
function required for printf is NOT provided in SDCC's libraries (this 
may change someday). You must write a putchar function."

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.