📄 zmac.h
字号:
void mac_enable();void mac_disenable();void mcps_data_request();ZIGBEE_STATUS csma_ca();void delay_1s(int t);void mcps_data_indication();void mcps_purge_request();void mlme_associate_request();void rx_response();void mlme_associate_indication();void mlme_associate_response();void mlme_reset_request();void mlme_rx_enable_request();/*void mlme_disassociate_request();void mlme_get_request();void mlme_ges_request();void mlme_orphan_response();void mlme_scan_request();void mlme_set_request();void mlme_start_request();void mlme_sync_request();void mlme_poll_request();*/int MsduHadle;int aMaxFrameRetries;int aResponseWaitTime;char assciate_ack;struct _mac_current_frame //物理层国来的psdu在这里进一步分解为MAC层帧结构,精减后的结构{ BYTE frameStyle; BYTE sequenceNumber; BYTE DstAddr; BYTE SrcAddr; BYTE msdu[aMaxNWKPecketSize]; } mac_current_frame; struct _zMAC_CURRENT_STATUS{ BYTE status; } zmac_current_status;/*typedef struct _MAC_PIB { BYTE macAckWaitDuration; //made a constant unsigned char macAssociationPermit :1; unsigned char macAutoRequest :1; unsigned char macBattLifeExtPeriods :1; unsigned char macPromiscuousMode :1; unsigned char macRxOnWhenIdle :1; BYTE macBeaconPayload[MAC_PIB_macBeaconPayloadLength]; //always 3 for non-beacon, 5 for beacon BYTE macBeaconPayloadLength; made a constant BYTE macBeaconOrder; //made a constant TICK macBeaconTxTime; BYTE macBSN; LONG_ADDR macCoordExtendedAddress; SHORT_ADDR macCoordShortAddress; BYTE macDSN; BYTE macMaxCSMABackoffs; BYTE macMinBE; PAN_ADDR macPANId; SHORT_ADDR macShortAddress; BYTE macSuperframeOrder; //made a constant WORD macTransactionPersistenceTime; //made a constant } MAC_PIB;*///数据服务原语 struct _MCPS_DATA_request { BYTE SrcAddrMode; BYTE SrcPANId; BYTE SrcAddr; BYTE DstAddrMode; BYTE DstPANId; BYTE DstAddr; BYTE msduLength; BYTE *msdu; BYTE msduHandle; BYTE TxOptions; } MCPS_DATA_request; struct _MCPS_DATA_confirm { ZIGBEE_STATUS status; BYTE msduHandle; } MCPS_DATA_confirm; struct _MCPS_DATA_indication { BYTE SrcAddrMode; BYTE SrcPANId; BYTE SrcAddr; BYTE DstAddrMode; BYTE DstPANId; BYTE DstAddr; BYTE msduLength; BYTE *msdu; unsigned int mpduLinkQuality; BOOL SecurityUse; BYTE ACLEntry; } MCPS_DATA_indication; struct _MCPS_PURGE_request { BYTE msduHandle; } MCPS_PURGE_request; struct _MCPS_PURGE_confirm { ZIGBEE_STATUS status; BYTE msduHandle; } MCPS_PURGE_confirm; //管理服务原语//连接原语struct _MLME_ASSOCIATE_request { BYTE LogicalChannel; BYTE CoordAddrMode; BYTE CoordPANId; BYTE DirdAddress; //要连接的目标地址 BYTE SrcAddress; BYTE CapabilityInformation; BOOL SecurityEnable; } MLME_ASSOCIATE_request; struct _MLME_ASSOCIATE_confirm { ZIGBEE_STATUS status; BYTE AssocShortAddress; } MLME_ASSOCIATE_confirm; struct _MLME_ASSOCIATE_indication { BYTE DeviceAddress; BYTE CapabilityInformation; BOOL SecurityUse; BYTE ACLEntry; } MLME_ASSOCIATE_indication; struct _MLME_ASSOCIATE_response { BYTE DeviceAddress; BYTE AssocShortAddress; ZIGBEE_STATUS status; BOOL SecurityEnable; } MLME_ASSOCIATE_response; //MAC子层复位原语 struct _MLME_RESET_request { BOOL SetDefaultPIB; } MLME_RESET_request; struct _MLME_RESET_confirm { ZIGBEE_STATUS status; } MLME_RESET_confirm; //指定接收机激活时间 struct _MLME_RX_ENABLE_request { BOOL DeferPermit; unsigned int RxOnTime; unsigned int RxOnDuration; } MLME_RX_ENABLE_request; struct _MLME_RX_ENABLE_confirm { ZIGBEE_STATUS status; } MLME_RX_ENABLE_confirm;/*//断开连接原语 struct _MLME_DISASSOCIATE_request { BYTE DisassociateReason; BOOL SecurityUse; BYTE DeviceAddress; } MLME_DISASSOCIATE_request; struct _MLME_DISASSOCIATE_confirm { ZIGBEE_STATUS status; } MLME_DISASSOCIATE_confirm; struct _MLME_DISASSOCIATE_indication { BYTE DeviceAddress; BYTE DisassociateReason; BOOL SecurityUse; BYTE ACLEntry; } MLME_DISASSOCIATE_indication; //信表通知原语 struct _MLME_BEACON_NOTIFY_indication { BYTE BSN; BYTE sduLength; BYTE *sdu; BYTE CoordPANId; BYTE CoordAddrMode; BYTE LogicalChannel; BYTE CoordAddress; BYTE TimeStamp; BTTE SuperframeSpec; unsigned int LinkQuality; BOOL SecurityFailure; BOOL GTSPermit; BOOL SecurityUse; BYTE ACLEntry; unsigned int LinkQuality; } MLME_BEACON_NOTIFY_indication; //读取PIB属性//写MAC PIB原语//保护时隙管理原语//孤立通知原语 struct _MLME_ORPHAN_indication { BYTE OrphanAddress; BOOL SecurityUse; BYTE ACLEntry; } MLME_ORPHAN_indication; struct _MLME_ORPHAN_response { BYTE OrphanAddress; BYTE ShortAddress; BOOL AssociatedMember; BOOL SecurityEnable; } MLME_ORPHAN_response; //信道扫描原语 struct _MLME_SCAN_request { BYTE ScanType; BYTE ScanDuration; BYTE ScanChannels; } MLME_SCAN_request; struct _MLME_SCAN_confirm { ZIGBEE_STATUS status; BYTE ScanType; BYTE UnscannedChannels; BYTE ResultListSize; BYTE EnergyDetectList; BYTE PANDescriptorList; } MLME_SCAN_confirm; //通信状态原语struct _MLME_COMM_STATUS_indication { BYTE PANId; BYTE SrcAddrMode; BYTE SrcAddr; BYTE DstAddrMode; BYTE DstAddr; ZIGBEE_STATUS status; } MLME_COMM_STATUS_indication; //更新超帧配置原语struct _MLME_START_request { BYTE PANId; BYTE LogicalChannel; BYTE BeaconOrder; BYTE SuperframeOrder; BOOL PANCoordinator; BOOL BatterylifeExtension; BOOL CoordRealignmeng; BOOL SecurityEnable; } MLME_START_request; struct _MLME_START_confirm { ZIGBEE_STATUS status; } MLME_START_confirm; //与协调器同步原语 struct _MLME_SYNC_indication { BYTE LogicalChanel; BOOL TrackBeacon; } MLME_SYNC_indication; struct _MLME_SYNC_LOSS_indication { ZIGBEE_STATUS LossReason; } MLME_SYNC_LOSS_indication; //从协调器请求数据原语 struct _MLME_POLL_request { BYTE CoordAddrMode; BYTE CoordPANId; BYTE CoordAddress; BOOL SecurityEnabled; } MLME_POLL_request; struct _MLME_POLL_confirm { ZIGBEE_STATUS status; // Must overlay NLME_SYNC_confirm Status } MLME_POLL_confirm; */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -