printf und puts in C18

Gast #1393625
Hey

Ich schreibe ein Programm mit MPLAB in C18. Das Programm soll über die 
serielle Schnittstelle mit dem PC komunizieren, ich benutze dazu u.A. 
die Funktionen printf und puts. Das merkwürdige dabei ist, dass die 
Daten von Zeit zu Zeit falsch oder gar nicht übermittelt werden. Deshalb 
wollte ich mir mal die Funktion von printf bzw puts anschauen. Wo kann 
ich die finden?

mfg
Sigi
Gast
Obacht ist geboten bei der Programmierung mit C18, dass man auch den 
Datentyp welchen man übergibt im richtigen Speicherbereich hat. Es gibt 
seperate Funktionen um ROM bzw. RAM Daten zu verarbeiten/aus zu geben.

Wenn man da die falsche benutzt kommt schnell was durcheinander.

Hab leider keinen C18 auf diesen Rechner installiert, aber du solltest 
die funktionen irgendwo im C18 Ordner finden... Hatte z.B. mal das 
Problem, dass der UART nicht richtig initialisiert wurde (und das bei 
einer Microchip eigenen Routine! Da wurde vorm aktivieren des UARTs 
schon RX/TX mit TRIS umgesetzt - hat zu problemen wegen falschen 
ausgangspegel geführt) - da hab ich die funktion aus der lib kopiert und 
abgeändert.
Gast
>mein Programm funktioniert an sich einwandfrei. Wenn ich die Daten über
>TXREG ausgebe, habe ich keine Probleme....

Dann bleib doch dabei.

Wenn du printf falsch benutzt darfst du dich nicht wundern
wenn da Müll rauskommt.

Beispiel: printf("%d",wert);

Bei %d wird ein int für wert erwartet. Wenn du für wert ein long 
übergibst
dann kracht es halt.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.