BCD zu ASCII

Gast #23728
Lesenswert?
• ▲
▼
Ich möchte eine BCD Zahl in ASCII umwandeln durch diesen Code

ldi temp2, 0x30           ;Hex 30 in r16 laden
mov temp1, tausender      ;tausender Stelle nach r17
add temp1, temp2          ;Hex 30 zur taudender stelle adden
rcall lcd_data            ;wert an lcd rausgeben

mov temp1, hunderter      ;gleiches mit Hunderter Stelle
add temp1, temp2
rcall lcd_data

mov temp1, zehner         ;gleiches mit zehner St.
add temp1, temp2
rcall lcd_data

mov temp1, einer           ;gleiches mit einer St.
add temp1, temp2
rcall lcd_data

das lcd zeigt allerdings bis auf die einer Stelle nur Sonderzeichen an.

Hat jemand einen Rat? Die Inhalte in den Registern 
tausender,hunderter,zehner und einer sind definitiv bcd Zahlen zwischen 
0 und 9.
Gast #23729
Lesenswert?
• ▲
▼
hi
sieht soweit ganz gut aus. Du hast ja auch daran gedacht die ASCII-Null 
'0' zu addieren.
Zwinge doch mal die Inhalte vorher auf einen bekannten Inhalt
z.B.
 ldi tausender,1
 ldi hunderter,2
 ldi zehner,   3
 ldi einer,    4

zeigt die Ausgabe dann vorerst richtig an?

Reiner
Gast #23732
Lesenswert?
• ▲
▼
Hallo Freunde !Danke an alle!

Eckhard du hast recht gehabt temp2 wurde im Unterprog lcd_data verändert 
und so hab ich nir Schrott herausbekommen.

Habe temp2 komplett entfernt und auf Andreas Vorschlag mit subi temp1, 
-0x30 umgestellt.

Es funkt jezt prima.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.