User manual

www.ti.com
IEEE 802.15.4
A non-15.4 radio operation may not be run simultaneously with a 15.4 radio operation; if a non-15.4 radio
operation is entered while a 15.4 operation is running on either level, scheduling error occurs. Chains of
15.4 and non-15.4 operations can be created, however.
When a foreground-level operation finishes, an FG_COMMAND_DONE interrupt is raised. If the command
was the last one in a chain, a LAST_FG_COMMAND_DONE interrupt is raised as well (refer to
Table 23-75). Background-level operations use the common interrupts, COMMAND_DONE and
LAST_COMMAND_DONE; refer to .
The status field of the command structure is updated during the operation. When submitting the
command, the system CPU writes this field with a state of IDLE. During the operation, the radio CPU
updates the field to indicate the operation mode. When the operation is done, the radio CPU writes a
status indicating that the command has finished. The status codes for IEEE 802.15.4 radio operation are
listed in Table 23-77.
Table 23-77. IEEE 802.15.4 Radio Operation Status Codes
Number Name Description
Operation not finished
0x0000 IDLE Operation not started
0x0001 PENDING Waiting for start trigger
0x0002 ACTIVE Running operation
0x2001 IEEE_SUSPENDED Operation suspended
Normal operation ending
0x2400 IEEE_DONE_OK Operation ended normally
0x2401 IEEE_DONE_BUSY CSMA-CA operation ended with failure
0x2402 IEEE_DONE_STOPPED Operation stopped after stop command
0x2403 IEEE_DONE_ACK ACK packet received with pending data bit cleared
0x2404 IEEE_DONE_ACKPEND ACK packet received with pending data bit set
0x2405 IEEE_DONE_TIMEOUT Operation ended due to timeout
0x2406 IEEE_DONE_BGEND FG operation ended because necessary background level
operation ended
0x2407 IEEE_DONE_ABORT Operation aborted by command
Operation ending with error
0x0806 ERROR_WRONG_BG Foreground level operation is not compatible with running
background level operation
0x2800 IEEE_ERROR_PAR Illegal parameter
0x2801 IEEE_ERROR_NO_SETUP Radio was not set up in IEEE 802.15.4 mode
0x2802 IEEE_ERROR_NO_FS Synth was not programmed when running RX or TX
0x2803 IEEE_ERROR_SYNTH_PROG Synth programming failed
0x2804 IEEE_ERROR_RXOVF RX overflow observed during operation
0x2805 IEEE_ERROR_TXUNF TX underflow observed during operation
The conditions for giving each status are listed for each operation. Some of the error causes listed in
Table 23-77 are not repeated in these lists. In some cases, general error causes described in Section 23.3
may occur. In all of these cases, the result of the operation as defined in Section 23.3 is Abort.
23.5.4.1 RX Operation
The receive radio operation is a background-level operation, started with the CMD_IEEE_RX command
and using the command structure given in Table 23-56.
At the start of an RX operation, the radio CPU waits for the start trigger, then programs the frequency
based on the channel parameter. If channel is 0xFF, the operation keeps running on an already-
configured channel. This requires that the operation follows another receive operation or a synthesizer
programming operation. If the frequency synthesizer is not running, the operation ends with an error. After
programming the frequency, the radio CPU configures the receiver to receive IEEE 802.15.4 packets.
1503
SWCU117AFebruary 2015Revised March 2015 Radio
Submit Documentation Feedback
Copyright © 2015, Texas Instruments Incorporated