Packet Filtering In Receive Mode; Crc Check - Texas Instruments CC2500 TK Manual

Low-cost low-power 2.4 ghz rf transceiver
Table of Contents

Advertisement

Pre-program
the
mod(600,256)=88.
Transmit at least 345 bytes, for example
by filling the 64-byte TX FIFO six times
(384 bytes transmitted).
Internal byte counter in packet handler counts from 0 to 255 and then starts at 0 again
0,1,..........,88,....................255,0,........,88,..................,255,0,........,88,..................,255,0,.......................
Infinite packet length enabled
Length field transmitted and received. Rx and Tx PKTLEN value set to mod(600,256) = 88
15.3

Packet Filtering in Receive Mode

CC2500 supports three different types of
packet-filtering: address filtering, maximum
length filtering and CRC filtering.
15.3.1 Address Filtering
Setting PKTCTRL1.ADR_CHK to any other
value than zero enables the packet address
filter. The packet handler engine will compare
the destination address byte in the packet with
the programmed node address in the ADDR
register and the 0x00 broadcast address when
PKTCTRL1.ADR_CHK=10
0xFF
broadcast
PKTCTRL1.ADR_CHK=11
address matches a valid address, the packet is
received and written into the RX FIFO. If the
address match fails, the packet is discarded
and receive mode restarted (regardless of the
MCSM1.RXOFF_MODE setting).
If the received address matches a valid
address when using infinite packet length
mode and address filtering is enabled, 0xFF
will be written into the RX FIFO followed by the
address byte and then the payload data.
15.3.2 Maximum Length Filtering
In
variable
packet
PKTCTRL0.LENGTH_CONFIG=1,
PKTLEN.PACKET_LENGTH register value is
used to set the maximum allowed packet
length. If the received length byte has a larger
value than this, the packet is discarded and
register
to
PKTLEN
Fixed packet length
enabled when less than
256 bytes remains of
packet
Figure 12: Packet Length > 256
or both 0x00 and
b
addresses
when
.
If
the received
b
length
mode,
the
SWRS040C
Set PKTCTRL0.LENGTH_CONFIG=0.
The transmission ends when the packet
counter reaches 88. A total of 600 bytes
are transmitted.
600 bytes transmitted and
received
receive mode restarted (regardless of the
MCSM1.RXOFF_MODE setting).
15.3.3 CRC Filtering
The filtering of a packet when CRC check fails
is
enabled
PKTCTRL1.CRC_AUTOFLUSH=1.
auto flush function will flush the entire RX
FIFO if the CRC check fails. After auto flushing
the RX FIFO, the next state depends on the
MCSM1.RXOFF_MODE
PKTCTRL0.CC2400_EN must be 0 (default)
for the CRC auto flush function to work
correctly.
When using the auto flush function, the
maximum packet length is 63 bytes in variable
packet length mode and 64 bytes in fixed
packet length mode. Note that the maximum
allowed packet length is reduced by two bytes
when
PKTCTRL1.APPEND_STATUS
enabled, to make room in the RX FIFO for the
two status bytes appended at the end of the
packet. Since the entire RX FIFO is flushed
when the CRC check fails, the previously
received packet must be read out of the FIFO
before receiving the current packet. The MCU
must not read from the current packet until the
CRC has been checked as OK.
15.4

CRC Check

There are two different CRC implementations.
PKTCTRL0.CC2400_EN selects between the
2 options. The CRC check is different for the 2
CC2500
by
setting
The
CRC
setting.
is
Page 31 of 89

Advertisement

Table of Contents
loading

Table of Contents