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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? analyseframe.c

?? 基于嵌入式web服務器的web應用層代碼
?? C
?? 第 1 頁 / 共 4 頁
字號:
			for (i=0; i<4; i++)
				p_iframe->vlan_port[i] = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();	
			break;
		case CMD_ACK_SET_VLAN_TAG:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];			
			display_web_set_result();
			break;	
		case CMD_ACK_READ_VLAN_TAG:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];	
			for (i=0; i<2; i++)
				p_iframe->vlan_tag[i] = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();	
			break;	
			
			
		case CMD_ACK_READ_WORK_BOARD:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];	
			for (i=0; i<4; i++)
				p_iframe->board_type[i] = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();	
			break;	
		case CMD_ACK_SET_PHONE_NUMBER:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];			
			display_web_set_result();
			break;
		case CMD_ACK_READ_PHONE_NUMBER:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];
			p_iframe->telephone_number = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();	
			break;	
			
			
		case CMD_ACK_SET_LOOP:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];			
			display_web_set_result();
			break;		
		case CMD_ACK_READ_LOOP:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];
			p_iframe->loop_flag = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();
			break;		
		case CMD_ACK_SET_OPT_SWITCH:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];			
			display_web_set_result();
			break;		
		case CMD_ACK_READ_OPT_SWITCH:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];
			p_iframe->switch_flag = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();
			break;		
		case CMD_ACK_SET_OPT_ENABLE:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];			
			display_web_set_result();
			break;		
		case CMD_ACK_READ_OPT_ENABLE:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];
			for (i=0; i<2; i++)
				p_iframe->opt_enable[i] = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();
			break;		


		case CMD_ACK_SET_SYSTEM_TIME:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];			
			display_web_set_result();
			break;		
		case CMD_ACK_READ_MCU_VERSION:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];
			for (i=0; i<4; i++)
				p_iframe->version[i] = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();
			break;		
		case CMD_ACK_READ_DEVICE_TYPE:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];
			for (i=0; i<4; i++)
				p_iframe->device_type[i] = wait_for_dealed_buf[channel][idx++];
			display_web_read_result();
			break;		


		case CMD_ACK_READ_ALARM:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];
			for (i=0; i<(p_cframe->info_length-1)/3; i++)
			{
				p_iframe->alarm_board[i] = wait_for_dealed_buf[channel][idx++];
				p_iframe->alarm_port[i] = wait_for_dealed_buf[channel][idx++];
				p_iframe->alarm_id[i] = wait_for_dealed_buf[channel][idx++];			
			}
			display_web_read_result();
			break;		
		case CMD_ACK_SET_ALARM_MASK:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];		
			
			
				
			display_web_set_result();
			break;		
		case CMD_ACK_READ_ALARM_MASK:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];	
			for (i=0; i<(p_cframe->info_length-1)/3; i++)
			{
				p_iframe->alarm_board[i] = wait_for_dealed_buf[channel][idx++];
				p_iframe->alarm_port[i] = wait_for_dealed_buf[channel][idx++];
				p_iframe->alarm_id[i] = wait_for_dealed_buf[channel][idx++];			
			}
			display_web_read_result();
			break;		
		case CMD_ACK_SET_ALARM_LEVEL:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];	
			
					
			display_web_set_result();
			break;		
		case CMD_ACK_READ_EVENT:
			p_iframe->success_flag = wait_for_dealed_buf[channel][idx++];	
			for (i=0; i<(p_cframe->info_length-1)/3; i++)
			{
				p_iframe->alarm_board[i] = wait_for_dealed_buf[channel][idx++];
				p_iframe->alarm_port[i] = wait_for_dealed_buf[channel][idx++];
				p_iframe->event_id[i] = wait_for_dealed_buf[channel][idx++];			
			}
			display_web_read_result();
			break;					
		default:
			break;		
	}
	
	


	
}


unsigned char check_frame_info(char *string_info)
{
	unsigned char value = 0;
	unsigned int i;
		
	for (i=0; i<7; i++)
	{
		if (strcmp(string_info, string_to_hex_zero[i]) == 0)
		{
			value = 0;
			break;
		}
		else if (strcmp(string_info, string_to_hex_one[i]) == 0)
		{
			value = 1;
			break;
		}	
	}
	return (value);
}

unsigned char check_frame_info2(char *string_info)
{
	unsigned char value = 0;
	unsigned int i;
	
	for (i=0; i<23; i++)
	{
		//printf("<p>prio is: %s</p>", clk_types[i].name);
		//printf("<p>value is: %d</p>", clk_types[i].value);
		if (strcmp(string_info, clk_types[i].name) == 0)
		{
			value = clk_types[i].value;
			break;
		}
	}
	return (value);
}


