⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zbnwk.h

📁 IEEE802.15.4标准下的基于ZIGBEE协议栈的物理及链路层的代码
💻 H
字号:
#ifndef __ZBNWK_H__#define __ZBNWK_H__#include "ZBTYPES.h"#define POS_NWK_FRAME_TYPE			0x0#define POS_NWK_PROTOCOL_VERSION		0x2#define POS_NWK_DISCOVER_ROUTE		0x6#define POS_NWK_MULTICAST_FLAG		0x8#define POS_NWK_SECURITY				0x9#define POS_NWK_SOURCE_ROUTE			0xA#define POS_NWK_DEST_IEEEADR			0xB#define POS_NWK_SOURCE_IEEEADR		0xC#define MASK_NWK_FRAME_TYPE			0x3#define MASK_NWK_PROTOCOL_VERSION		0x3C#define MASK_NWK_DISCOVER_ROUTE		0xC0#define MASK_NWK_MULTICAST_FLAG		0x100#define MASK_NWK_SECURITY			0x200#define MASK_NWK_SOURCE_ROUTE			0x400#define MASK_NWK_DEST_IEEEADR			0x800#define MASK_NWK_SOURCE_IEEEADR		0x1000#define NWK_FRAME_TYPE_DATA			0x0#define NWK_FRAME_TYPE_CMD			0x1#define NWK_PROTOCOL_VERSION_VALUE		0x0#define NWK_DISCOVER_ROUTE_SUPPRESS	0x0#define NWK_DISCOVER_ROUTE_ENABLE		0x1#define NWK_DISCOVER_ROUTE_FORCE		0x2enum{	NWK_HEAD_MIN_LEN = 8,	NWK_RADIUS = 4,	};/* * network packet format * FCF(2)+DEST_ADDR(2)+SOURCE_ADDR(2)+RADIUS(1)+DSN(1)+PAYLOAD */#define CSKIP_0			2653#define CSKIP_1			528#define CSKIP_2			103#define CSKIP_3			18#define CSKIP_4			0#define MAX_ChildRouters			5#define MAX_ChildRFDs			12typedef struct _neighbor_table_t {	laddr_t extendedAddr;	saddr_t shortAddr;	uint8_t deviceType;	//0 coord/1 router/2 end device	uint8_t Relationship;	//0 is parent/1 sbling/2 child/3 none above/4 previous child	uint8_t transmitFailure;	uint8_t lqi;	bool RxOnWhenIdle;} neighbor_table_t;typedef struct _routing_table_t {	saddr_t destAddr;	uint8_t status : 3;	uint8_t ManyToOne : 1;	uint8_t routeRecordReq : 1;	uint8_t DestIsGroup : 1;	saddr_t nextHop;} routing_table_t;// next are route status values emun enum {  ROUTE_STATUS_ACTIVE				= 0,  ROUTE_STATUS_DISCOVERY_UNDERWAY		= 1,  ROUTE_STATUS_DISCOVERY_FAILED		= 2,  ROUTE_STATUS_INACTIVE				= 3,  ROUTE_STATUS_VALIDATION_UNDERWAY		= 4,};typedef struct _discovery_table_t {	uint8_t requestId;	uint8_t forwordCost;	saddr_t sourceAddr;	saddr_t senderAddr;	uint8_t residualCost;	uint16_t expirationTime;	//inital at the value of nwkcRouteDiscoveryTime} discovery_table_t;typedef struct _nwk_pib_t {	uint8_t nwkDsn;	uint8_t nwkBroadcastRetries;			uint8_t nwkRouteDiscoveryRetries;	uint8_t nwkDepth;	saddr_t nextRouter;	uint8_t childRouters;	uint8_t childRfds;		saddr_t nextRfd;	neighbor_table_t* pNBT;	routing_table_t* pRTT;	saddr_t nwkAddress;	struct {		unsigned int useTreeRouting : 1;		unsigned int symLink : 1;	}bits;		uint8_t capInfo;} nwk_pib_t;/** * next are capInfo bitmap define */#define MASK_CAPINFO_ALTER_COORD 	0x01#define POS_CAPINFO_ALTER_COORD	0#define MASK_CAPINFO_DEVICE_TYPE	0x02#define POS_CAPINFO_DEVICE_TYPE	1#define MASK_CAPINFO_POWER_SOURCE	0x04#define POS_CAPINFO_POWER_SOURCE	2#define MASK_CAPINFO_IDLE_RECEIVE_ON 0x08#define POS_CAPINFO_IDLE_RECEIVE_ON 3#define MASK_CAPINFO_SECURITY_CAP	0x40#define POS_CAPINFO_SECURITY_CAP	6#define MASK_CAPINFO_ALLOC_ADDRESS	0x80#define POS_CAPINFO_ALLOC_ADDRESS	7	#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -