Download Print this page

Texas Instruments SimpleLink CC2620 Technical Reference Manual page 1558

Zigbee rf4ce wireless mcu simplelink cc13 series; simplelink cc26 series

Advertisement

Bluetooth Low Energy
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.
– Otherwise, nNack is decremented.
– If pParams ->seqStat.nextTXSn was updated and became different from pParams-
>seqStat.lastTXSn after reception of a packet, and pParams->seqStat.bAutoEmpty = 0, the current
TX queue entry is finished and the next one is set as active, and a TX_ENTRY_DONE interrupt is
raised. If pParams->seqStat.bLlCtrlTX = 1, an TX_CTRL_ACK interrupt is raised and pParams-
>seqStat.bLlCtrlAckRX set to 1.
– If pParams->seqStat.nextTXSn was updated and became different from pParams-
>seqStat.lastTXSn after reception of a packet, pParams->seqStat.bAutoEmpty is set to 0.
If no buffer is available in the TX queue, or if pParams->seqStat.nextTXSn is equal to pParams-
>seqStat.lastTXSn and pParams->seqStat.bAutoEmpty = 1 when transmission of a packet is to take
place, an automatically empty packet is transmitted. Nothing is read from the TX queue. Otherwise, the
transmitted packet is read from the first entry of the TX queue.
In the header of a transmitted packet, the SN bit is set to the value of pParams->seqStat.nextTXSn,
and the NESN bit is set to the inverse of pParams->seqStat.lastRXSn.
1558
Radio
Copyright © 2015, Texas Instruments Incorporated
SWCU117C – February 2015 – Revised September 2015
Submit Documentation Feedback
www.ti.com

Hide quick links:

Advertisement

loading