Also, was mir am code aufgefallen ist:
1) uart_putc(*s);
s++; <--- hier gehörte mMn eher ein *s++, zumindest ist es im "normalen" C so, weil einige Compilr ansonsten auf die Idee kommen, nicht den Pointer auf den String um eines nach rechts zu verschieben, sondern gleich den Inhalt zu verändern...
Diese Ausgabe schaut mir sehr danach aus, als ob du den Zeiger irgendwie "zum Teufel" jagen würdest...
MfG
Mobius
P.S.:
So guckt die standard-Routine für den PIC-C-Compiler aus...Code:void puts(char *source) { while (*source != 0) // wait until tx register is empty putc(*source++); putc(0x0d); putc(0x0a); }
Lesezeichen