//將指定緩沖區數據轉換為ASCII 碼數據流,在minicom 中調試時用
unsigned int frame_to_ascii(unsigned char *hex_buf, unsigned char *ascii_buf, unsigned int length)
{
	unsigned char temph, templ;
	unsigned int i;
	
	for (i=0; i<length; i++)
	{
		temph = HexToAscii(hex_buf[i]>>4);
		templ = HexToAscii(hex_buf[i]&0x0F);
		ascii_buf[i*3] = temph;
		ascii_buf[i*3+1] = templ;
		ascii_buf[i*3+2] = ' ';
	}	
	return (length*3);
}


void make_normal_frame(void)
{
	unsigned char tmp_buf[50];
	unsigned char ascii_buf[100];
	unsigned char check_sum = 0;
	cmd_frame_t *p_cframe = &cmd_frame;	
	unsigned int k = 0;
	unsigned int i;
	unsigned int length;
	
	for (i=0; i<4; i++)
		tmp_buf[k++] = p_cframe->head[i];				//加載幀頭"0xF5FAFBFF"
	for (i=0; i<3; i++)		 			//目標地址
		tmp_buf[k++] = p_cframe->dst_addr[i];		//加載目的地址為接收數據時的源地址
	for (i=0; i<3; i++)	 				//源地址
		tmp_buf[k++] = p_cframe->src_addr[i];		//加載源地址為接收數據時的目的地址
	
	tmp_buf[k++] = p_cframe->net_id;					//加載網絡序號
	check_sum ^= p_cframe->net_id;	
	tmp_buf[k++] = p_cframe->cmd_index;				//加載命令序號
	check_sum ^= p_cframe->cmd_index;	
	tmp_buf[k++] = p_cframe->cmd_code_send;		//加載命令代碼
	check_sum ^= p_cframe->cmd_code_send;	

	tmp_buf[k++] = (unsigned char)(p_cframe->info_length >> 8);	//加載信息域長度
	check_sum ^= (unsigned char)(p_cframe->info_length >> 8);
	tmp_buf[k++] = (unsigned char)(p_cframe->info_length & 0xff);
	check_sum ^= (unsigned char)(p_cframe->info_length & 0xff);
	for (i=0; i<p_cframe->info_length; i++)											//加載信息域
	{
		tmp_buf[k++] = p_cframe->frame_info[i];
		check_sum ^= p_cframe->frame_info[i];
	}
	tmp_buf[k++] = check_sum;

#ifdef DEBUG_MODE
	//將指定緩沖區數據轉換為ASCII 碼數據流,在minicom 中調試時用
	length = frame_to_ascii(tmp_buf, ascii_buf, k);	//k == p_cframe->info_length+16
	port_write("com(rev): ", 10);
	port_write(ascii_buf, length);
	port_write("\r\n", 2);
#else
	port_write(tmp_buf, k);
#endif
}

void receive_normal_frame(void)
{
	unsigned int frame_head = 0;
	unsigned char cmd_head_flg = 0;
	unsigned int idx = 0;
	unsigned char check_sum;
	cmd_frame_t *p_cframe = &cmd_frame;	
	
	if (rx_buf_pointer >= RX_BUF_SIZE)			 //接收緩沖區溢出
	{
		rx_buf_overflow = 1;							 		 //置接收緩沖區溢出標志
		rx_buf_pointer = 0;										 //清接收數組指針
		frame_head = 0;
		cmd_head_flg = 0;
		save_cmd_enable = 0;
		goto parse_frame;
	}
	frame_head |= (unsigned int)rx_buf[idx++] << 24;
	frame_head |= (unsigned int)rx_buf[idx++] << 16;
	frame_head |= (unsigned int)rx_buf[idx++] << 8;
	frame_head |= (unsigned int)rx_buf[idx++] << 0;

	if (frame_head == 0xF5FAFBFF)
	{
		cmd_head_flg = 1;
	}
	
	if (cmd_head_flg)
	{
		//p_cframe->info_length = (((unsigned short int)rx_buf[9+4]) << 8) | rx_buf[10+4];			 //接收幀長
		//if (rx_buf[0+4] == My_Grp_Addr)
		{
			memcpy(wait_for_dealed_buf[0], &rx_buf[idx], rx_buf_pointer-4);

				
			save_cmd_enable = 1;																//一幀命令接收完畢,可以進行解析
		}
		//else
		{
			//save_cmd_enable = 0;
		}				
		frame_head = 0;
		cmd_head_flg = 0;
		rx_buf_pointer = 0;							//清接收數組指針
		goto parse_frame;			
	}
	else
	{
		rx_buf_overflow = 0;							 		 //置接收緩沖區溢出標志
		rx_buf_pointer = 0;										 //清接收數組指針
		frame_head = 0;
		cmd_head_flg = 0;
		save_cmd_enable = 0;
		//printf("frame error!\n");
		printf("<p>命令幀有誤!\n");
	}
	return;	

parse_frame:
	save_cmd();
	return;
}



void save_cmd(void)
{
	unsigned char use_channel = 0;
	if (rx_buf_overflow)							 	//接收緩沖區溢出
	{
		rx_buf_overflow = 0;
		//reply_normal_frame(CMD_UNKNOW, NULL, NULL);
	}
	else if (save_cmd_enable)						//接收緩沖區沒有溢出,且一幀命令接收完畢,進行解析
	{
		use_channel = 0;
		save_cmd_enable = 0;
    analysis_tty_cmd(use_channel);
	}
}


void frame_process(void)
{
	unsigned char times = 0;
	unsigned int i, j;
	cmd_frame_t *p_cframe = &cmd_frame;
	unsigned char temp[3];
	
	if (frame_ready == FRAME_READY)
		times = 1;
	else if (frame_ready == FRAME_DOUBLE)
		times = 2;
	else if (frame_ready == FRAME_ERROR)
	{
		printf("<p>發送命令有誤!\n");
		return;
	}
	else
	{
		return;
	}
		
	for (i=0; i<times; i++)	
	{
		if ((i == 1) && (p_cframe->cmd_code_send == CMD_SET_DXC_TIMESLOT))
		{
			for (j=0; j<3; j++)
			{
				temp[j] = p_cframe->frame_info[j];
				p_cframe->frame_info[j] = p_cframe->frame_info[j+3];
				p_cframe->frame_info[j+3] = temp[j];
			}			
		}
				
		make_normal_frame();	
		if (port_read())
			receive_normal_frame();	
		else
		{
			printf("<p>沒有響應!\n");
			printf("<p><a href=../index.html>返回 </a><p>");
		}		
	}
	frame_ready = FRAME_FINISHED;
}






