PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Variablen



Xeus
23.05.2005, 15:47
Hallo, hab einen zähler gebastelt in dem ein integer immer +1 gesetzt wird. da integer auf 32blabla begrenzt ist, hört bei dieser zahl mein zähler das zählen auf. welchen variablentyp muss ich nehmen, damit ich weiter zählen kann.

gruß

xeus

PicNick
23.05.2005, 15:56
Hi, Long geht noch ein paar Meter weiter (2147483647)

Xeus
23.05.2005, 16:00
gibts noch was noch großeres?

PicNick
23.05.2005, 16:09
Bei Bascom sieht es nicht so aus, der macht nur bis 32 Bit
Da wirst du wahrscheinlich selbst Hand anlegen müssen.

oe9vfj
23.05.2005, 16:17
Hallo Xeus,

Es gäbe noch den inzwischen eingeführten Datentyp Double (Fließkommazahl) welcher im Ganzzahlenbereich von 0 bis etwa 10^15 geht (Als Fließkommazahl 10^-308 bis 10^+308). Diese Typ ist allerdings etwas ressourcenintensiv. Wenn Du uns mal erzählen könntest, welchem Zweck dieser Zähler dient, kann man Dir etwas gezieltere Tipps geben.

PicNick
23.05.2005, 16:20
Schau an, na fein.
(Ich glaub der Fragesteller macht Odometrie für Raumsonden)

Xeus
23.05.2005, 18:22
Ich hab ein Steuergerät für Solarstromanlagen gebaut. Dieser zählt die Gesamte produzierte Leistung in Watt mit. Es ist logisch, dass ich bei einer 40 KWp Anlage schnell das Integerpotential ausgeschöpft hab. Um trotzdem Zuverlässg die Daten sammeln zu können benötige ich einen alternativen Variablentyp.

gruß

xeus

Björn
23.05.2005, 18:27
Hi,

ich würde eine zweite Variable nehmen.
Also: Wenn deine normale Variable (Long) 1000000 oder so erreicht, teilst du sie durch 1000 oder so und erhöhst deine zweite Variable um 1.
Später musst nur an die Long Variable 3 Nullen mal Variable 2 anhängen.
Eine Alternative wüsste ich nicht.

Gruß, Björn

Xeus
23.05.2005, 18:31
super, darauf hätte ich auch selber kommen müssen.

vielen dank

xeus

Björn
23.05.2005, 18:35
:D
Wenn dir diese Lösung reicht ist ja OK ;)
Bin selber eigentlich (obwohl es bei meinem Namen steht :D ) kein BasCom Genie.
Wenn du natürlich genaue zahlen brauchst, darfst du nicht einfach so viele Nullen anhängen sondern wieder multiplizieren - dann bräuchtest du ja wieder einen großen Zahlenbereich... Oder wie verwendest du die Daten weiter?

Gruß,
Björn

Gruß,
Björn

Xeus
24.05.2005, 17:50
erst mal durch 1000 teilen, und dann in einem abspeichern, und geg. über uart abfragen