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

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

?? tcpip.h

?? TCP/IP , design by msp430 , very good
?? H
字號:
//------------------------------------------------------------------------------
// Name: tcpip.h
// Func: header-file for tcpip.c
// Ver.: 1.1
// Date: January 2004
// Auth: Andreas Dannenberg
//       MSP430 Applications
//       Texas Instruments Inc.
// Rem.: -
//------------------------------------------------------------------------------

#ifndef __TCPIP_H
#define __TCPIP_H

#include "msp430x14x.h"

// easyWEB-stack definitions
#define MYIP_1               192                 // our internet protocol (IP) address
#define MYIP_2               168
#define MYIP_3               0
#define MYIP_4               30

#define SUBMASK_1            255                 // subnet mask
#define SUBMASK_2            255
#define SUBMASK_3            255
#define SUBMASK_4            0

#define GWIP_1               192                 // standard gateway (used if remote
#define GWIP_2               168                 // IP is no part of our subnet)
#define GWIP_3               0
#define GWIP_4               1

#define RETRY_TIMEOUT        8                   // wait max. 8 x 262ms for an ACK (about 2 sec.)
#define FIN_TIMEOUT          2                   // max. time to wait for an ACK of a FIN
                                                 // before closing TCP state-machine (about 0.5 s)
#define MAX_RETRYS           4                   // nr. of resendings before reset conn.
                                                 // total nr. of transmissions = MAX_RETRYS + 1

#define MAX_TCP_TX_DATA_SIZE 768                 // max. outgoing TCP data size
#define MAX_TCP_RX_DATA_SIZE 536                 // max. incoming TCP data size
                                                 // (increasing the buffer-size dramatically
                                                 // increases the transfer-speed!)
                                        
#define MAX_ETH_TX_DATA_SIZE 60                  // 2nd buffer, used for ARP, ICMP, TCP (even!)
                                                 // enough to echo 32 byte via ICMP

#define DEFAULT_TTL          64                  // Time To Live sent with packets

// Ethernet network layer definitions
#define ETH_DA_OFS           0                   // Destination MAC address (48 Bit)
#define ETH_SA_OFS           6                   // Source MAC address (48 Bit)
#define ETH_TYPE_OFS         12                  // Type field (16 Bit)
#define ETH_DATA_OFS         14                  // Frame Data
#define ETH_HEADER_SIZE      14

#define FRAME_ARP            (0x0806)            // frame types (stored in Type/Length field)
#define FRAME_IP             (0x0800)

// IPv4 layer definitions
#define IP_VER_IHL_TOS_OFS   (ETH_DATA_OFS + 0)  // Version, Header Length, Type of Service
#define IP_TOTAL_LENGTH_OFS  (ETH_DATA_OFS + 2)  // IP Frame's Total Length
#define IP_IDENT_OFS         (ETH_DATA_OFS + 4)  // Identifying Value
#define IP_FLAGS_FRAG_OFS    (ETH_DATA_OFS + 6)  // Flags and Fragment Offset
#define IP_TTL_PROT_OFS      (ETH_DATA_OFS + 8)  // Frame's Time to Live, Protocol
#define IP_HEAD_CHKSUM_OFS   (ETH_DATA_OFS + 10) // IP Frame's Header Checksum
#define IP_SOURCE_OFS        (ETH_DATA_OFS + 12) // Source Address (32 Bit)
#define IP_DESTINATION_OFS   (ETH_DATA_OFS + 16) // Destination Address (32 Bit)
#define IP_DATA_OFS          (ETH_DATA_OFS + 20) // Frame Data (if no options)
#define IP_HEADER_SIZE       20                  // w/o options

#define IP_VER_IHL           (0x4500)            // IPv4, Header Length = 5x32 bit
#define IP_TOS_D             (0x0010)            // TOS low delay
#define IP_TOS_T             (0x0008)            // TOS high throughput
#define IP_TOS_R             (0x0004)            // TOS high reliability

