UnterstesDigit = Zahl % 10 // Modulo
Zahl = Zahl / 10
ZweitesDigit = Zahl % 10
...
Dann eine Tabelle
uint8_t DigitTable = {
0b01010101; // Bitmuster, das wie eine 0 Aussieht
0b00000011; // Bitmuster für 1
.....
}
und dann DigitTable[digit] ausgeben. Man kann die Tabelle noch etwas länger machen, und mit Zahlen größer 10 andere Symbole darstellen, so - oder E oder was man sich für Error, overflow so ausdenkt. Wenn der Dezimalpunkt mit im Display quasi als achtes Segment ist, kann man einfach das passende Bit auf die richtige Stelle aufodern.
MfG Klebwax
Lesezeichen