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

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

?? ip.c

?? 用單片機實現GPRS modem通訊的源程序,實現了ppp撥號,tcp/udp等通訊協議包含了串口控制協議
?? C
字號:
/*/////////////////////////////////////////////////////////////////////////////

File Name : IP.C

Author : Rene Trenado

Location : Motorola Applications Lab, Baja California

Date Created : September 2000

Current Revision : 0.0

Notes : This file contains the Internet Protocol variables & support routines

/////////////////////////////////////////////////////////////////////////////*/
#include "IP.h"
#include "PPP.h"
#include "SLIP.h"

extern BYTE	InBuffer [PPP_BUFFER_SIZE + 1];	/// Input Buffer for PPP data
extern BYTE	OutBuffer[PPP_BUFFER_SIZE + 1];	

BYTE IPAddress[4] = {220, 1, 141, 149};					/* Default IP Address */
static volatile char IPAdapter = PPP;					/* Default interface for IP output */
IPDatagram *ip_in;
IPDatagram *ip_out;								/* Global buffer for IP packet output */




/***********************************************************************
Function : 	IPInit

Parameters : 	None

Date : 		September 2000

Desc : 		Initializes the IP module pointers

***********************************************************************/
void IPInit (void) {
	ip_in = (IPDatagram *)&InBuffer [4];
	ip_out = (IPDatagram *)&OutBuffer [4];
}



/***********************************************************************
Function : 	Bind adapter

Parameters : 	Interface: A Byte ID

Date : 		September 2000

Desc : 		Selects the output format of an IP packet

***********************************************************************/
void IPBindAdapter (INTERFACE Interface) {
	IPAdapter = Interface;							/* switch to different output interface */
}


/***********************************************************************
Function : 	IPNetSend

Parameters : 	ip: A pointer to a IP datagram to transmit

Date : 		November 2000

Desc : 		Sends a IP datagram over the interface specified

***********************************************************************/
void IPNetSend (IPDatagram* ip) {
static WORD Id = 0xF0;								/* ID to be used in IP datagrams */

	ip_out->Version_HLen	= 0x45;					/* Header Forma=IPv4, Length = 5 DWORDs */
	ip_out->Service 	= 0;							/* Always zero */
	ip_out->LengthUpper 	= 0;						/* High byte of datagram Length */
	ip_out->ID 		= htons(Id++);					/* Merge IP ID */
	ip_out->Frag 		= 0;						/* No flags nor enable fragmentation */
	ip_out->TTL 		= 0x80;					/* Time to live set to default */
	ip_out->Checksum 	= 0;							/* Clear checksum to avoid miscalculations */
	ip_out->Checksum 	= htons(IPCheckSum ((BYTE *)ip_out, 10));	/* Get checksum of entire datagram */

	switch (IPAdapter) {							/* Select the adapter to output the IP datagram */
		case PPP:								/* Output through PPP adapter */
			OutBuffer [0] = 0xff;					/* Frame PPP packet */
			OutBuffer [1] = 0x03;
			OutBuffer [2] = 0x00;					/* This is a IP datagram, set protocol type */
			OutBuffer [3] = 0x21;
      			ProcPPPSend (OutBuffer, OutBuffer [7] + 6);
		break;

		case SLIP:
			ProcSLIPSend ((BYTE *)ip_out, ip_out->Length);	/* Output through SLIP interface */
		break;


		case ETHERNET:							/* Send datagram over ethernet */
		break;

		default:
		break;
	}
}


/***********************************************************************
Function : 	IPCompare

Parameters : 	Ip: A pointer to a IP address to compare

Date : 		November 2000

Desc : 		Compares an IP address to the default IP address defined
		in this module

***********************************************************************/
BYTE IPCompare (BYTE *IPOne) {
	if (IPOne [0] != IPAddress[0]) return (BYTE)0x00;
	if (IPOne [1] != IPAddress[1]) return (BYTE)0x00;
	if (IPOne [2] != IPAddress[2]) return (BYTE)0x00;
	if (IPOne [3] != IPAddress[3]) return (BYTE)0x00;

	return (BYTE) 0x01;
}



