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