Texas Instruments CC2650DK Benutzerhandbuch

Seite von 1570
IEEE 802.15.4
If a transmit operation is started in the foreground, the receive operation is suspended. The receiver stops
as when aborted, but the synthesizer is left on to the extent possible when switching to transmit mode.
When the receiver has stopped, the status field of the command structure is set to IEEE_SUSPENDED.
When the transmit command is done, the receiver restarts and the status field of the command structure is
set back to RUNNING.
Table 23-79. End of Receive Operation
Condition
Status Code
Result
Observed end trigger and finished any ongoing reception
IEEE_DONE_OK
True
Received CMD_STOP
IEEE_DONE_STOPPED
False
Received CMD_ABORT or CMD_IEEE_ABORT_BG
IEEE_DONE_ABORT
Abort
Observed illegal parameter
IEEE_ERROR_PAR
Abort
23.5.4.1.5 CCA Monitoring
While the receiver is running, the radio CPU monitors some signals for use in clear-channel assessment.
This monitoring is controlled by ccaOpt. There are three sources for CCA: RSSI above-level (ccaEnergy),
carrier sense based on the correlation value (ccaCorr), and carrier sense based on sync found (ccaSync).
Each of these may have the state Busy, Idle, or Invalid.
The RSSI above-level is maintained by monitoring the RSSI. If the RSSI is greater than or equal to
ccaRssiThr, ccaEnergy is Busy. If the RSSI is smaller than ccaRssiThr, ccaEnergy is Idle. When an RSSI
calculation has not yet been completed since the receiver started, ccaEnergy is Invalid.
The carrier-sense monitoring based on correlation value uses correlation peaks as defined for use in the
SFD search algorithm in the receiver. If the number of correlation peaks observed in the last 8-symbol
periods (32 µs) is greater than ccaOpt.corrThr, ccaCorr is Busy; otherwise ccaCorr is Idle. The value of
ccaOpt.corrThr can be from 0 to 3. While the receiver is receiving a frame, ccaCorr is Busy regardless of
the observed correlation peaks. If the time since the receiver started is less than 8 symbol periods and the
number of correlation peaks observed since the receiver started is less than or equal to ccaOpt.corrThr,
ccaCorr is Invalid.
The carrier-sense monitoring based on sync found is maintained by the radio CPU as follows. If sync is
obtained on the receiver, the radio CPU checks the PHY header to find the frame length. The radio CPU
considers the channel to be busy for the duration of this frame. This check is done even if reception of the
frame is stopped due to the frame filtering and sync search is restarted. If sync is found again while the
channel is viewed as busy, the channel is viewed as Busy until both these frames have ended according
to the observed frame lengths. The Invalid state is not used for ccaSync.
If the radio is transmitting an ACK or is suspended for running a TX operation, ccaEnergy, ccaCorr, and
ccaSync are all Busy.
The overall CCA state ccaState depends on the ccaEnEnergy, ccaEnCorr, and ccaEnSync bits of ccaOpt
together with the ccaCorrOp and ccaSyncOp bits. The following rules apply for finding ccaState (ccaTmp
is a helper state in the description):
If ccaEnEnergy = 0 and ccaEnCorr = 0 and ccaEnSync = 0, then ccaState = Idle
If ccaEnEnergy = 1 and ccaEnCorr = 0, then ccaTmp = ccaEnergy
If ccaEnEnergy = 0 and ccaEnCorr = 1, then ccaTmp = ccaCorr
If ccaEnEnergy = 1 and ccaEnCorr = 1 and ccaCorrOp = 0, then:
If either ccaEnergy or ccaCorr is Busy, then ccaTmp = Busy;
Otherwise, if either ccaEnergy or ccaCorr is Invalid, then ccaTmp = Invalid;
Otherwise, ccaTmp = Idle
If ccaEnEnergy = 1 and ccaEnCorr = 1 and ccaCorrOp = 1, then:
If either ccaEnergy or ccaCorr is Idle, then ccaTmp = Idle;
Otherwise, if either ccaEnergy or ccaCorr is Invalid, then ccaTmp = Invalid;
Otherwise, ccaTmp = Busy
1507
SWCU117A – February 2015 – Revised March 2015
Radio
Copyright © 2015, Texas Instruments Incorporated