tholan
14.02.2008, 13:56
Ich habe 3 7-SegmentZiffern deren Bitmuster
(Zeichen 0 - 9) schon in einem Array definiert sind.
Die möchte ich seriell über 3 angeschlossene SiPo Schieber zur Anzeige bringen.
Nun muß ich wohl einen 8- Bitwert in 3 8-Bitwerte
für die dezimale Darstellung des Wertes auf diesen 3 Digits zerlegen.
Das Byte für das untere Digit soll also den Anteil des Wertes, der kleiner als 10 ist erhalten.
Das Byte für das mittlere Digit soll den Anteil des Wertes, der (größer als 9 und) kleiner als 100, minus der Einer erhalten.
Das Byte für das höchste Digit soll den Anteil des Wertes, der größer als 99, minus der Einer und minus der Zehner erhalten.
Dafür muß ich dann wohl "Einer", "Zehner" und "Hunderter" des Wertes ermitteln.
Bin ich da auf dem richtigen Weg?
Läßt sich das mit einfachen Bitoperationen für einem ATmega8 realisieren?
vielen Dank,
tholan
(Zeichen 0 - 9) schon in einem Array definiert sind.
Die möchte ich seriell über 3 angeschlossene SiPo Schieber zur Anzeige bringen.
Nun muß ich wohl einen 8- Bitwert in 3 8-Bitwerte
für die dezimale Darstellung des Wertes auf diesen 3 Digits zerlegen.
Das Byte für das untere Digit soll also den Anteil des Wertes, der kleiner als 10 ist erhalten.
Das Byte für das mittlere Digit soll den Anteil des Wertes, der (größer als 9 und) kleiner als 100, minus der Einer erhalten.
Das Byte für das höchste Digit soll den Anteil des Wertes, der größer als 99, minus der Einer und minus der Zehner erhalten.
Dafür muß ich dann wohl "Einer", "Zehner" und "Hunderter" des Wertes ermitteln.
Bin ich da auf dem richtigen Weg?
Läßt sich das mit einfachen Bitoperationen für einem ATmega8 realisieren?
vielen Dank,
tholan