Primitives
MKW01 Simple Media Access Controller (SMAC) Reference Manual, Rev. 0.0
Freescale Semiconductor
3-25
•
32-bit timeout value of zero causes the receiver to never timeout and
stay in receive mode until a valid data packet is received or the
MLMERXDisableRequest function is called.
•
To turn off the receiver before a valid packet is received, the
MLMERXDisableRequest call can be used.
•
If timeout is not zero and a valid packet with length greater than
u8MaxDataLength is received, SMAC will send a data indication
message and will set rxAbortedStatus_c in the rxStatus_t field of the
rxPacket_t variable.
Implementation
This primitive creates a message for PHY, completes the message with the appropriate values and fills the
timeout field with the value passed through the timeout parameter. If this value is 0, SMAC will create a
set PIB request, asking PHY to enable the gPhyPibRxOnWhenIdle attribute.
3.5
MLMERXDisableRequest
Returns the radio to idle mode from receive mode.
Prototype
smacErrors_t MLMERXDisableRequest(void);
Arguments
None
Returns
gErrorNoError_c
The request was processed and the transceiver is in idle.
gErrorNoValidCondition_c
The radio is not in RX state, or SMAC is not initialized.
gErrorBusy_c
The radio is performing another action and could not attend this request.
Usage
Call MLMERXDisableRequest
()
NOTE
This function can be used to turn off the receiver before a timeout occurs or
when the receiver is in the always-on mode.
Implementation
This function creates a message for PHY and if the timeout value from MLMERXEnableRequest was 0,
the message is filled as a set PIB request, requiring the gPhyPibRxOnWhenIdle to be set to 0. If the timeout
value is greater than 0, the message is filled as a set transceiver state request, disabling the receiver.