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

📄 network.h

📁 本人编写的无线电话程序,给予PIC18C801设计,包括了uCOS的移植以及菜单,自己设计的拼音注入法,完整地一级汉字库,希望对大家有所帮助
💻 H
字号:
//General explaination
//The network software is composed of 4 task. There Task_PPPHandler, Task_IPHandler
//and Task_TCPHandler and Task_TCPRetransHandler.
//Task_PPPHandler : process the establishing and terminating of the link, and LCP,
//  PAP, IPCP, also the PPP packet process and had IP datagram to IP handler
//

#include "includes.h"




#define MAC_TX_BUFFER_SIZE          4096		//the max length of tx buffer
#define MAC_TX_BUFFER_COUNT         1			//how many buffers can be applied
#define MAC_RX_BUFFER_SIZE          MAC_TX_BUFFER_SIZE

//The length of packet header, in bytes
#define PPP_HEADLEN		4
#define IP_HEADLEN		20
#define UDP_HEADLEN		8

//Defination of Type field in ICMP packet
#define ECHOREPLY	0
#define ECHOREQ		8
#define TRACEROUTE	30

typedef rom struct {
	INT8U	Type;
	INT8U	Code;
	INT8U	CheckSumH;
	INT8U	CheckSumL;
	INT16U	Id;
	INT16U	Sequence;
}ICMPPACKET;

//Defination of Protocol field in IP packet
#define ICMP 		1
#define TCP			6
#define UDP			17


/*
 * TCP configurations
 * To minmize page update, match number of sockets and
 * HTTP connections with different page sources in a
 * page.
 * For example, if page contains reference to 3 more pages,
 * browser may try to open 4 simultaneous HTTP connections,
 * and to minimize browser delay, set HTTP connections to
 * 4, MAX_SOCKETS to 4 and MAC_TX_BUFFER_COUNT to 4.
 * If you are using ICMP or other applications, you should
 * keep at least one socket available for them.
 */

/*
 * Maximum sockets to be defined.
 * Note that each socket consumes 36 bytes of RAM.
 */
#define MAX_SOCKETS         10	//Actually the TCP socket number

/*
 * Avaialble UDP Socket
 */
#define MAX_UDP_SOCKETS     10


#if (MAX_SOCKETS <= 0 || MAX_SOCKETS > 255)
#error Invalid MAX_SOCKETS value specified.
#endif

#if (MAX_UDP_SOCKETS <= 0 || MAX_UDP_SOCKETS > 255 )
#error Invlaid MAX_UDP_SOCKETS value specified
#endif



/////


typedef rom struct {
	BYTE	VerHLen;
	BYTE	Service;
   	BYTE	LengthH;
	BYTE	LengthL;
	WORD	ID;
	WORD	Frag;
	BYTE	TTL;
	BYTE	Protocol;
	WORD	Checksum;
	BYTE	SourceAddress [4];
	BYTE	DestAddress [4];
	BYTE	Payload [64];
} IPDATAGRAM;


⌨️ 快捷键说明

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