Hallo Leute! Hat schon mal wer von euch mit dem Keil-Compiler ein C-Programm für den 8051er geschrieben? Ich habe ein Problem bei der Ausgabe mit printf über die Serielle. Zuerst habe ich die Variablen initialisiert. unsigned char idata z=0x20; Danach wird die Serielle initialisiert. Und zum Schluss wird diese Variable über die Serielle ausgegeben. printf("Hallo: %X",z); Und wisst ihr was der Bildschirm des PC's anzeigt??? Hallo: 2000 Ich spielte herum und kam dahinter, dass es anscheinend an der 8-Bit Variable liegt. Wenn ich es so mache funktioniert es: unsigned int idata z=0x20; Danach wird die Serielle initialisiert. printf("Hallo: %X",z); Hallo: 20 Auch der Simulator hat dasselbe Problem. Gibt es für die Ausgabe von 8-Bit-Zahlen eine eigene Angbabe für Printf? Ich habe auch schon mal einen ATMEGA programmiert. Mit dem dortigen C-Compiler trat das Problem nicht auf. Ich bin für jede Antwort dankbar. Tschüss Martin
>Hat schon mal wer von euch mit dem Keil-Compiler ein C-Programm für >den 8051er geschrieben? JA !!! Das Handbuch sagt: "%bx" für byte, "x" für word und "lx" für long.
Danke! Ich habe im Handbuch nachgesehen, doch dieses ist sowas von umständlich und unübersichtlich, dass es eine Freude ist. Zugegeben die Frage, ob schon jemand mal einen 8051er programmiert hat war vielleicht nicht so ganz angebracht. Ich wollte niemanden auf die Schaukel nehmen. Aber danke für deinen Tipp. Tschüss! Martin
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.