hab andis beitrag gelesen - er hat recht!
aber leider kann ich dir ohne schaltplan deiner platine nichts
genaueres sagen.
----
@binär-bcd-konvertierung: weißt du wie das geht?
in einem register, zb. akku (a) steht dein wert. es ist ein 8-bit-wert,
dh. er kann einen wert zwischen 0...255 aufnehmen! diesen gilt es nun,
in eine binär-codierte-dezimalzahl BCD zu wandeln.
Ob die routine 100%ig stimmt, kann ich dir nicht versichern,
da ich normalerweise mit avrs arbeite...
; Adressen im Ram festlegen...
H equ XXXh
Z equ YYYh
E equ ZZZh
;***************************************************
;*** BINÄR-BCD-KONVERTIERUNG ***
;*-------------------------------------------------*
;*** Binärzahl muss im Akku übergeben werden ***
;***************************************************
bin2bcd:
;hunderter-stelle
push acc
mov b, #100 ; wert 100 ins b-register schreiben
div ab ; binärwert im a durch 100 dividieren
; ergebnis steht im Akku (rest im b)
mov H, a ; hunderterstelle im RAM ablegen
pop acc
mov b, #100
subb a, b ; 100 subtrahieren
;zehner-stelle
push acc
mov b, #10 ; wert 10 ins b-register schreiben
div ab ; binärwert im a durch 10 dividieren
; ergebnis steht im Akku (rest im b)
mov Z, a ; hunderterstelle im RAM ablegen
pop acc
mov b, #10
subb a, b ; 10 subtrahieren
;einer-stelle
mov E, a ; hunderterstelle im RAM ablegen