Texas Instruments CC2650DK 사용자 설명서

다운로드
페이지 1570
Bluetooth Low Energy
Table 23-110. Conditions for Incrementing Counters and Raising Interrupts
for Master and Slave Commands
Condition
Counter Incremented
Interrupt Generated
Packet transmitted
nTx
TX_DONE
Packet transmitted and acknowledgment received
nTxAck
TX_ACK
Packet with LLID = 11b transmitted
nTxCtrl
TX_CTRL
Packet with LLID = 11b transmitted and acknowledgment received
nTxCtrlAck
TX_CTRL_ACK
Packet with LLID = 11b transmitted, acknowledgment received, and
nTxCtrlAckAck
TX_CTRL_ACK_ACK
acknowledgment sent
Packet transmitted with same SN as previous transmitted packet
nTxRetrans
TX_RETRANS
Packet with payload transmitted and acknowledgment received
nTxEntryDone
TX_ENTRY_DONE
Packet received with bCrcErr = 0, bIgnore = 0, and payload length > 0
nRxOk
RX_OK
Packet received with CRC error (bCrcErr = 1)
nRxNok
RX_NOK
Packet received with bCrcErr = 0 and bIgnore = 1
nRxIgnored
RX_IGNORED
Packet received with bCrcErr = 0, bIgnore = 0, and payload length = 0
nRxEmpty
RX_EMPTY
Packet received with LLID = 11b, bCrcErr = 0 and bIgnore = 0
nRxCtrl
RX_CTRL
Packet received with LLID = 11b, bCrcErr = 0 and bIgnore = 0, and
nRxCtrlAck
RX_CTRL_ACK
acknowledgment sent
Packet received which did not fit in Rx buffer and was not to be flushed
nRxBufFull
RX_BUF_FULL
The first Rx data entry in the Rx queue changed state to finished
-
RX_ENTRY_DONE
The radio CPU maintains two counters: one packet counter nPkt, and one NACK counter nNack. They are
both initialized to pParams->maxPkt and pParams->maxNack, respectively, at the start of the master or
slave radio operation. The packet counter nPkt is decremented each time a packet is transmitted. The
NACK counter nNack is decremented if a packet is received that does not contain an acknowledgment of
the last transmitted packet, and reset to pParams->maxNack if an acknowledgment is received. If either
counter counts to 0, the operation ends. This occurs after a packet has been received for master and a
packet has been transmitted for slave. Setting pParams->maxPkt or pParams->maxNack to 0 disables the
corresponding counter functionality.
A trigger to end the operation is set up by pParams->endTrigger and pParams->endTime. If the trigger
defined by this parameter occurs, the radio operation ends as soon as possible. Any packet transmitted
after this has MD = 0, and the connection event ends after the next packet has been transmitted for a
slave or received for a master. If the immediate command CMD_STOP is received by the radio CPU, it
has the same meaning as the end trigger occurring, except that the status code after ending is
CMD_DONE_STOPPED.
The register pParams->seqStat contains bits that are updated by the radio CPU during operation, and
used for getting correct operation on SN and NESN and retransmissions. The rules for the radio CPU are
as follows:
Before the first operation on a connection, the bits in pParams->seqStat are set as follows by the
system CPU: lastRXSn = 1, lastTXSn = 1, nextTXSn = 0, bFirstPkt = 1, bAutoEmpty = 0, bLlCtrlRX =
0, bLlCtrlAckRX = 0, bLlCtrlAckPending = 0
When determining if the SN field of the header was the same as the SN field of the last successfully
received packet, the received SN bit is compared to pParams->seqStat.lastRXSn.
If a packet is received with correct CRC and the packet fits in an Rx buffer, the received SN is stored
in pParams ->seqStat.lastRXSn. If the packet was an LL control packet (LLID = 11b) and the packet
was not to be ignored, pParams->seqStat.bLlCtrlAckPending is set to 1 and an RX_CTRL interrupt is
raised.
If a packet is received with correct CRC and the received NESN is different from pParams-
>seqStat.lastTXSn, pParams->seqStat.nextTXSn is set to the value of the received NESN (regardless
of whether the packet fits in an RX buffer).
If pParams->seqStat.bFirstPkt = 0:
If pParams ->seqStat.nextTXSn was updated and became different from pParams-
>seqStat.lastTXSn after reception of a packet, nNack is set to pParams->maxNack and a TX_ACK
interrupt is raised.
1528
Radio
SWCU117A – February 2015 – Revised March 2015
Copyright © 2015, Texas Instruments Incorporated