Libnodave Bitauswertung

K-SYSTEM-D

Level-1
Beiträge
51
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,

bin auch mal wieder am Basteln an meiner Visu!
ich gehe mal davon aus das die Bitauswertung schon oft genug zu Sprache gekommen ist, aber auch nach 4 stunden suchen bin ich leider nicht wirklich fündig geworden und hoffe nun auf eure hilfe.

Mein Problem ist ich kann keine einzelnen Bits auswerten.

wie macht ihr das ?

hab mit daveReadBytes ein Byte eingelesen und mit DaveGetU8 in eine Variable geschrieben die ich zwar mit auswerten kann mit vergleichen auf 16 32 etc (da müsste ich ja mit etlichen zahlen vergleichen) ist das der richtige Ansatz? oder gibts da was einfaches?

hab hier mal was von GetBit gelesen nur dieser Befehl gibts bei mir nicht, muss ich da was nachtragen?

ich bin für jede hilfe dankbar

ich sollte vielleicht noch sagen bin immer noch anfänger was VB6 betrifft.:roll:

mfg Daniel

PS. will mich noch bedanken für eure Hilfen die ich schon öfter an anspruch nehmen musste und danke an zottel für libnodave und ich hoffe ich darf euch noch öfter nerven
 
Ich mache das so:

Code:
' Betriebsmeldungen
            Dim Testbyte As Byte = &H80
            dc.readManyBytes(libnodave.daveDB, CInt(MLDB), CInt(MLOFFSET), CInt(MLANZAHL), buf3)
            For j = 1 To CInt(MLANZAHL) ' anzahl der bytes
                i3 = j * 8
                i2 = i3 - 7
                Testbyte = &H80
                For i = i3 To i2 Step -1
                    If (buf3(j - 1) And Testbyte) = Testbyte Then
                        ML(i) = True
                    Else
                        ML(i) = False
                    End If
                    Testbyte = Testbyte >> 1
                Next i
            Next j

Die Bits stehen dann im Bit-Array ML.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin,

bits wäre Deine Variable, die Du mit DaveGetU8 beschrieben hast.

Code:
        'Bit 0 auswerten
        If CBool(bits And 2 ^ 0) Then
         Bit0 = 1
        Else
         Bit0 = 0
        End If
        'Bit 1 auswerten
        If CBool(bits And 2 ^ 1) Then
         Bit1 = 1
        Else
         Bit1 = 0
        End If
        ' usw
Pylades
 
Hallo zusammen,

ich danke euch

jetzt funktionierts tadellos:p

jetzt kann ich meine Visu fertig machen.

vielen vielen dank
 
Zurück
Oben