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

ページ / 1570
Bluetooth Low Energy
The output structure pOutput contains fields which give information on the command being run. The radio
CPU does not initialize the fields, so this must be done by the system CPU when a reset of the counters is
desired. The fields are updated by the radio CPU as described below. The list also indicates when
interrupts are raised in the system CPU.
If a CONNECT_REQ packet has been transmitted, nTXConnectReq is incremented and a TX_DONE
interrupt is raised.
If an ADV*_IND packet is received with CRC OK and the bIgnore flag cleared, nRXAdvOk is
incremented, an RX_OK interrupt is raised, and timeStamp is set to a timestamp of the start of the
packet.
If an ADV*_IND packet is received with CRC OK and the bIgnore flag set, nRXAdvIgnored is
incremented and an RX_IGNORED interrupt is raised.
If an ADV*_IND packet is received with CRC error, nRXAdvNok is incremented and an RX_NOK
interrupt is raised.
If an ADV*_IND packet is received and did not fit in the RX queue, nRXAdvBufFull is incremented and
an RX_BUF_FULL interrupt is raised.
If a packet is received, lastRssi is set to the RSSI of that packet
If the first RX data entry in the RX queue changed state to Finished after a packet was received, an
RX_ENTRY_DONE interrupt is raised.
An initiator operation ends with one of the statuses listed in
. The status field of the
command structure after the operation is ended indicates the reason why the operation ended. In all
cases, a COMMAND_DONE interrupt is raised. In each case, it is indicated if the result is True, False, or
Abort, which decides the next action.
Table 23-127. End of Initiator Operation
Condition
Status Code
Result
Performed Action Number2 (transmitted CONNECT_REQ)
BLE_DONE_CONNECT
False
Observed trigger indicated by pParams->timeoutTrigger while waiting for
BLE_DONE_RXTIMEOUT
True
sync on ADV*_IND
Observed trigger indicated by pParams->timeoutTrigger, then performed
BLE_DONE_RXTIMEOUT
True
Action Number1, 2, 3, 4, or 5.
Observed trigger indicated by pParams->endTrigger while waiting for sync
BLE_DONE_ENDED
False
on ADV*_IND
Observed trigger indicated by pParams->endTrigger, then performed Action
BLE_DONE_ENDED
False
Number1, 2, 3, or 4
Observed CMD_STOP while waiting for sync on ADV*_IND
BLE_DONE_STOPPED
False
Observed CMD_STOP, then performed Action Number1, 2, 3, or 4
BLE_DONE_STOPPED
False
Received CMD_ABORT
BLE_DONE_ABORT
Abort
No space in RX buffer to store received packet
BLE_ERROR_RXBUF
False
Illegal value of channel
BLE_ERROR_PAR
Abort
LLData length field has illegal value
BLE_ERROR_PAR
Abort
23.6.4.7 Generic Receiver Command
The generic receiver command is used to receive physical layer test packets or to receive any packet,
such as in a packet sniffer application.
A generic receiver operation is started by a CMD_BLE_GENERIC_RX command. In the command
structure, it has a pParams parameter of the type defined in
and a pOutput parameter of the
type defined in
At the start of a generic receiver operation, the radio CPU waits for the start
trigger, then programs the frequency based on the channel parameter of the command structure. The
radio CPU sets up the access address defined in pParams->accessAddress and uses the CRC
initialization value defined in pParams->crcInit. The whitener is set up as defined in the whitening
parameter. The radio CPU then configures the receiver.
1542
Radio
SWCU117A – February 2015 – Revised March 2015
Copyright © 2015, Texas Instruments Incorporated