Splitting out a frame of bytes

I would prefer the non-portable bit field version over the #define << & version.
At least the compiler does not mess up bit masks.