Hier mal ein kleines Beispiel wie ich das mache. In der Codesammlung
gibt es ähnliche Beispiele für die Umwandlung.
Angenommen dein AD Wert ist 999.
Ich prüfe ob der Wert größer als 1000 ist wenn ja ziehe ich 1000 ab,
speichere eine 1 im Ziffer1 Register, da es nicht der Fall ist bleibt
das Register leer bzw. wird sicherheitshalber gelöscht.
Dann überprüfe ich ob der Wert größer als 100 ist, da dies der Fall ist
ziehe ich davon 100 ab und erhöhe das leere Register Ziffer2 um eins,
das wird dann solange wiederholt bis es nicht mehr geht, also 9mal
Danach wird wieder überprüft ob der Restwert größer als 10 ist wenn ja
10 abziehen Register Ziffer3 um eins erhöhen usw.
Die letzte Ziffer kann man einfach ins Register Ziffer4 übernehmen, man
braucht ja nicht 9 mal die 1 von der 9 abzuziehen um festzustellen das
wieder 9 rauskommt.
zu den einzelnen Registern addiert man dann noch 48 dazu und hat dann
das passend Ascii Zeichen das man dann als LCD übergibt. Führende Nullen
kann man durch Ascii-Zeichen 32 ersetzen was eine Leerstelle darstellt
denn 999 schau ja besser aus als 0999.