Texas Instruments CC2650DK ユーザーズマニュアル

ページ / 1570
31
msb
24
16
8
0
lsb
result
return byte 3
return byte 2
return byte 1
RF Core HAL
A radio operation command will cause the radio hardware to be accessed. Radio operation commands
can do operations such as transmitting or receiving a packet, setting up radio hardware registers, or doing
more complex, protocol-dependent operations. A radio operation command can normally only be issued
while the radio is idle.
An immediate command is a command to change or request status of the radio, or for manipulating TX or
RX data queues. An intermediate command can monitor status such as received signal strength. An
immediate command can be issued at any time, but the response will in many cases only be of interest
while a radio operation is ongoing.
A direct command is an immediate command with no parameters, or in some cases, a direct command
has one or two byte parameters. A direct command is issued by sending a value to the [CMDR] register
with the format of
. The 16 most-significant bits contain the command ID of the immediate
command to run. Bits 8 through 15 may contain an optional parameter if specified for the command.
23.3.2.2 Command Status
After a command is issued, the [CMDSTA] register is updated by the radio CPU, causing an RFCMDACK
interrupt to be sent back to the system CPU. This update happens after the command has completed for
immediate and direct commands, and after the command has been scheduled for radio operation
commands. No new command may be issued until this interrupt is received. The [CMDSTA] register
consists of 32 bits, of which the 8 least-significant bits give the result, while the upper 24 bits may be used
for specific signaling in each command.
shows this format
Figure 23-5. Format of CMDSTA Register
In the result byte, bit 7 indicates whether an error occurred or not. The result byte of 0x00, meaning
Pending, is produced automatically by the radio doorbell hardware when a command is issued, and the
other bits in the [CMDSTA] register will also become 0. This will be the value of [CMDSTA] before the RF
CMD ACK interrupt is raised.
Table 23-1. Values of Result Byte in CMDSTA Register
Value
Name
Description
No Error
0x00
Pending
The command has not yet been parsed
Immediate command: the command finished successfully. Radio
0x01
Done
operation command: The command was successfully submitted for
execution
Error
0x81
IllegalPointer
The pointer signaled in CMDR is not valid
0x82
UnknownCommand
The command ID number in the command structure is unknown
The command number for a direct command is unknown, or the
0x83
UnknownDirCommand
command is not a direct command
An immediate or direct command was issued in a context where it is
0x85
ContextError
not supported
A radio operation command was attempted to be scheduled while
another operation was already running in the RF core. The new
0x86
SchedulingError
command is rejected, while the command already running is not
impacted
There were errors in the command parameters that are parsed on
submission. For radio operation commands, errors in parameters
0x87
ParError
parsed after start of the command are signaled by the command
ending, and an error is indicated in the status field of that command
structure.
1459
SWCU117A – February 2015 – Revised March 2015
Radio
Copyright © 2015, Texas Instruments Incorporated