3.2.38 MAC_Pib_t Struct
C
typedef struct mac_pib_tag {
/** Holds the 64 bit address of the coordinator with which the
* device is associated. */
uint64_t mac_CoordExtendedAddress;
#if (MAC_INDIRECT_DATA_FFD == 1)
/** Holds the maximum time (in superframe periods) that a indirect
* transaction is stored by a PAN coordinator. */
uint16_t mac_TransactionPersistenceTime;
#endif
/** Holds the 16 bit short address of the coordinator with which the
* device is associated. A value of 0xfffe indicates that the coordinator
* is only using its 64 bit extended address. A value of 0xffff indicates
* that this value is unknown. */
uint16_t mac_CoordShortAddress;
#if (MAC_INDIRECT_DATA_BASIC == 1)
/** The maximum number of CAP symbols in a beaconenabled PAN, or symbols
* in a nonbeacon-enabled PAN, to wait either for a frame intended as a
* response to a data request frame or for a broadcast frame following a
* beacon with the Frame Pending subfield set to one.
* This attribute, which shall only be set by the next higher layer, is
* dependent upon macMinBE, macMaxBE, macMaxCSMABackoffs and the number
* of symbols per octet. See 7.4.2 for the formula relating the attributes.
* Maximum values:
* O-QPSK (2.4 GHz and 900 MHz for Channel page 2): 25766
* BPSK (900 MHz for Channel page 0): 26564
* Both values are valid for
* macMinBE = 8
* macMaxBE = 8
* macMaxCSMABackoffs = 5
* This PIB attribute is only used if basic indirect data transmission
* is used or if beacon enabled network is enabled. */
uint16_t mac_MaxFrameTotalWaitTime;
#endif
/** The maximum time, in multiples of aBaseSuperframeDuration, a device
* shall wait for a response command frame to be available following a
* request command frame. */
uint16_t mac_ResponseWaitTime;
#if (MAC_ASSOCIATION_INDICATION_RESPONSE == 1)
/** Holds the value which states whether a coordinator is currently
* allowing association. A value of true indicates that association
* is permitted. */
uint8_t mac_AssociationPermit;
#endif
#if (MAC_START_REQUEST_CONFIRM == 1)
/** Holds the length, in octets, of the beacon payload. */
uint8_t mac_BeaconPayloadLength;
/** Holds the sequence number added to the transmitted beacon frame. */
uint8_t mac_BSN;
#endif
#if (MAC_ASSOCIATION_REQUEST_CONFIRM == 1)
/** Indication of whether the device is associated to the PAN through the
* PANncoordinator. A value of TRUE indicates the device has associated
* through the PAN coordinator. Otherwise, the value is set to FALSE. */
uint8_t mac_AssociatedPANCoord;
#endif
/** Holds the value which states whether a device automatically sends a
* data request command if its address is listed in the beacon frame.
* A value of true indicates that the data request command is
* automatically sent. */
uint8_t mac_AutoRequest;
/** Holds the value which states the number of backoff periods during
* which the receiver is enabled following a beacon in
* battery life extension mode.
* This value is dependent on the currently selected logical channel. */
uint8_t mac_BattLifeExtPeriods;
/* Holds the sequence number of the transmitted data or command frame. */
uint8_t mac_DSN;
/** Holds the value which states whether the MAC sublayer is to enable
* its receiver during idle periods. */
bool mac_RxOnWhenIdle;
/** Indication of whether the MAC sublayer has security enabled. A value
* of TRUE indicates that security is enabled, while a value of FALSE
* indicates that security is disabled. */
bool mac_SecurityEnabled;
/** Private MAC PIB variables, only valid for testing purposes */
#ifdef TEST_HARNESS
/** Holds the private MAC PIB attribute to generate a frame with an
* illegale frame type. */
uint8_t privateIllegalFrameType;
/** Holds the private MAC PIB attribute which suppresses the initiation
* of a data request frame after association request. */
uint8_t privateNoDataAfterAssocReq;
/** Holds the private MAC PIB attribute to pretend virtual Beacon-enabled
* PANs. */
uint8_t privateVirtualPANs;
#endif
} MAC_Pib_t;
Summary
Structure implementing the MAC PIBs
Description
None
Remarks
None
