OSCAT Forum

oscat.lib => oscat.lib fuer Step 7 => Thema gestartet von: Frankenwald am 04. Juni 2009, 23:56:43

Titel: Anzahl Bits umwandeln in 0...100%
Beitrag von: Frankenwald am 04. Juni 2009, 23:56:43
Hallo zusammen,

habe folgendes Problem:
habe 8 Bits die von den Taster E0.0 -E0.7 gesetzt werden können. Es soll am Ausgang ein Wert zwischen 0..80 (REAL) ausgegeben werden.
Also nach folgender Logik:
wenn 1 von den 8 Bits gesetz wird dann 10
wenn 2 von den 8 Bits gesetz wird dann 20
usw.

Also die reihenfolge der Bits ist egal, es geht nur darum wieviele gesetzt sind.

Gibt es da einen Baustein in Eurer wirklich genialen Bibliothek?

grüsse
Frank
Titel: Re: Anzahl Bits umwandeln in 0...100%
Beitrag von: dalbi am 05. Juni 2009, 00:13:01
Die Funktion zum zählen der gesetzen Bits in einem DWORD heisst BIT_COUNT (Doku Seite 203).
Der Ausgang müsste dann mit 10 multipliziert werden für 0 - 80% bzw. mit 12,5 für 0 - 100%.

Gruss Daniel
Titel: Re: Anzahl Bits umwandeln in 0...100%
Beitrag von: Frankenwald am 05. Juni 2009, 16:45:01
Danke!