Dezimale Zahl wird binär ausgegeben

Gast #1428344
Moinsen!

Ich versuche, eine Integerzahl auf einem Display auszugeben. In einer 
Programmschleife wird von 0 bis 255 gezählt und ein Port mit digitalen 
Ausgängen wird gesetzt. Auf dem Display möchte ich den aktuellen 
Zählerstand als dezimale Zahl haben.

Dazu benutze ich die Funktion itoa():

iz ist ein int und ch ein char.
1
    
2
    for(iz=0;iz<255;iz++)
3
    {
4
      PORTB = iz;
5
      itoa(iz,ch,2);
6
      lcd_ausgabe(ch);
7
      _delay_ms(2500);
8
    }

Auf dem Display wird jetzt aber nicht 0, 1, 2, 3, 4 angezeigt, sondern 
das ganze als Bin-Code. Woran liegt das und wie kann ich das ändern?
nanotech schrieb:

> iz ist ein int und ch ein char.

Das wird wohl nicht reichen, wenn eine 3-stellige Zahl ausgegeben werden 
soll. Die würde ja mindestens 3 char benutzen, für jede Stelle einen.
Also, spätestens da solltest du jetzt schon stutzig werden.

http://www.mikrocontroller.net/articles/FAQ#Wie_kann_ich_Zahlen_auf_LCD.2FUART_ausgeben.3F
http://www.mikrocontroller.net/articles/FAQ#Wie_funktioniert_String-Verarbeitung_in_C.3F
nanotech schrieb:
> Auf dem Display wird jetzt aber nicht 0, 1, 2, 3, 4 angezeigt, sondern
> das ganze als Bin-Code. Woran liegt das und wie kann ich das ändern?

Es liegt daran, daß Du es so hingeschrieben hast.
Das 3. Argument von itoa(), "2" hat eine bestimmte Bedeutung.

Es könnte recht hülfend sein, wenn man mal nachguckt, was die Argumente 
einer Funktion bedeuten, ehe man sie verwendet.


Peter

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.