Unpack K Bits: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
Line 25: Line 25:


== Source Files ==
== Source Files ==
; C++ files
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/unpack_k_bits_bb_impl.cc]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/unpack_k_bits.cc]
; Header files
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/unpack_k_bits_bb_impl.h]
; Public header files
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/unpack_k_bits_bb.h]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/unpack_k_bits.h]
; Block definition
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/grc/blocks_unpack_k_bits_bb.block.yml]

Revision as of 13:22, 25 April 2023

Opposite of Pack K Bits - Converts a byte with k relevant bits to k output bytes with 1 bit each, located in the LSB.

In other words, this block picks the K least significant bits from a byte, and expands them into K bytes of 0 or 1.

Example:

k = 4

in = [0xf5, 0x08]

out = [0,1,0,1,1,0,0,0]

Each input byte produced four output bytes (that are either 0 or 1). Remember that there is no item type of "bit" in GNU Radio, so we have to use bytes to represent single bits.

Parameters

K
Constant for unpacking bits

Example Flowgraph

This flowgraph is taken from the Guided_Tutorial_PSK_Demodulation tutorial.

Stage6 grc.png

Source Files

C++ files
[1]
[2]
Header files
[3]
Public header files
[4]
[5]
Block definition
[6]