?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品乱码人人做人人爱| 亚洲成人资源网| 欧美日韩不卡在线| 国产成人精品综合在线观看| 亚洲国产精品麻豆| 久久久国产综合精品女国产盗摄| 91福利精品第一导航| 国产精品亚洲综合一区在线观看| 亚洲另类中文字| 欧美激情在线观看视频免费| 欧美另类久久久品| 色综合色狠狠综合色| 国内国产精品久久| 视频一区视频二区中文字幕| 亚洲欧美国产三级| 国产片一区二区| 精品欧美久久久| 在线综合+亚洲+欧美中文字幕| 99精品在线观看视频| 蜜臀av一区二区在线免费观看| 亚洲精品久久久蜜桃| 国产精品日韩成人| 国产欧美一区二区精品忘忧草| 日韩欧美视频一区| 欧美一区二区三级| 欧美精品一级二级三级| 欧洲精品中文字幕| 一本到三区不卡视频| 国产成人亚洲精品狼色在线 | 天天亚洲美女在线视频| 亚洲人精品午夜| 自拍偷拍欧美激情| 日本一区二区视频在线| 久久久.com| 久久久久久久久久久久久久久99| 日韩视频在线观看一区二区| 欧美顶级少妇做爰| 欧美日韩国产高清一区二区三区| 欧美亚洲自拍偷拍| 欧美日韩国产片| 在线不卡一区二区| 69av一区二区三区| 欧美日韩亚洲另类| 制服丝袜中文字幕亚洲| 欧美日韩一区在线| 欧美放荡的少妇| 欧美va在线播放| 精品国产精品网麻豆系列| 日韩片之四级片| 26uuu精品一区二区| 久久久久久久久久看片| 国产欧美日韩三区| 亚洲图片激情小说| 亚洲国产美国国产综合一区二区| 亚洲一区二区高清| 日本不卡视频一二三区| 美女网站一区二区| 国产露脸91国语对白| 成人av网在线| 在线视频一区二区三| 欧美乱妇20p| 久久久亚洲欧洲日产国码αv| 国产亚洲婷婷免费| 亚洲视频免费在线观看| 亚洲成av人片| 久久精品国产成人一区二区三区 | 成人aa视频在线观看| 99免费精品视频| 色呦呦一区二区三区| 欧美日韩一区二区三区四区| 欧美大尺度电影在线| 国产欧美日韩不卡| 亚洲精品少妇30p| 日韩电影在线一区| 国产一区二区导航在线播放| 成人av在线资源网| 欧洲日韩一区二区三区| 精品国产乱码久久久久久图片| 久久综合av免费| 亚洲人成精品久久久久久| 日本最新不卡在线| 粉嫩aⅴ一区二区三区四区 | 日韩激情视频在线观看| 国产一区二区三区在线看麻豆| 99精品国产视频| 欧美一区在线视频| 中文字幕av一区 二区| 五月激情综合色| 成人免费视频一区二区| 欧美伦理影视网| 国产精品大尺度| 免费看精品久久片| 日本韩国一区二区| 精品免费视频一区二区| 亚洲欧美激情小说另类| 韩国三级中文字幕hd久久精品| 91免费在线播放| 精品国产凹凸成av人网站| 一区二区三区四区精品在线视频| 久久国产欧美日韩精品| 日本韩国一区二区三区视频| 精品国产伦一区二区三区观看方式 | 成人性色生活片免费看爆迷你毛片| 欧美性猛片aaaaaaa做受| 国产亚洲综合在线| 免费人成精品欧美精品| 在线一区二区三区四区五区 | 国产目拍亚洲精品99久久精品| 天天色综合成人网| 色94色欧美sute亚洲13| 中文字幕欧美国产| 激情文学综合插| 欧美日韩一区成人| 亚洲精品欧美在线| 成人黄色在线看| 久久蜜桃一区二区| 久色婷婷小香蕉久久| 欧美日韩国产成人在线免费| 国产精品毛片大码女人| 国产伦精品一区二区三区在线观看| 欧美人xxxx| 天堂av在线一区| 欧美日韩第一区日日骚| 一区二区三区不卡视频| 99re这里只有精品视频首页| 国产日韩精品一区二区三区| 久久99精品国产麻豆不卡| 欧美一区二区私人影院日本| 亚洲国产精品天堂| 欧美日韩精品一区二区三区| 亚洲乱码精品一二三四区日韩在线 | 中文字幕在线观看不卡| 日韩高清电影一区| 在线成人免费视频| 丝袜脚交一区二区| 6080国产精品一区二区| 亚洲高清免费观看| 在线播放中文字幕一区| 午夜av一区二区| 91麻豆精品久久久久蜜臀| 午夜精彩视频在线观看不卡| 欧美久久久久中文字幕| 日韩成人一区二区| 欧美成人r级一区二区三区| 裸体歌舞表演一区二区| 91精品国产欧美一区二区| 日本aⅴ免费视频一区二区三区| 欧美一区二区三区视频在线| 日本亚洲免费观看| 欧美一级国产精品| 精品在线播放免费| 久久久不卡影院| 成人免费福利片| 亚洲一区二区三区自拍| 欧美精品高清视频| 老司机免费视频一区二区| 欧美成人午夜电影| 成人综合在线网站| 亚洲黄色免费电影| 欧美日韩一区二区三区四区 | wwwwww.欧美系列| 国产成人在线影院| 亚洲嫩草精品久久| 欧美日韩成人综合| 精品一区二区三区在线播放| 久久综合国产精品| 91在线视频官网| 五月婷婷久久综合| 精品美女在线播放| av毛片久久久久**hd| 亚洲国产成人porn| 精品99一区二区| 色综合视频在线观看| 日韩制服丝袜av| 国产精品嫩草久久久久| 欧美三级午夜理伦三级中视频| 久久www免费人成看片高清| 国产精品乱人伦一区二区| 欧美日韩一区二区欧美激情| 国产一二三精品| 亚洲精品日韩综合观看成人91| 日韩三级免费观看| 波多野结衣在线一区| 亚洲成av人片在线| 欧美国产日韩精品免费观看| 欧美视频三区在线播放| 国产精品自拍毛片| 亚洲韩国精品一区| 国产亚洲精久久久久久| 欧美日韩一二区| 北岛玲一区二区三区四区| 日韩和欧美的一区| 日韩美女啊v在线免费观看| 欧美一区二区三区免费在线看 | jizz一区二区| 久久99久久精品| 一区二区理论电影在线观看| 久久这里只有精品视频网| 欧洲日韩一区二区三区| 国产麻豆一精品一av一免费|