Forum: Mikrocontroller und Digitale Elektronik Dezimalzahl auf 7 Segment Anzeige.


von TT (Gast)


Lesenswert?

Hallo Liebe "Forumer",

Ich habe eine 4 stellige 7-Segment Anzeige und möchte auch Dezimalzahlen 
anziegen können.
( Integerzahlen sind keine Problem )


Woher weisst ich an welcher Stelle ich den Dezimalpunkt einschalten muss 
?
Hat jemand ein kleines Algorithmus dafür ?


Zum Beispiel nach Verarbeitung der ADC-Werten bekomme ich folgende 
zahlen :

"1", "12", "123", "1234", "123.4", "12.34", "1.234", "1.2", "1.23", 
"12.3"

wie kann ich die mit der selben Routine anzeigen lassen ?

Grüße,

TT

von Karl H. (kbuchegg)


Lesenswert?

TT schrieb:

> Ich habe eine 4 stellige 7-Segment Anzeige und möchte auch Dezimalzahlen
> anziegen können.
> ( Integerzahlen sind keine Problem )
>
>
> Woher weisst ich an welcher Stelle ich den Dezimalpunkt einschalten muss
> ?

Das  hängt hauptsächlich davon ab, wieviele Nachkommastellen du haben 
willst

> Zum Beispiel nach Verarbeitung der ADC-Werten bekomme ich folgende
> zahlen :
>
> "1", "12", "123", "1234", "123.4", "12.34", "1.234", "1.2", "1.23",
> "12.3"

Das sind aber keine Zahlen.
Der üblichen Leseart entsprechend sind das schon Strings.
Und die auszuwerten sollte nun ja wirklich nicht das grosse Problem 
sein.

In einer Schleife den String Character für Character durchgehen.
Handelt es sich um einen '.' dann Spezialbehandlung:
    das Bitmuster für die unmittelbar vorhergehende Stelle noch mit
    dem Bit für den '.' ergänzen
Ansonsten: Das Bitmuster für diesen Character aus einer Tabelle holen

> wie kann ich die mit der selben Routine anzeigen lassen ?

mit welcher 'selben' Routine?
Wie wäre es, wenn du mal ein wenig Code zeigen würdest? Die Details wie 
man das genau macht, hängen nämlich von den Details ab, wie du deine 
7-Segment Ansteuerung konkret realisiert hast.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.