Bitfeld in Bytearrays

Gast #1146533
Lesenswert?

in meinem projekt, habe ich die digitalen eingänge in form von einem 
bitfeld in einem bytearray liegen abgebildet.
die buskommunikation ist modbus rtu. dabei gibt es das command "read 
input", das eine startadresse und eine datenlänge vorgibt.
das heiß, ich beginne zb. ab den input 9 (byte[1], bit1) zu lesen. von 
da an sollen 12 eingänge gelesen werden, also bis input 21 (byte[3], 
bit4).
das ergebniss soll wieder in bytes stehen, allerdings mit der 
bitposition 0 beginnend. in diesem beispiel wären es dann 2 Bytes - 
byte[0] mit 8 relavanten bits und byte[1] mit 4 relavanten bits.

irgen wie steh ich heute schon am schlauch, wie man so schön sagt.

vielleicht kann mir jemand von euch helfen - danke!
gruß peter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren