Forum: Mikrocontroller und Digitale Elektronik Intengervariable


von Thomas Walter (Gast)


Lesenswert?

Habe meinen µC so programmiert das er die Überläufe meine Timers zählt. 
Ich weis Wie viele Überläufe notwending sind um ein Sekunde zu ergeben. 
Die anzahl der überläufe wird in einer intenger variable gespeichert. 
nun habe ich das problem das ich wenn ich eine zahl höher als neun 
ausgeben will nicht weis wie ich dies programmieren soll.

z.B.: die Zahl 18    Wie soll ich programmiernen das beim multiplexen 
der µc weis das er die "1" am ersten 7 segment ausgibt und den "8" am 
zweiten 7 segment.

von Karl H. (kbuchegg)


Lesenswert?

Zeig deinen jetzigen Code.

Für mich klingt deine Beschreibung danach, als ob du das Multiplexing 
nicht mittels Timer machst bzw. überhaupt nicht multiplext.

(Nur damit du dir das Prinzip mal ansehen kannst, mit dem man das Ganze 
löst)
http://www.mikrocontroller.net/articles/AVR-Tutorial:_7-Segment-Anzeige

von 42 (Gast)


Lesenswert?

...also ich verstehe nur 42 aus dem Gestammel!

von 42 (Gast)


Lesenswert?

... aber meine Glaskugel ist auch zur Reparatur.

von Andreas K. (derandi)


Lesenswert?

Ich denke, ich weiß, was er meint.
Er hat in einem Integer eine Zahl, die dezimal betrachtet mehr als eine 
Stelle hat, und er weis nicht, wie man diese Zahl der Reihe nach in ihre 
Zeichen zerlegt.
Also, wie man aus (int)23 eine '2' und eine '3' macht.
Stimmts?

von Thomas Walter (Gast)


Lesenswert?

GENAU DAS!!!!


endlich einer der mich versteht :)

von Klaus W. (mfgkw)


Lesenswert?

Dann sag doch, was du willst, teile deine Zahl durch 10 (das gibt die 
eine Stelle) und nimm die ursprüngliche Zahl modulo 10 (das liefert die 
andere Stelle).

von 42 (Gast)


Lesenswert?

Klaus Wachtler schrieb:
> ursprüngliche Zahl modulo 10
>
ob er das verstanden hat?

von Karl H. (kbuchegg)


Lesenswert?

Er kann auch von der Zahl einfach das Zehnfache der Zehner abziehen.

So nach dem Muster

34 / 10  ->  3
             |
     +-------+
     v
34 - 3 * 10  -> 4


also 3 Zehner, 4 Einer.


Aber irgendwie bezweifle ich, dass das schon alles ist.

von 42 (Gast)


Lesenswert?

http://www.mikrocontroller.net/attachment/highlight/52018

... er beachte vor allem die Prozeduren:

write_zahl()
ISR(TIMER0_OVF_vect)

Mahlzeit und 42... :-)

von Anja (Gast)


Lesenswert?

42 schrieb:
> write_zahl()

und wann erklärt ihr im daß er auch einfach itoa() verwenden könte?

Gruß Anja

von Klaus W. (mfgkw)


Lesenswert?

und wer erklärt ihm danach, daß itoa() ihm nicht viel hilft, wenn er 
eine 7-Segment-Anzeige ansteuern will?

von Frank (Gast)


Lesenswert?

Klaus Wachtler schrieb:
> und wer erklärt ihm danach, daß itoa() ihm nicht viel hilft, wenn er
> eine 7-Segment-Anzeige ansteuern will?

Anja?

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.