#define IP_FLAG_DONTFRAG     (0x4000)            // don't fragment IP frame
#define IP_FLAG_MOREFRAG     (0x2000)            // more fragments available
#define IP_FRAGOFS_MASK      (0x1fff)            // indicates where this fragment belongs

#define PROT_ICMP            1                   // Internet Control Message Protocol
#define PROT_TCP             6                   // Transmission Control Protocol
#define PROT_UDP             17                  // User Datagram Protocol

// ARP definitions
#define ARP_HARDW_OFS        (ETH_DATA_OFS + 0)  // Hardware address type
#define ARP_PROT_OFS         (ETH_DATA_OFS + 2)  // Protocol
#define ARP_HLEN_PLEN_OFS    (ETH_DATA_OFS + 4)  // byte length of each hardw. / prot. address
#define ARP_OPCODE_OFS       (ETH_DATA_OFS + 6)  // Opcode
#define ARP_SENDER_HA_OFS    (ETH_DATA_OFS + 8)  // Hardw. address of sender of this packet
#define ARP_SENDER_IP_OFS    (ETH_DATA_OFS + 14) // IP address of sender
#define ARP_TARGET_HA_OFS    (ETH_DATA_OFS + 18) // Hardw. address of target of this packet
#define ARP_TARGET_IP_OFS    (ETH_DATA_OFS + 24) // IP address of target
#define ARP_FRAME_SIZE       28

#define HARDW_ETH10          1                   // hardware-type 10Mbps Ethernet
#define IP_HLEN_PLEN         (0x0604)            // MAC = 6 byte long, IP = 4 byte long
#define OP_ARP_REQUEST       1                   // operations for ARP-frames
#define OP_ARP_ANSWER        2

// ICMP definitions
#define ICMP_TYPE_CODE_OFS   (IP_DATA_OFS + 0)   // type of message
#define ICMP_CHKSUM_OFS      (IP_DATA_OFS + 2)   // checksum of ICMP-message (16 bit)
#define ICMP_DATA_OFS        (IP_DATA_OFS + 4)
#define ICMP_HEADER_SIZE     4

#define ICMP_ECHO            8                   // message is an echo request
#define ICMP_ECHO_REPLY      0                   // message is an echo reply

// TCP layer definitions
#define TCP_SRCPORT_OFS      (IP_DATA_OFS + 0)   // Source Port (16 bit)
#define TCP_DESTPORT_OFS     (IP_DATA_OFS + 2)   // Destination Port (16 bit)
#define TCP_SEQNR_OFS        (IP_DATA_OFS + 4)   // Sequence Number (32 bit)
#define TCP_ACKNR_OFS        (IP_DATA_OFS + 8)   // Acknowledge Number (32 bit)
#define TCP_DATA_CODE_OFS    (IP_DATA_OFS + 12)  // Data Offset and Control Bits (16 bit)
#define TCP_WINDOW_OFS       (IP_DATA_OFS + 14)  // Window Size (16 bit)
#define TCP_CHKSUM_OFS       (IP_DATA_OFS + 16)  // Checksum Field (16 bit)
#define TCP_URGENT_OFS       (IP_DATA_OFS + 18)  // Urgent Pointer (16 bit)
#define TCP_DATA_OFS         (IP_DATA_OFS + 20)  // Frame Data (if no options)
#define TCP_HEADER_SIZE      20                  // size w/o options

#define DATA_OFS_MASK        (0xf000)            // number of 32 bit words in the TCP Header

#define TCP_CODE_FIN         (0x0001)
#define TCP_CODE_SYN         (0x0002)
#define TCP_CODE_RST         (0x0004)
#define TCP_CODE_PSH         (0x0008)
#define TCP_CODE_ACK         (0x0010)
#define TCP_CODE_URG         (0x0020)

#define TCP_OPT_MSS          (0x0204)            // Type 2, Option Length 4 (Max. Segment Size)
#define TCP_OPT_MSS_SIZE     4

// define some TCP standard-ports, useful for testing...
#define TCP_PORT_ECHO        7                   // echo
#define TCP_PORT_DISCARD     9                   // discard
#define TCP_PORT_DAYTIME     13                  // daytime
#define TCP_PORT_QOTD        17                  // quote of the day
#define TCP_PORT_CHARGEN     19                  // character generator
#define TCP_PORT_HTTP        80                  // word wide web HTTP

// macro: word access to MSP430 memory location
#define ACCESS_UINT(Base, Offset)   (*(unsigned int *)((unsigned char *)&(Base) + (Offset)))
// macro: endianess conversion
#define SWAPB(Word)                 ((unsigned int)((Word) << 8) | ((Word) >> 8))

// typedefs
typedef enum                                     // states of the TCP-state machine
{                                                // according to RFC793
  CLOSED,                                        
  LISTENING,
  SYN_SENT,
  SYN_RECD,
  ESTABLISHED,
  FIN_WAIT_1,
  FIN_WAIT_2,
  CLOSE_WAIT,
  CLOSING,
  LAST_ACK,
  TIME_WAIT
} TTCPStateMachine;

typedef enum                                     // type of last frame sent. used
{                                                // for retransmissions
  ARP_REQUEST,                                   
  TCP_SYN_FRAME,
  TCP_SYN_ACK_FRAME,
  TCP_FIN_FRAME,
  TCP_DATA_FRAME
} TLastFrameSent;

// definitions for 'TransmitControl'
#define SEND_FRAME1                    (0x01)
#define SEND_FRAME2                    (0x02)

// definitions for 'TCPFlags'
#define TCP_ACTIVE_OPEN                (0x01)    // easyWEB shall initiate a connection
#define IP_ADDR_RESOLVED               (0x02)    // IP sucessfully resolved to MAC
#define TCP_TIMER_RUNNING              (0x04)
#define TIMER_TYPE_RETRY               (0x08)
#define TCP_CLOSE_REQUESTED            (0x10)

// definitions for 'SocketStatus'
#define SOCK_ACTIVE                    (0x01)    // state machine NOT closed
#define SOCK_CONNECTED                 (0x02)    // user may send & receive data
#define SOCK_DATA_AVAILABLE            (0x04)    // new data available
#define SOCK_TX_BUF_RELEASED           (0x08)    // user may fill buffer
#define SOCK_ERROR_MASK                (0xf0)    // bit-mask to check for errors
#define SOCK_ERR_OK                    (0x00)    // no error
#define SOCK_ERR_ARP_TIMEOUT           (0x10)    // timeout waiting for an ARP-REPLY
#define SOCK_ERR_TCP_TIMEOUT           (0x20)    // timeout waiting for an ACK
#define SOCK_ERR_CONN_RESET            (0x30)    // connection was reset by the other TCP
#define SOCK_ERR_REMOTE                (0x40)    // remote TCP caused fatal error
#define SOCK_ERR_ETHERNET              (0x50)    // network interface error (timeout)

// exported functions
// easyWEB-API functions
void TCPLowLevelInit(void);                      // setup timer, LAN-controller, flags...
void TCPPassiveOpen(void);                       // listen for a connection
void TCPActiveOpen(void);                        // open connection
void TCPClose(void);                             // close connection
void TCPReleaseRxBuffer(void);                   // indicate to discard rec'd packet
void TCPTransmitTxBuffer(void);                  // initiate transfer after TxBuffer is filled
void DoNetworkStuff(void);                       // network and TCP/IP event processing

// exported constants
extern const unsigned int MyIP[];                // local IP address
extern const unsigned int SubnetMask[];          // subnet mask (outbount connections)
extern const unsigned int GatewayIP[];           // gateway IP addr (outbount connections)

