亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? coord_ep_indirect.c

?? //Basic packet sending test at the MAC level, used for internal testing only. //This packet test ha
?? C
字號(hào):
/*
  V0.1 Initial Release   10/July/2006  RBR

*/



/*
This tests indirect packets with just two nodes.
This tests the special case of an endpoint on
the coordinator sending an indirect packet, which
must be injected into the stack as if received
remotely.

Expects coordinator, one RFD.
The topology to test should be

Coordinator ->  RFD1

Start the coordinator first, then the RFD.


For this to work, the bindings in staticbind.h must
be correct. This test assumes that the LSBs of the
long addresses of the coordinator and RFD are non-zero, and
are not equal to each other, and uses these as the
endpoints for the indirect messages.

Also, if using Win32, you need to be running the virtual board
interface for the coordinator and the RFD, as you must
press/release SW1 to send a packet.

*/

#include "msstate_lrwpan.h"


BYTE myLongAddress[8];

BYTE test_number;



LADDR_UNION dstADDR;
UINT32 my_timer;

BYTE payload[32];  //buffer for payload

static void get_SW1_press_and_release(void);
static void print_test(void);
void getpayload(void);

void print_test(void){
	conPrintROMString("Test "); conPrintUINT8((UINT8) test_number);
	conPrintROMString(", Sending msg: ");
	conPrintString((char *)&payload[0]);
	conPCRLF();
}

//in this loop keep running the stack FSM so
//that we can receive packets
void get_SW1_press_and_release(void){
	while(EVB_SW1_RELEASED()) {apsFSM();evbPoll();}
	while(EVB_SW1_PRESSED()){apsFSM();evbPoll();}

}


#define NUM_MESSAGES 8
//convoluted mess because of different ways compilers treat const char strings
void getpayload(void) {
	BYTE *dst;
	ROMCHAR *src;
	BYTE msgnum;

	static ROMCHAR _x0_[] = "Hello!";
	static ROMCHAR _x1_[] = "Goodbye?";
	static ROMCHAR _x2_[] = "WTH?";
	static ROMCHAR _x3_[] = "Ouchies!";
	static ROMCHAR _x4_[] = "Shazbot!";
	static ROMCHAR _x5_[] = "FerSur!";
	static ROMCHAR _x6_[] = "NoSir!";
	static ROMCHAR _x7_[] = "Wazzup?";

	msgnum = halGetRandomByte();
	msgnum = msgnum % NUM_MESSAGES;

	switch (msgnum) {
	 case 0 :  src = &_x0_[0]; break;
	 case 1 :  src = &_x1_[0]; break;
	 case 2 :  src = &_x2_[0]; break;
	 case 3 :  src = &_x3_[0]; break;
	 case 4 :  src = &_x4_[0]; break;
	 case 5 :  src = &_x5_[0]; break;
	 case 6 :  src = &_x6_[0]; break;
	 default :  src = &_x7_[0]; break;
	}
	dst = &payload[0];
	while (*src) {
		*dst = *src;
		dst++;src++;
	}
	*dst = *src;
}


void packet_test(void) {


	switch(test_number) {
	  case 0:
		  getpayload();
		  print_test();
		  conPrintROMString("Indirect MSG, no ack requested, SrcEP:  ");
		  conPrintUINT8(myLongAddress[0]);
		  conPrintROMString("Cluster: ");
		  conPrintUINT8(LRWPAN_APP_CLUSTER);
		  conPCRLF();
		  conPrintROMString("Press SW1 to send packet\n");
		  get_SW1_press_and_release();

		  //comStrlen defined in compiler.h, this is compiler dependent
		  aplSendMSG (APS_DSTMODE_NONE,
			  NULL,
			  0,
			  LRWPAN_APP_CLUSTER,
			  myLongAddress[0],
			  payload,
			  strlen((char *)payload)+1,
			  apsGenTSN(),
			  FALSE);  //No APS ack requested
		  test_number++;
		  break;
	  case 1:
		  getpayload();
		  print_test();
		  conPrintROMString("Indirect MSG, APS ack requested, SrcEP:  ");
		  conPrintUINT8(myLongAddress[0]);
		  conPrintROMString("Cluster: ");
		  conPrintUINT8(LRWPAN_APP_CLUSTER);
		  conPCRLF();
		  conPrintROMString("Press SW1 to send packet\n");
		  get_SW1_press_and_release();

		  dstADDR.saddr = 0; //Coordinator has address 0
		  aplSendMSG (APS_DSTMODE_NONE,
			  NULL, //no destination address for indirect messages
			  0, //dst EP
			  LRWPAN_APP_CLUSTER, //cluster is ignored for direct message
			  myLongAddress[0], //src EP
			  payload,
			  strlen((char *)payload)+1,
			  apsGenTSN(),
			  TRUE);  //APS ack requested
		  test_number = 0;
		  break;



	  default:
		  test_number = 0;

		  break;
	}


	//block, and see if message sent successfully
	while(apsBusy()) {apsFSM();}
	if (aplGetStatus() == LRWPAN_STATUS_SUCCESS) {
		conPrintROMString("MSG send succeeded!\n");
	}else {
		conPrintROMString("MSG send FAILED!\n");
	}


}

void main (void){


	//this initialization set our SADDR to 0xFFFF,
	//PANID to the default PANID

	//HalInit, evbInit will have to be called by the user
	halInit();
	evbInit();

	aplInit();  //init the stack
	conPrintConfig();
	ENABLE_GLOBAL_INTERRUPT();  //enable interrupts
	test_number = 0;

	//debug_level = 10;

	EVB_LED1_OFF();
	EVB_LED2_OFF();

	//get this for reference, will use the LSB as srcEP for indirect message
	halGetProcessorIEEEAddress(&myLongAddress[0]);

#ifdef LRWPAN_COORDINATOR

	aplFormNetwork();
	while(apsBusy()) {apsFSM();} //wait for finish
	EVB_LED1_ON();
	conPrintROMString("Nwk formed\n");


#else
	do {
		aplJoinNetwork();
		while(apsBusy()) {apsFSM();} //wait for finish
		if (aplGetStatus() == LRWPAN_STATUS_SUCCESS) {
			EVB_LED1_ON();
			conPrintROMString("Network Join succeeded!\n");
			conPrintROMString("My ShortAddress is: ");
			conPrintUINT16(aplGetMyShortAddress());
			conPCRLF();
			conPrintROMString("Parent LADDR: ")
				conPrintLADDR(aplGetParentLongAddress());
			conPrintROMString(", Parent SADDR: ");
			conPrintUINT16(aplGetParentShortAddress());
			conPCRLF();
			break;
		}else {
			conPrintROMString("Network Join FAILED! Waiting, then trying again\n");
			my_timer= halGetMACTimer();
			//wait for 2 seconds
			while ((halMACTimerNowDelta(my_timer))< MSECS_TO_MACTICKS(2*1000));
		}
	} while(1);
#endif


#ifdef LRWPAN_RFD
	//announce ourselves to the coordinator so that we can test indirect messaging
	//this is only necessary if there are routers between us and the coordinator,
	//but since don't know the network topology, do it always if RFD.
	do {
		aplSendEndDeviceAnnounce(0);  //send to coordinator as it resolves bindings
		while(apsBusy()) {apsFSM();} //wait for finish
		if (aplGetStatus() == LRWPAN_STATUS_SUCCESS) {
			conPrintROMString("End Device Announce succeeded!\n");
			break;
		}
		else {
			conPrintROMString("End Device Announce FAILED! Waiting, then trying again\n");
			my_timer= halGetMACTimer();
			//wait for 2 seconds
			while ((halMACTimerNowDelta(my_timer))< MSECS_TO_MACTICKS(2*1000));
		}
	}while(1);
#endif

#if defined(LRWPAN_RFD) || defined(LRWPAN_COORDINATOR)
	//now send packets
	while (1) {
		packet_test();
		while(apsBusy()) {apsFSM();} //wait for finish
	}
#endif


#ifdef LRWPAN_ROUTER
	//router does nothing, just routes
	conPrintROMString("Router, doing its thing.!\n");
	while(1) {apsFSM();}
#endif


}

//########## Callbacks ##########

//callback for anytime the Zero Endpoint RX handles a command
//user can use the APS functions to access the arguments
//and take additional action is desired.
//the callback occurs after the ZEP has already taken
//its action.
LRWPAN_STATUS_ENUM usrZepRxCallback(void){

#ifdef LRWPAN_COORDINATOR
	if (aplGetRxCluster() == ZEP_END_DEVICE_ANNOUNCE) {
		//a new end device has announced itself, print out the
		//the neightbor table and address map
		dbgPrintNeighborTable();
	}
#endif
 return LRWPAN_STATUS_SUCCESS;
}

//callback from APS when packet is received
//user must do something with data as it is freed
//within the stack upon return.

LRWPAN_STATUS_ENUM usrRxPacketCallback(void) {

	BYTE len, *ptr;

	//just print out this data

	conPrintROMString("User Data Packet Received: \n");
	conPrintROMString("SrcSADDR: ");
	conPrintUINT16(aplGetRxSrcSADDR());
	conPrintROMString(", DstEp: ");
	conPrintUINT8(aplGetRxDstEp());
	conPrintROMString(", Cluster: ");
	conPrintUINT8(aplGetRxCluster());
	conPrintROMString(", Msg Length: ");
	len = aplGetRxMsgLen();
	conPrintUINT8(len);
	conPCRLF();
	conPrintROMString("Msg: ");
	ptr = aplGetRxMsgData();
	while(len){
		halPutch(*ptr);
		ptr++; len--;
	}
	conPCRLF();
	//toggle LED2 for each new message RX
	if (EVB_LED2_STATE()) EVB_LED2_OFF(); else EVB_LED2_ON();
        return LRWPAN_STATUS_SUCCESS;
}

#ifdef LRWPAN_FFD
//Callback to user level to see if OK for this node
//to join - implement Access Control Lists here based
//upon IEEE address if desired
BOOL usrJoinVerifyCallback(LADDR *ptr, BYTE capinfo){

	return TRUE;

}

BOOL usrJoinNotifyCallback(LADDR *ptr){

	//allow anybody to join

	conPrintROMString("Node joined: ");
	conPrintLADDR(ptr);
	conPCRLF();
	DEBUG_PRINTNEIGHBORS(DBG_INFO);
	return TRUE;
}
#endif


void usrIntCallback(void){

}

#ifdef LRWPAN_ENABLE_SLOW_TIMER
void usrSlowTimerInt(void ) {}
#endif


