📄 zmac_internal.h
字号:
#ifndef ZMAC_INTERNAL_H
#define ZMAC_INTERNAL_H
/********************************************************************************************************
Filename: zmac_internal.h
Revised: $Date: 2007-04-13 10:57:59 -0700 (Fri, 13 Apr 2007) $
Revision: $Revision: 14014 $
Description:
This file contains the ZStack MAC Porting Layer.
Notes:
Copyright (c) 2006 by Texas Instruments, Inc.
All Rights Reserved. Permission to use, reproduce, copy, prepare
derivative works, modify, distribute, perform, display or sell this
software and/or its documentation for any purpose is prohibited
without the express written consent of Texas Instruments, Inc.
********************************************************************************************************/
#ifdef __cplusplus
extern "C"
{
#endif
/********************************************************************************************************
* INCLUDES
********************************************************************************************************/
#include "mac_api.h"
/********************************************************************************************************
* DEFINES
********************************************************************************************************/
// MAC Type Indication
#define ZMAC_F8W
// PHY transiver output power values
#define OUTPUT_POWER_0DBM 0x00
#define OUTPUT_POWER_N1DBM 0x21
#define OUTPUT_POWER_N3DBM 0x23
#define OUTPUT_POWER_N5DBM 0x25
#define OUTPUT_POWER_N7DBM 0x27
#define OUTPUT_POWER_N10DBM 0x2A
#define OUTPUT_POWER_N15DBM 0x2F
#define OUTPUT_POWER_N25DBM 0x39
// MAC PIB Attributes
enum
{
ZMacAckWaitDuration = MAC_ACK_WAIT_DURATION,
ZMacAssociationPermit = MAC_ASSOCIATION_PERMIT,
ZMacAutoRequest = MAC_AUTO_REQUEST,
ZMacBattLifeExt = MAC_BATT_LIFE_EXT,
ZMacBattLeftExtPeriods = MAC_BATT_LIFE_EXT_PERIODS,
ZMacBeaconMSDU = MAC_BEACON_PAYLOAD,
ZMacBeaconMSDULength = MAC_BEACON_PAYLOAD_LENGTH,
ZMacBeaconOrder = MAC_BEACON_ORDER,
ZMacBeaconTxTime = MAC_BEACON_TX_TIME,
ZMacBSN = MAC_BSN,
ZMacCoordExtendedAddress = MAC_COORD_EXTENDED_ADDRESS,
ZMacCoordShortAddress = MAC_COORD_SHORT_ADDRESS,
ZMacDSN = MAC_DSN,
ZMacGTSPermit = MAC_GTS_PERMIT,
ZMacMaxCSMABackoffs = MAC_MAX_CSMA_BACKOFFS,
ZMacMinBE = MAC_MIN_BE,
ZMacPanId = MAC_PAN_ID,
ZMacPromiscuousMode = MAC_PROMISCUOUS_MODE,
ZMacRxOnIdle = MAC_RX_ON_WHEN_IDLE,
ZMacShortAddress = MAC_SHORT_ADDRESS,
ZMacSuperframeOrder = MAC_SUPERFRAME_ORDER,
ZMacTransactionPersistenceTime = MAC_TRANSACTION_PERSISTENCE_TIME,
ZMacAssociatedPanCoord = MAC_ASSOCIATED_PAN_COORD,
ZMacMaxBE = MAC_MAX_BE,
ZMacMaxFrameTotalWaitTime = MAC_MAX_FRAME_TOTAL_WAIT_TIME,
ZMacMaxFrameRetries = MAC_MAX_FRAME_RETRIES,
ZMacResponseWaitTime = MAC_RESPONSE_WAIT_TIME,
ZMacSyncSymbolOffset = MAC_SYNC_SYMBOL_OFFSET,
ZMacTimestampSupported = MAC_TIMESTAMP_SUPPORTED,
ZMacSecurityEnabled = MAC_SECURITY_ENABLED,
// Proprietary Items
ZMacPhyTransmitPower = MAC_PHY_TRANSMIT_POWER,
ZMacChannel = MAC_LOGICAL_CHANNEL,
ZMacExtAddr = MAC_EXTENDED_ADDRESS,
ZMacAltBE = MAC_ALT_BE,
// Junk
ZMacACLDefaultSecurityMaterialLength = 0, // not implemented
ZMacTxGTSId = 1, // not implemented
ZMacUpperLayerType = 2, // not implemented
ZMacRxGTSId = 3, // not implemented
ZMacSnoozePermit = 4 // not implemented
};
typedef uint8 ZMacAttributes_t;
// Status type
typedef uint8 ZMacStatus_t;
/* Definition of scan type */
#define ZMAC_ED_SCAN MAC_SCAN_ED
#define ZMAC_ACTIVE_SCAN MAC_SCAN_ACTIVE
#define ZMAC_PASSIVE_SCAN MAC_SCAN_PASSIVE
#define ZMAC_ORPHAN_SCAN MAC_SCAN_ORPHAN
// Association Status Field Values
#define ZMAC_SUCCESSFUL_ASSOCIATION 0x00
#define ZMAC_PAN_AT_CAPACITY 0x01
#define ZMAC_PAN_ACCESS_DENIED 0x02
// Disassociation Reason Codes
#define ZMAC_COORD_INITIATE MAC_DISASSOC_COORD
#define ZMAC_DEVICE_INITIATE MAC_DISASSOC_DEVICE
#define ZMAC_SECURITY_USE 0x01
#define ZMAC_ACL_ENTRY 0x02
#define ZMAC_SECURITY_FAILURE 0x04
// TX Option flags
#define ZMAC_TXOPTION_ACK MAC_TXOPTION_ACK
#define ZMAC_TXOPTION_GTS MAC_TXOPTION_GTS
#define ZMAC_TXOPTION_INDIRECT MAC_TXOPTION_INDIRECT
#define ZMAC_TXOPTION_SECURITY_ENABLE MAC_TXOPTION_SECURITY
#define ZMAC_TXOPTION_NO_RETRANS MAC_TXOPTION_NO_RETRANS
#define ZMAC_TXOPTION_NO_CNF MAC_TXOPTION_NO_CNF
#define ZMAC_ASSOC_CAPINFO_FFD_TYPE MAC_CAPABLE_FFD
#define ZMAC_ASSOC_CAPINFO_RX_ON_IDLE MAC_CAPABLE_RX_ON_IDLE
// LQI to Cost mapping
#define MIN_LQI_COST_1 12 //24
#define MIN_LQI_COST_2 9 //20
#define MIN_LQI_COST_3 6 //16
#define MIN_LQI_COST_4 4 //12
#define MIN_LQI_COST_5 2 //8
#define MIN_LQI_COST_6 1 //4
#define MIN_LQI_COST_7 0 //0
/* Number of bytes to allocate for ED scan; matches ED_SCAN_MAXCHANNELS in nwk.h */
#define ZMAC_ED_SCAN_MAXCHANNELS 27
#define ZMAC_SUCCESS MAC_SUCCESS
#define ZMAC_TRANSACTION_OVERFLOW MAC_TRANSACTION_OVERFLOW
#define ZMAC_TRANSACTION_EXPIRED MAC_TRANSACTION_EXPIRED
#define ZMAC_CHANNEL_ACCESS_FAILURE MAC_CHANNEL_ACCESS_FAILURE
#define ZMAC_NO_RESOURCES MAC_NO_RESOURCES
#define ZMAC_KEY_SOURCE_MAX_LEN MAC_KEY_SOURCE_MAX_LEN
/********************************************************************************************************
* TYPE DEFINITIONS
********************************************************************************************************/
#ifdef __cplusplus
}
#endif
#endif /* ZMAC_INTERNAL_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -