English
Language : 

CC2520_11 Datasheet, PDF (82/133 Pages) Texas Instruments – 2.4 GHZ IEEE 802.15.4/ZIGBEE RF TRANSCEIVER
CC2520 DATASHEET
2.4 GHZ IEEE 802.15.4/ZIGBEE® RF TRANSCEIVER
SWRS068 – DECEMBER 2007
Automatic Control (AUTOACK)
When FRMFILT0.FRM_FILTER_EN and FRMCTRL0.AUTOACK are both enabled, the CC2520 will
determine automatically whether or not to transmit acknowledgment frames:
• The RX frame must be accepted by frame filtering (indicated by the RX_FRM_ACCEPTED
exception)
• The acknowledgment request bit must be set in the RX frame
• The RX frame must not be a beacon or an acknowledgment frame
• The FCS of the RX frame must be correct
Automatic acknowledgments can be overridden by the SACK, SACKPEND and SNACK command strobes.
For instance, if the microcontroller is low on memory resources and cannot store a received frame, the
SNACK strobe can be issued during reception and prevent acknowledging the discarded frame.
By default, the AUTOACK feature never sets the frame pending bit in the acknowledgment frames. Apart
from manual override with command strobes, there are two options:
• Automatic control, using the AUTOPEND feature
• Manual control, using the FRMCTRL1.PENDING_OR bit
Automatic Setting of the Frame Pending Field (AUTOPEND)
When the SRCMATCH.AUTOPEND bit is set, the result from source address matching determines the
value of the frame pending field. Upon reception of a frame, the frame pending field in the (possibly)
returned acknowledgment will be set, given that:
• FRMFILT0.FRAME_FILTER_EN is set.
• SRCMATCH.SRC_MATCH_EN is set.
• SRCMATCH.AUTOPEND is set.
• The received frame matches the current SRCMATCH.PEND_DATAREQ_ONLY setting.
• The received source address matches at least one source match table entry, which is enabled in
both SRCSHORTEN and SRCSHORTPENDEN, or SRCEXTEN and SRCEXTPENDEN.
If the source matching table runs full, the FRMCTRL1.PENDING_OR bit may be used to override the
AUTOPEND feature and temporarily acknowledge all frames with the frame pending field set.
20.4 RX FIFO Access
The RX FIFO can hold one or more received frames, provided that the total number of bytes is 128 or less.
There are two ways to determine the number of bytes in the RX FIFO:
• Reading RXFIFOCNT register
• Using the FIFOP and FIFO signals in combination with the FIFOPCTRL.FIFOPTHR setting
There are several ways to access the RX FIFO:
• The RXBUF instruction transfers received bytes from CC2520 to the microcontroller
• The RXBUFCP instruction transfers received bytes from CC2520 to the microcontroller and makes
a copy of the read bytes in CC2520 RAM
• The RXBUFMOV instruction transfers received bytes from the RX FIFO to CC2520 RAM
• The RXFIRST register allows software to peek at the head byte in the RX FIFO
The SFLUSHRX command strobe resets the RX FIFO, removing all received frames, and clearing all
counters, status signals and sticky error conditions.
20.4.1 Using the FIFO and FIFOP Signals
The FIFO and FIFOP signals are useful when reading out received frames in small portions while the frame
is received:
• The FIFO signal (default output on GPIO1) goes high when there is one or more bytes in the RX
FIFO, but low when RX overflow has occurred.
• The FIFOP signal (default output on GPIO2) goes high when
82
WWW.TI.COM