> The frame is a 240bit binary string that contains some 31 data points
> of varying bit width. bit 1=lsb and 240 =msb. transmission begins with
> lsb. the frame is such that some data points can be as short as one
> bit wide where the longest is 25bits wide. I looked at the array
> functions but they want to work in bytes, not bits. I saw one
> suggestion to flatten the string to a cluster and then bust the frame
> up in that manner. Not sure if that will do it though unless i append
> zeros anything less than 8 bits in width and turn the 25bit words into
> 32bit unsigned... this make any sense?
>
The array nodes work on elements. If the array is bytes, then they work
in bytes. If you truly want to work in bits, then convert to bits, the
n
use the array nodes.
I'm not sure if this is the best conversion, but wire the array of bytes
to a For loop. The loop will index the bytes automatically. Inside the
loop, wire up a conversion bullet to go from bytes to array of Booleans.
Wire this loop out to the edge of the loop, and this will make a 2D
array of Booleans. Outside the loop, you can use Array Reshape to make
a 1D array of the correct length.
With this you can index, split, or do whatever you like.
For a different but similar problem, you might want to look at the past
labviewzone challenge concerning bit twiddling.
Greg McKaskle