?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲美女少妇撒尿| 亚洲v精品v日韩v欧美v专区| 欧美性一区二区| 黄色资源网久久资源365| 成人欧美一区二区三区黑人麻豆| 欧美一区二区三级| 91视频免费看| 国产乱子伦视频一区二区三区 | 久久电影网电视剧免费观看| 国产精品国产三级国产aⅴ原创| 欧美一区二区三区视频免费 | 亚洲欧洲日本在线| 精品欧美一区二区三区精品久久 | 午夜国产不卡在线观看视频| 国产欧美一区二区精品秋霞影院| 亚洲精品老司机| 精品毛片乱码1区2区3区| 精品视频免费看| 91碰在线视频| 成人激情校园春色| 激情小说亚洲一区| 日韩av电影天堂| 亚洲不卡在线观看| 亚洲码国产岛国毛片在线| 国产欧美精品一区| 久久毛片高清国产| 日韩欧美的一区| 欧美一区日韩一区| 欧美顶级少妇做爰| 欧美亚洲日本国产| 在线中文字幕一区二区| 9i看片成人免费高清| 成人免费视频国产在线观看| 久久99精品久久久| 精品一区二区三区在线视频| 人人爽香蕉精品| 日本中文在线一区| 日韩av电影天堂| 日韩电影一区二区三区四区| 亚洲最色的网站| 亚洲午夜电影在线| 亚洲一区电影777| 亚洲午夜久久久久久久久久久| 亚洲蜜臀av乱码久久精品 | 亚洲成人av电影在线| 亚洲嫩草精品久久| 一区二区三区国产| 亚洲一区在线观看网站| 亚洲图片欧美综合| 日韩高清在线一区| 免费在线观看日韩欧美| 久久99精品久久久久久动态图 | 国产99久久久国产精品潘金| 国产真实乱对白精彩久久| 国产精品资源网| 成人深夜视频在线观看| av在线播放不卡| 色婷婷国产精品综合在线观看| 色天天综合色天天久久| 欧美日韩三级视频| 日韩亚洲欧美在线观看| 久久久久久久久久久久久女国产乱| 久久久国产精品麻豆| 日本一区二区三区免费乱视频 | 久久综合色之久久综合| 日本一区二区成人| 亚洲免费在线看| 日韩av不卡在线观看| 精品一区免费av| 福利电影一区二区三区| 色综合婷婷久久| 91精品国产乱| 国产喷白浆一区二区三区| 亚洲欧美在线另类| 天堂蜜桃91精品| 国产成人精品免费看| 色综合一个色综合亚洲| 日韩一区二区三区视频在线观看| 久久人人爽爽爽人久久久| 中文字幕亚洲电影| 日本不卡中文字幕| 高清不卡一二三区| 欧美日本韩国一区| 国产视频一区在线播放| 亚洲香肠在线观看| 国产久卡久卡久卡久卡视频精品| 91丨porny丨蝌蚪视频| 日韩精品一区二区三区在线观看| 国产亚洲成aⅴ人片在线观看| 亚洲一级二级在线| 国产麻豆成人传媒免费观看| 欧美日韩中文字幕精品| 久久精品一区二区三区不卡| 亚洲国产精品自拍| 国产成人精品三级麻豆| 91麻豆精品国产91久久久久| 日本一区二区免费在线观看视频| 丝袜美腿亚洲一区二区图片| 成人午夜大片免费观看| 3d动漫精品啪啪| 亚洲女同ⅹxx女同tv| 国产乱码精品一区二区三| 欧美色区777第一页| 国产精品免费观看视频| 欧美aaaaa成人免费观看视频| 99re这里只有精品首页| 精品对白一区国产伦| 香蕉成人伊视频在线观看| 不卡影院免费观看| 2023国产精华国产精品| 天天做天天摸天天爽国产一区| 成人av在线资源网站| 久久先锋影音av| 奇米综合一区二区三区精品视频| 色一情一乱一乱一91av| 国产亚洲制服色| 精品系列免费在线观看| 91麻豆精品91久久久久久清纯 | ...中文天堂在线一区| 国产精品99久久久久| 欧美一级黄色大片| 亚洲国产视频在线| 在线亚洲免费视频| 亚洲女子a中天字幕| 成人av电影免费在线播放| 久久婷婷国产综合精品青草| 免费高清成人在线| 欧美精品在线视频| 亚洲成年人网站在线观看| 在线免费视频一区二区| 亚洲男人的天堂av| 99精品视频中文字幕| 国产精品国产三级国产aⅴ无密码| 国产一区二区精品久久| 精品国产乱码久久久久久图片| 日本不卡不码高清免费观看| 6080国产精品一区二区| 丝袜诱惑制服诱惑色一区在线观看 | 岛国精品一区二区| 国产日产欧产精品推荐色| 国产精品一区二区免费不卡 | 在线观看免费视频综合| 亚洲在线免费播放| 欧美色中文字幕| 天堂一区二区在线免费观看| 在线不卡欧美精品一区二区三区| 视频一区欧美日韩| 日韩欧美高清在线| 国产精品一区二区视频| 欧美激情综合五月色丁香小说| 高清不卡一区二区| 日韩毛片一二三区| 欧美色区777第一页| 蜜臀av一区二区在线观看| 亚洲高清在线精品| 69堂成人精品免费视频| 激情五月激情综合网| 国产区在线观看成人精品| www..com久久爱| 亚洲夂夂婷婷色拍ww47| 91麻豆精品国产91久久久资源速度 | 美女尤物国产一区| 精品福利视频一区二区三区| 成人免费高清在线观看| 亚洲综合精品自拍| 欧美一区日韩一区| 岛国一区二区三区| 一区二区三区 在线观看视频| 欧美高清视频不卡网| 国产精品99久久久久久久女警| 综合中文字幕亚洲| 91精品国产丝袜白色高跟鞋| 国内外精品视频| 1024亚洲合集| 在线成人av影院| 国产成人精品三级麻豆| 亚洲综合丁香婷婷六月香| 日韩精品一区二区在线| 91首页免费视频| 精品影视av免费| 亚洲免费大片在线观看| 欧美zozo另类异族| 91农村精品一区二区在线| 日韩高清国产一区在线| 国产精品天干天干在观线| 欧美精品xxxxbbbb| 成人黄动漫网站免费app| 天天色天天爱天天射综合| 欧美激情在线免费观看| 在线播放亚洲一区| yourporn久久国产精品| 日韩国产欧美一区二区三区| 国产精品久久久久久久浪潮网站| 欧美乱妇23p| 91在线看国产| 韩国女主播一区| 亚洲电影激情视频网站| 国产精品视频一二三| 欧美变态tickling挠脚心| 91成人免费网站|