Specifications

CC
1100E
SWRS
082
Page
35
of
92
packets, infinite packet length mode must be
used.
Fixed packet length mode is selected by
setting
PKTCTRL0.LENGTH_CONFIG
=0
. The
desired packet length is set by the
PKTLEN
register.
In variable packet length mode,
PKTCTRL0.LENGTH_CONFIG
=1
,
the packet
length is configured by the first byte aft
er the
sync word.
The packet length is defined as the
payload data, excluding the length byte and
the optional CRC.
The
PKTLEN
register is
used to set the maximum packet length
allowed in RX. Any packet received with a
length by
te with a value greater than
PKTLEN
will be discarded.
With
PKTCTRL0.LENGTH_CONFIG
=2
, the
packet length is set to infinite and transmission
and reception will continue until turned off
manually. As
described in the next section,
this can be used to support packet formats
with different length configuration than natively
supported by
the
CC
1100E
.
One should make
sure that TX mode is not turned off during the
transmission of the first half of any byte.
Refer
to the
CC
1100E
Errata Note
[5]
for more details.
15.2.1
Arbitrary Length Field C
onfiguration
The packet length register,
PKTLEN
, can be
reprogrammed during receive and
transmit.
In
combination with fixed packet length mode
(
PKTCTRL0.LENGTH_CONFIG
=0
)
,
t
his opens
the possibility to have a different length field
configuration than supported for variable
length packets (
in variable packet length
mode
the
length byte is the first byte after the sync
word). At the start of reception, the packet
length is set to a large value. The MCU reads
out enough bytes
to interpret the length field in
the packet. Then the
PKTLEN
valu
e is set
according to this value. The end of packet will
occur when the byte counter in the packet
handler is equal to the
PKTLEN
register. Thus,
the MCU must be able to program the correct
length, before the internal counter re
aches the
packet length.
15.2.2
Packet Length > 25
5
T
he packet automation control register,
PKTCTRL0
,
can be reprogrammed during TX
and RX. This opens the possibility to transmit
and receive packets th
at are longer than 256
bytes an
d
still be able to use the packet
handling hardware support.
At the start of the
packet, the infinite
packet length mode
(
PKTCTRL0.LENGTH_CONFIG
=2
)
must be
active.
On the TX side, the
PKTLEN
registe
r is
set to
mod (
length, 256)
.
On the RX side the
MCU reads out enough bytes to interpret the
length field in the packet
and sets the
PKTLEN
register to
mod (
length, 256)
.
When less than
256 bytes remains of the packet
,
the MCU
disables infinite packet length
mode
and
activates fixed
packet length mode
.
When the
internal byte counter reaches the
PKTLEN
value, the transmission or reception ends
(the
radio enters
the state determined by
TXOFF_MODE
or
RXOFF_MODE
)
.
Automatic
CRC appending/checking can
also
be used
(by setting
PKTCTRL0.CRC_EN
=
1
).
When for example a 600
-
byte packet is to be
transmitted, the MCU should do the
following
(see also
Figure
16
)
Set
PKTCTRL0.LENGTH_CONFIG
=2
.
Pre
-
program the
PKTLEN
register to
mod
(
600,
256)
=
88.
Transmit at least 345 bytes
(600
-
255)
, for
example by filling the 64
-
byte TX FIFO six
times (384 bytes transmitted).
Set
PKTCTRL0.LENGTH_CONFIG
=0
.
The transmission ends when the packet
counter reaches 88. A total of 600 bytes
are transmitted.
Note:
T
he minimum packet length
supported (excluding the optional length
byte and CRC) is one byte of paylo
ad
data.