/***********************************************************************
Function : 	IPChecksum

Parameters : 	Data: A pointer to an array of Words
		Size: Size of the array

Date : 		August 2000

Desc : 		Obtains the IP checksum of an array of 16-bit words of size "Size"

***********************************************************************/
DWORD IPCheckSum (BYTE* Data, WORD Size) {
unsigned long	Sum = 0;

	while (Size-->0) {
		Sum += ((unsigned long)((*Data << 8) + *(Data+1)) & 0xFFFF);
		Data+=2;
	}

	Sum = (Sum >> 16) + (Sum & 0xFFFF);
	Sum += (Sum >> 16);

	return (WORD) ~Sum;
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲婷婷国产精品电影人久久| 香蕉影视欧美成人| 精品一区二区三区视频 | 国产精品日产欧美久久久久| 99国产精品视频免费观看| 五月天一区二区三区| 精品国产乱码久久久久久1区2区 | 久久91精品国产91久久小草| 日韩av中文在线观看| 精品国产91洋老外米糕| 日韩精品影音先锋| 欧美在线一二三| 国产成人日日夜夜| 五月综合激情日本mⅴ| 亚洲一区二区三区四区在线观看 | 日韩精品一区二区三区在线观看| 911精品产国品一二三产区| 成人亚洲一区二区一| 日韩黄色免费网站| 亚洲精品免费在线播放| 国产人成亚洲第一网站在线播放| 欧美日韩一级视频| 91小视频在线观看| 粉嫩绯色av一区二区在线观看| 亚洲午夜羞羞片| 一区二区三区国产精品| 国产精品视频第一区| 亚洲最大成人网4388xx| 蜜乳av一区二区三区| 午夜精品免费在线| 精品在线播放免费| av在线综合网| av综合在线播放| 欧美日精品一区视频| 精品欧美久久久| 久久精品亚洲精品国产欧美 | 国产欧美一区二区精品性| 亚洲日本一区二区| 久久精品理论片| 免费的国产精品| 麻豆精品新av中文字幕| 成人av影视在线观看| 成人avav影音| 欧美精品v国产精品v日韩精品| 99久久婷婷国产精品综合| 欧美亚洲动漫精品| 欧美性猛交xxxx乱大交退制版| 欧美哺乳videos| 一区二区三区小说| 成人午夜又粗又硬又大| 777xxx欧美| 亚洲精品国产无天堂网2021| 国产精品一区2区| 成人av网站大全| 精品日韩成人av| 亚洲成av人片在线| 99久久综合狠狠综合久久| 日韩一区二区在线观看| 久久亚洲一区二区三区明星换脸| 国产喷白浆一区二区三区| 日韩1区2区日韩1区2区| 91福利在线播放| 2020国产成人综合网| 天天免费综合色| 欧美在线免费视屏| 亚洲综合图片区| av一区二区三区黑人| 国产农村妇女精品| 国产成人免费在线视频| 久久九九国产精品| 国产成人在线视频免费播放| 精品美女一区二区| 国产在线精品一区二区不卡了| av电影一区二区| 最新日韩av在线| 久久精品国产在热久久| 制服丝袜亚洲播放| 日本欧美一区二区三区乱码| 欧美日韩国产另类不卡| 中文字幕国产一区| 日本va欧美va瓶| 日韩午夜精品电影| 国产一区在线视频| 国产亚洲欧美日韩俺去了| 国产精品白丝av| 国产精品美女久久久久久久久| 国产精品伊人色| 国产精品毛片久久久久久| 成人av免费在线观看| 亚洲女同一区二区| 不卡电影一区二区三区| 国产精品成人在线观看| 国内欧美视频一区二区| 欧美私模裸体表演在线观看| 亚洲成av人片观看| 精品久久人人做人人爽| 国产在线麻豆精品观看| 综合欧美一区二区三区| 欧美日韩免费视频| 精品综合免费视频观看| 国产精品久久一卡二卡| 91成人在线观看喷潮| 久久99这里只有精品| 亚洲国产精品ⅴa在线观看| 欧美亚洲自拍偷拍| 极品瑜伽女神91| 亚洲精品乱码久久久久久日本蜜臀| 欧美性猛片aaaaaaa做受| 激情小说亚洲一区| 亚洲欧美偷拍三级| 日韩午夜在线影院| 91视频观看视频| 捆绑调教美女网站视频一区| 中文字幕一区二区三区色视频| 欧美日韩精品一区二区在线播放| 国产精品一卡二| 亚洲丰满少妇videoshd| 久久久91精品国产一区二区三区| 欧美伊人久久久久久久久影院 | 老司机精品视频导航| 亚洲人快播电影网| 精品久久国产97色综合| 91福利在线免费观看| 丰满亚洲少妇av| 视频一区在线播放| 亚洲欧美激情视频在线观看一区二区三区 | 久久一区二区三区四区| 欧美伊人久久大香线蕉综合69 | 中文字幕在线一区免费| 日韩精品中文字幕在线不卡尤物| 91视频com| 成人免费高清视频| 国产在线播放一区| 美日韩一区二区三区| 亚洲一区在线观看网站| 中文字幕在线不卡| 欧美极品xxx| 久久久国产精品麻豆| bt7086福利一区国产| 国产一区二区三区视频在线播放| 三级在线观看一区二区| 亚洲午夜一二三区视频| 一区二区三区日本| 亚洲人成电影网站色mp4| 国产精品热久久久久夜色精品三区 | 国产精品久久久久久久久久久免费看 | 91亚洲国产成人精品一区二三| 国产精品456露脸| 国产综合久久久久影院| 蜜桃视频在线观看一区| 日日欢夜夜爽一区| 亚洲不卡av一区二区三区| 亚洲精品日日夜夜| 一区二区三区蜜桃网| 亚洲综合在线视频| 亚洲电影一级黄| 日日夜夜精品视频免费 | 日韩视频免费直播| 精品美女一区二区| 久久蜜桃av一区二区天堂 | 午夜电影久久久| 视频在线在亚洲| 老司机精品视频在线| 国产一区二区在线免费观看| 久久国产精品色| 国产精品一区在线| 成人午夜精品一区二区三区| 大白屁股一区二区视频| 97久久人人超碰| 欧美视频一区二区在线观看| 91精品一区二区三区在线观看| 制服丝袜亚洲播放| 精品成人一区二区三区四区| 国产精品污www在线观看| 专区另类欧美日韩| 石原莉奈在线亚洲二区| 国产成人免费视频| 91浏览器入口在线观看| 欧美精品777| 久久久亚洲国产美女国产盗摄 | 国产精品二三区| 亚洲国产精品视频| 99精品热视频| 在线播放一区二区三区| 久久久久久久久久美女| 亚洲免费观看高清| 久久99热这里只有精品| 99久久婷婷国产精品综合| 91精品欧美综合在线观看最新| 久久久99久久精品欧美| 亚洲在线成人精品| 国产一区二区不卡老阿姨| 欧洲另类一二三四区| 精品毛片乱码1区2区3区| 亚洲国产美女搞黄色| 国产精品一色哟哟哟| 欧美日本在线一区| 国产精品国产三级国产普通话蜜臀 | 国产真实乱偷精品视频免| 97se亚洲国产综合自在线不卡|