// exported variables
// easyWEB-API global vars and flags
extern unsigned char SocketStatus;               // API status variable
extern unsigned int TCPLocalPort;                // TCP ports
extern unsigned int TCPRemotePort;
extern unsigned int RemoteMAC[3];                // MAC address of current TCP-session
extern unsigned int RemoteIP[2];                 // IP address of current TCP-session
extern unsigned int TCPRxDataCount;              // nr. of bytes rec'd (TCP_RX_BUF)
extern unsigned int TCPTxDataCount;              // nr. of bytes to send (TCP_TX_BUF)
extern unsigned int TxFrame1Mem[];               // outgoing TCP segment
extern unsigned int RxTCPBufferMem[];            // data of received TCP segment

// easyWEB-API TCP data buffer-pointers
#define TCP_TX_BUF      ((unsigned char *)TxFrame1Mem + ETH_HEADER_SIZE + \
                          IP_HEADER_SIZE + TCP_HEADER_SIZE)
#define TCP_RX_BUF      ((unsigned char *)RxTCPBufferMem)

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99riav久久精品riav| 久久久久久久久久久黄色| 日韩欧美在线综合网| 中文字幕乱码一区二区免费| 日本伊人色综合网| 94色蜜桃网一区二区三区| 精品日韩欧美在线| 天天综合色天天| 一本大道综合伊人精品热热| 国产亚洲欧美色| 久久不见久久见免费视频1| 欧美美女一区二区| 最新中文字幕一区二区三区 | 国产欧美一区二区精品性色| 亚洲电影中文字幕在线观看| 91亚洲永久精品| 国产网站一区二区三区| 裸体一区二区三区| 51午夜精品国产| 日韩在线a电影| 欧美日韩一二三区| 夜夜亚洲天天久久| 一本色道久久综合狠狠躁的推荐| 国产午夜精品久久久久久免费视 | 亚洲欧美另类综合偷拍| 国产精品一区在线观看你懂的| 欧美精选一区二区| 偷拍自拍另类欧美| 欧美日韩精品系列| 日本午夜精品一区二区三区电影 | 日韩国产欧美在线观看| 欧美日韩一级视频| 婷婷成人综合网| 91精品国产入口在线| 蜜臀久久99精品久久久久宅男| 欧美日韩性生活| 日韩成人免费电影| 精品久久久久久无| 国产福利一区二区三区视频在线| 久久久久久久久久久99999| 国产风韵犹存在线视精品| 国产欧美一区二区三区网站| 99在线精品观看| 亚洲国产色一区| 777亚洲妇女| 国内精品国产成人国产三级粉色| 精品国产精品网麻豆系列| 国内成+人亚洲+欧美+综合在线| 久久麻豆一区二区| a美女胸又www黄视频久久| 亚洲国产视频一区二区| 欧美一区午夜视频在线观看| 久久国内精品视频| 中文子幕无线码一区tr| 色综合久久中文综合久久牛| 五月婷婷久久丁香| 久久蜜臀精品av| 91亚洲午夜精品久久久久久| 天天色天天爱天天射综合| 久久亚洲欧美国产精品乐播 | 国产视频不卡一区| 色就色 综合激情| 日本aⅴ亚洲精品中文乱码| 久久久久久久av麻豆果冻| 91在线精品一区二区三区| 亚洲第四色夜色| 久久久蜜桃精品| 色婷婷久久久综合中文字幕| 美国欧美日韩国产在线播放| 国产精品视频在线看| 欧美日韩亚洲另类| 国产91在线观看| 亚洲高清在线视频| 国产人妖乱国产精品人妖| 在线免费观看成人短视频| 久久99日本精品| 亚洲欧美日韩成人高清在线一区| 日韩视频永久免费| 色婷婷香蕉在线一区二区| 国产一区二区三区在线观看免费视频| 最新日韩av在线| 久久综合久久99| 欧美日韩另类国产亚洲欧美一级| 国产精一区二区三区| 五月天欧美精品| 亚洲色大成网站www久久九九| 久久精品一区二区| 欧美主播一区二区三区美女| 国产成人鲁色资源国产91色综 | 日韩精品久久久久久| 国产精品灌醉下药二区| 国产精品三级av在线播放| 91在线精品秘密一区二区| 国产欧美一区二区在线观看| 欧美一区二区三区视频在线| 91豆麻精品91久久久久久| 国产成人精品免费在线| 久久精品噜噜噜成人av农村| 亚洲在线视频免费观看| 国产精品久久777777| 精品福利二区三区| 欧美麻豆精品久久久久久| 在线这里只有精品| 91麻豆国产自产在线观看| 福利电影一区二区| 激情六月婷婷久久| 另类小说视频一区二区| 日本一区中文字幕| 亚洲18女电影在线观看| 亚洲综合久久av| 亚洲一二三区在线观看| 亚洲午夜久久久| 亚洲电影一区二区| 亚洲午夜激情网站| 亚洲国产精品一区二区久久恐怖片| 91在线精品一区二区三区| 一区二区三区日本| 亚洲精品国产视频| 亚洲激情第一区| 亚洲一区二区三区精品在线| 亚洲综合在线免费观看| 一区二区视频在线| 亚洲男人天堂av| 亚洲成人777| 蜜桃91丨九色丨蝌蚪91桃色| 麻豆专区一区二区三区四区五区| 丝袜诱惑亚洲看片| 丝袜亚洲另类欧美| 免费高清在线一区| 国产剧情一区在线| 99综合电影在线视频| 91极品视觉盛宴| 欧美精品1区2区| 欧美精品一区二区三区一线天视频| www国产成人| 国产精品高潮呻吟久久| 一区二区三区四区在线播放| 亚洲国产成人tv| 九一九一国产精品| www.久久久久久久久| 欧美日韩日日夜夜| 欧美精品一区二区三区很污很色的| 国产欧美一区二区在线| 亚洲日本青草视频在线怡红院| 亚洲图片一区二区| 国产一区二区三区电影在线观看| 丰满亚洲少妇av| 欧美日韩一区二区三区免费看| 日韩免费看的电影| 国产精品久久久久久久久免费桃花 | 欧美久久久影院| 国产色婷婷亚洲99精品小说| 亚洲精品写真福利| 久久电影网站中文字幕| 99久久综合色| 日韩欧美在线不卡| 亚洲四区在线观看| 久久97超碰国产精品超碰| 成人高清免费观看| 日韩一二三区不卡| 亚洲日本va在线观看| 久久91精品久久久久久秒播| 色一情一乱一乱一91av| 欧美sm极限捆绑bd| 亚洲一区二区三区四区在线观看 | 欧美亚男人的天堂| 2023国产一二三区日本精品2022| 亚洲欧美日韩中文播放| 国产自产高清不卡| 欧美日韩激情一区二区三区| 国产欧美一区二区精品忘忧草| 午夜伊人狠狠久久| 一本大道久久精品懂色aⅴ| 久久久久免费观看| 视频一区中文字幕| 色欧美乱欧美15图片| 久久蜜桃av一区二区天堂| 日韩av中文字幕一区二区| 色视频成人在线观看免| 国产精品久久久久天堂| 国产在线视频不卡二| 69堂成人精品免费视频| 亚洲一区二区三区四区在线| 成人少妇影院yyyy| 久久精品日产第一区二区三区高清版| 香蕉影视欧美成人| 欧美性大战久久久| 亚洲精品精品亚洲| 国产99久久久精品| 久久一区二区三区四区| 蜜桃在线一区二区三区| 欧美日韩国产免费| 亚洲一二三四在线观看| 色欲综合视频天天天| 国产精品国产三级国产aⅴ入口| 国产一区二区成人久久免费影院| 日韩免费观看2025年上映的电影 | 亚洲精品成人精品456| 91小视频在线| 亚洲欧美日韩久久|