/* ********************************************************************************************************* * uC/TCP-IP V2 * The Embedded TCP/IP Suite * * (c) Copyright 2003-2010; Micrium, Inc.; Weston, FL * * All rights reserved. Protected by international copyright laws. * * uC/TCP-IP is provided in source form to registered licensees ONLY. It is * illegal to distribute this source code to any third party unless you receive * written permission by an authorized Micrium representative. Knowledge of * the source code may NOT be used to develop a similar product. * * Please help us continue to provide the Embedded community with the finest * software available. Your honesty is greatly appreciated. * * You can contact us at www.micrium.com. ********************************************************************************************************* */ /* ********************************************************************************************************* * * NETWORK TCP LAYER * (TRANSMISSION CONTROL PROTOCOL) * * Filename : net_tcp.h * Version : V2.10 * Programmer(s) : ITJ ********************************************************************************************************* * Note(s) : (1) Supports Transmission Control Protocol as described in RFC #793 with the following * restrictions/constraints : * * (a) TCP Security & Precedence NOT supported RFC # 793, Section 3.6 * * (b) TCP Urgent Data NOT supported RFC # 793, Section 3.7 * 'The Communication of * Urgent Information' * * (c) The following TCP options NOT supported : * * (1) Window Scale RFC #1072, Section 2 * RFC #1323, Section 2 * (2) Selective Acknowledgement (SACK) RFC #1072, Section 3 * RFC #2018 * RFC #2883 * (3) TCP Echo RFC #1072, Section 4 * (4) Timestamp RFC #1323, Section 3.2 * (5) Protection Against Wrapped Sequences (PAWS) RFC #1323, Section 4 * * (d) #### IP-Options-to-TCP-Connection RFC #1122, Section 4.2.3.8 * Handling NOT supported * * (e) #### ICMP-Error-Message-to-TCP-Connection RFC #1122, Section 4.2.3.9 * Handling NOT currently supported * * (2) TCP Layer assumes/requires Network Socket Layer (see 'net_sock.h MODULE Note #1a2'). ********************************************************************************************************* */ /*$PAGE*/ /* ********************************************************************************************************* * MODULE * * Note(s) : (1) TCP Layer module is NOT required for UDP-to-Application API configuration. * * See also 'net_cfg.h TRANSPORT LAYER CONFIGURATION' * & 'net_cfg.h USER DATAGRAM PROTOCOL LAYER CONFIGURATION'. * * See also 'net_tcp.h Note #2'. * * (2) The following TCP-module-present configuration value MUST be pre-#define'd in * 'net_cfg_net.h' PRIOR to all other network modules that require TCP Layer * configuration (see 'net_cfg_net.h TCP LAYER CONFIGURATION Note #2b') : * * NET_TCP_MODULE_PRESENT ********************************************************************************************************* */ #ifdef NET_TCP_MODULE_PRESENT /* See Note #2. */ /* ********************************************************************************************************* * EXTERNS ********************************************************************************************************* */ #if ((defined(NET_TCP_MODULE)) && \ (defined(NET_GLOBALS_EXT))) #define NET_TCP_EXT #else #define NET_TCP_EXT extern #endif /*$PAGE*/ /* ********************************************************************************************************* * DEFINES ********************************************************************************************************* */ /* ********************************************************************************************************* * TCP HEADER DEFINES * * Note(s) : (1) The following TCP value MUST be pre-#define'd in 'net_def.h' PRIOR to 'net_buf.h' so that * the Network Buffer Module can configure maximum buffer header size (see 'net_def.h TCP * LAYER DEFINES' & 'net_buf.h NETWORK BUFFER INDEX & SIZE DEFINES Note #1') : * * (a) NET_TCP_HDR_SIZE_MAX 60 (NET_TCP_HDR_LEN_MAX * * NET_TCP_HDR_LEN_WORD_SIZE) * * (2) Urgent pointer & data NOT supported (see 'net_tcp.h Note #1b'). ********************************************************************************************************* */ #define NET_TCP_HDR_LEN_MASK 0xF000u #define NET_TCP_HDR_LEN_SHIFT 12u #define NET_TCP_HDR_LEN_NONE 0u #define NET_TCP_HDR_LEN_MIN 5u #define NET_TCP_HDR_LEN_MAX 15u #define NET_TCP_HDR_LEN_WORD_SIZE CPU_WORD_SIZE_32 #define NET_TCP_HDR_SIZE_MIN (NET_TCP_HDR_LEN_MIN * NET_TCP_HDR_LEN_WORD_SIZE) #if 0 /* See Note #1a. */ #define NET_TCP_HDR_SIZE_MAX (NET_TCP_HDR_LEN_MAX * NET_TCP_HDR_LEN_WORD_SIZE) #endif #define NET_TCP_HDR_SIZE_TOT_MIN (NET_IP_HDR_SIZE_TOT_MIN + NET_TCP_HDR_SIZE_MIN) #define NET_TCP_HDR_SIZE_TOT_MAX (NET_IP_HDR_SIZE_TOT_MAX + NET_TCP_HDR_SIZE_MAX) #define NET_TCP_PSEUDO_HDR_SIZE 12u /* = sizeof(NET_TCP_PSEUDO_HDR) */ #define NET_TCP_PORT_NBR_RESERVED NET_PORT_NBR_RESERVED #define NET_TCP_PORT_NBR_NONE NET_TCP_PORT_NBR_RESERVED #define NET_TCP_HDR_URG_PTR_NONE 0x0000u /* See Note #2. */ /*$PAGE*/ /* ********************************************************************************************************* * TCP HEADER FLAG DEFINES * * Note(s) : (1) See 'TCP HEADER Note #2' for flag fields. * * (2) Urgent pointer & data NOT supported (see 'net_tcp.h Note #1b'). ********************************************************************************************************* */ #define NET_TCP_HDR_FLAG_MASK 0x0FFFu #define NET_TCP_HDR_FLAG_NONE DEF_BIT_NONE #define NET_TCP_HDR_FLAG_RESERVED 0x0FE0u /* MUST be '0'. */ #define NET_TCP_HDR_FLAG_URGENT DEF_BIT_05 /* See Note #2. */ #define NET_TCP_HDR_FLAG_ACK DEF_BIT_04 #define NET_TCP_HDR_FLAG_PUSH DEF_BIT_03 #define NET_TCP_HDR_FLAG_RESET DEF_BIT_02 #define NET_TCP_HDR_FLAG_SYNC DEF_BIT_01 #define NET_TCP_HDR_FLAG_FIN DEF_BIT_00 #define NET_TCP_HDR_FLAG_CLOSE NET_TCP_HDR_FLAG_FIN /* ********************************************************************************************************* * TCP FLAG DEFINES ********************************************************************************************************* */ /* ------------------ NET TCP FLAGS ------------------- */ #define NET_TCP_FLAG_NONE DEF_BIT_NONE #define NET_TCP_FLAG_USED DEF_BIT_00 /* TCP conn cur used; i.e. NOT in free TCP conn pool. */ /* ------------------ TCP TX FLAGS ------------------- */ /* TCP tx flags copied from TCP hdr flags. */ #define NET_TCP_FLAG_TX_FIN NET_TCP_HDR_FLAG_FIN #define NET_TCP_FLAG_TX_CLOSE NET_TCP_FLAG_TX_FIN #define NET_TCP_FLAG_TX_SYNC NET_TCP_HDR_FLAG_SYNC #define NET_TCP_FLAG_TX_RESET NET_TCP_HDR_FLAG_RESET #define NET_TCP_FLAG_TX_PUSH NET_TCP_HDR_FLAG_PUSH #define NET_TCP_FLAG_TX_ACK NET_TCP_HDR_FLAG_ACK #define NET_TCP_FLAG_TX_URGENT NET_TCP_HDR_FLAG_URGENT #define NET_TCP_FLAG_TX_BLOCK DEF_BIT_07 /* ------------------ TCP RX FLAGS ------------------- */ #define NET_TCP_FLAG_RX_DATA_PEEK DEF_BIT_08 #define NET_TCP_FLAG_RX_BLOCK DEF_BIT_15 /*$PAGE*/ /* ********************************************************************************************************* * TCP TYPE DEFINES * * Note(s) : (1) NET_TCP_TYPE_&&& #define values specifically chosen as ASCII representations of the TCP * types. Memory displays of TCP types will display with their chosen ASCII names. ********************************************************************************************************* */ /* ------------------ NET TCP TYPES ------------------- */ #if (CPU_CFG_ENDIAN_TYPE == CPU_ENDIAN_TYPE_BIG) #define NET_TCP_TYPE_NONE 0x4E4F4E45u /* "NONE" in ASCII. */ #define NET_TCP_TYPE_CONN 0x54435020u /* "TCP " in ASCII. */ #else #if (CPU_CFG_DATA_SIZE == CPU_WORD_SIZE_32) #define NET_TCP_TYPE_NONE 0x454E4F4Eu /* "NONE" in ASCII. */ #define NET_TCP_TYPE_CONN 0x20504354u /* "TCP " in ASCII. */ #elif (CPU_CFG_DATA_SIZE == CPU_WORD_SIZE_16) #define NET_TCP_TYPE_NONE 0x4F4E454Eu /* "NONE" in ASCII. */ #define NET_TCP_TYPE_CONN 0x43542050u /* "TCP " in ASCII. */ #else /* Dflt CPU_WORD_SIZE_08. */ #define NET_TCP_TYPE_NONE 0x4E4F4E45u /* "NONE" in ASCII. */ #define NET_TCP_TYPE_CONN 0x54435020u /* "TCP " in ASCII. */ #endif #endif /* ********************************************************************************************************* * TCP SEQUENCE NUMBER DEFINES * * Note(s) : (1) TCP initial transmit sequence number is incremented by a fixed value, preferably a large * prime value or a large value with multiple unique factors. * * (a) One reasonable TCP initial transmit sequence number increment value example : * * 65527 = 37 * 23 * 11 * 7 * * * #### NET_TCP_TX_SEQ_NBR_CTR_INC could be developer-configured in 'net_cfg.h'. * * See also 'NET_TCP_TX_GET_SEQ_NBR() Notes #1b2 & #1c2'. ********************************************************************************************************* */ #define NET_TCP_SEQ_NBR_NONE 0u #define NET_TCP_ACK_NBR_NONE NET_TCP_SEQ_NBR_NONE #define NET_TCP_TX_SEQ_NBR_CTR_INC 65527u /* See Note #1. */ #define NET_TCP_ACK_NBR_DUP_WIN_SIZE_SCALE 4 /*$PAGE*/ /* ********************************************************************************************************* * TCP DATA/TOTAL LENGTH DEFINES * * Note(s) : (1) (a) TCP total length #define's (NET_TCP_TOT_LEN) relate to the total size of a complete * TCP packet, including the packet's TCP header. Note that a complete TCP packet MAY * be fragmented in multiple Internet Protocol packets. * * (b) TCP data length #define's (NET_TCP_DATA_LEN) relate to the data size of a complete * TCP packet, equal to the total TCP packet length minus its TCP header size. Note * that a complete TCP packet MAY be fragmented in multiple Internet Protocol packets. ********************************************************************************************************* */ /* See Notes #1a & #1b. */ #define NET_TCP_DATA_LEN_MIN 0u #define NET_TCP_TOT_LEN_MIN (NET_TCP_HDR_SIZE_MIN + NET_TCP_DATA_LEN_MIN) #define NET_TCP_TOT_LEN_MAX (NET_IP_TOT_LEN_MAX - NET_IP_HDR_SIZE_MIN ) #define NET_TCP_DATA_LEN_MAX (NET_TCP_TOT_LEN_MAX - NET_TCP_HDR_SIZE_MIN) /*$PAGE*/ /* ********************************************************************************************************* * TCP SEGMENT SIZE DEFINES * * Note(s) : (1) (a) RFC # 879, Section 3 states that the TCP Maximum Segment Size "counts only * data octets in the segment, ... not the TCP header or the IP header". * * (b) RFC #1122, Section 4.2.2.6 requires that : * * (1) "The MSS value to be sent in an MSS option must be less than or equal to * * (A) MMS_R - 20 * * where MMS_R is the maximum size for a transport-layer message that can * be received." * * (2) "If an MSS option is not received at connection setup, TCP MUST assume a * default send MSS of 536 (576 - 40)." * * See also 'net_ip.h IP DATA/TOTAL LENGTH DEFINES Note #1'. ********************************************************************************************************* */ /* See Note #1. */ #define NET_TCP_MAX_SEG_SIZE_DFLT (NET_IP_MAX_DATAGRAM_SIZE_DFLT - NET_IP_HDR_SIZE_MIN - NET_TCP_HDR_SIZE_MIN) #define NET_TCP_MAX_SEG_SIZE_DFLT_RX NET_TCP_DATA_LEN_MAX /* See Note #1b1. */ #define NET_TCP_MAX_SEG_SIZE_DFLT_TX NET_TCP_MAX_SEG_SIZE_DFLT /* See Note #1b2. */ #define NET_TCP_MAX_SEG_SIZE_NONE 0u #define NET_TCP_MAX_SEG_SIZE_MIN NET_TCP_MAX_SEG_SIZE_DFLT #define NET_TCP_MAX_SEG_SIZE_MAX NET_TCP_DATA_LEN_MAX #define NET_TCP_SEG_LEN_MIN NET_TCP_DATA_LEN_MIN #define NET_TCP_SEG_LEN_MAX NET_TCP_DATA_LEN_MAX #define NET_TCP_SEG_LEN_SYNC 1u #define NET_TCP_SEG_LEN_FIN 1u #define NET_TCP_SEG_LEN_CLOSE NET_TCP_SEG_LEN_FIN #define NET_TCP_SEG_LEN_ACK 0u #define NET_TCP_SEG_LEN_RESET 0u #define NET_TCP_SEG_LEN_PROBE 0u #define NET_TCP_DATA_LEN_TX_SYNC 0u #define NET_TCP_DATA_LEN_TX_FIN 0u #define NET_TCP_DATA_LEN_TX_CLOSE NET_TCP_DATA_LEN_TX_FIN #define NET_TCP_DATA_LEN_TX_ACK 0u #define NET_TCP_DATA_LEN_TX_PROBE_NO_DATA 0u #define NET_TCP_DATA_LEN_TX_PROBE_DATA 1u #define NET_TCP_DATA_LEN_TX_RESET 0u #define NET_TCP_TX_PROBE_DATA 0x00u /* ********************************************************************************************************* * TCP WINDOW SIZE DEFINES * * Note(s) : (1) Although NO RFC specifies the absolute minimum TCP connection window size value allowed, * RFC #793, Section 3.7 'Data Communication : Managing the Window' states that for "the * window ... there is an assumption that this is related to the currently available data * buffer space available for this connection". ********************************************************************************************************* */ #define NET_TCP_WIN_SIZE_NONE 0u #define NET_TCP_WIN_SIZE_MIN NET_TCP_MAX_SEG_SIZE_MIN #define NET_TCP_WIN_SIZE_MAX DEF_INT_16U_MAX_VAL /*$PAGE*/ /* ********************************************************************************************************* * TCP HEADER OPTIONS DEFINES * * Note(s) : (1) See the following RFC's for TCP options summary : * * (a) RFC # 793, Section 3.1 'Header Format : Options' * (b) RFC #1122; Sections 4.2.2.5, 4.2.2.6 * * (2) TCP option types are encoded in the first octet for each TCP option as follows : * * -------- * | TYPE | * -------- * * The TCP option type value determines the TCP option format : * * (a) The following TCP option types are single-octet TCP options -- i.e. the option type * octet is the ONLY octet for the TCP option. * * (1) TYPE = 0 End of Options List * (2) TYPE = 1 No Operation * * * (b) All other TCP options MUST be multi-octet TCP options (see RFC #1122, Section 4.2.2.5) : * * ------------------------------ * | TYPE | LEN | TCP OPT | * ------------------------------ * * where * TYPE Indicates the specific TCP option type * LEN Indicates the total TCP option length, in octets, including * the option type & the option length octets * TCP OPT Additional TCP option octets, if any, that contain the remaining * TCP option information * * The following TCP option types are multi-octet TCP options where the option's second * octet specify the total TCP option length, in octets, including the option type & the * option length octets : * * (1) TYPE = 2 Maximum Segment Size See RFC # 793, Section 3.1 'Header Format : * Options : Maximum Segment Size'; * RFC #1122, Section 4.2.2.6; * RFC # 879, Section 3 * * (2) TYPE = 3 Window Scale See 'net_tcp.h Note #1c1' * (3) TYPE = 4 SACK Allowed See 'net_tcp.h Note #1c2' * (4) TYPE = 5 SACK Option See 'net_tcp.h Note #1c2' * (5) TYPE = 6 Echo Request See 'net_tcp.h Note #1c3' * (6) TYPE = 7 Echo Reply See 'net_tcp.h Note #1c3' * (7) TYPE = 8 Timestamp See 'net_tcp.h Note #1c4' * * (3) TCP header allows for a maximum option list length of 40 octets : * * NET_TCP_HDR_OPT_SIZE_MAX = NET_TCP_HDR_SIZE_MAX - NET_TCP_HDR_SIZE_MIN * * = 60 - 20 * * = 40 * * (4) 'NET_TCP_OPT_SIZE' MUST be pre-defined PRIOR to all definitions that require TCP option * size data type. ********************************************************************************************************* */ /*$PAGE*/ #define NET_TCP_HDR_OPT_END_LIST 0u #define NET_TCP_HDR_OPT_NOP 1u #define NET_TCP_HDR_OPT_MAX_SEG_SIZE 2u #define NET_TCP_HDR_OPT_WIN_SCALE 3u #define NET_TCP_HDR_OPT_SACK_PERMIT 4u #define NET_TCP_HDR_OPT_SACK 5u #define NET_TCP_HDR_OPT_ECHO_REQ 6u #define NET_TCP_HDR_OPT_ECHO_REPLY 7u #define NET_TCP_HDR_OPT_TS 8u #define NET_TCP_HDR_OPT_PAD NET_TCP_HDR_OPT_END_LIST #define NET_TCP_HDR_OPT_LEN_END_LIST 1u #define NET_TCP_HDR_OPT_LEN_NOP 1u #define NET_TCP_HDR_OPT_LEN_MAX_SEG_SIZE 4u #define NET_TCP_HDR_OPT_LEN_WIN_SCALE 3u #define NET_TCP_HDR_OPT_LEN_SACK_PERMIT 2u #define NET_TCP_HDR_OPT_LEN_ECHO_REQ 6u #define NET_TCP_HDR_OPT_LEN_ECHO_REPLY 6u #define NET_TCP_HDR_OPT_LEN_TS 10u #define NET_TCP_HDR_OPT_LEN_SACK_MIN 6u #define NET_TCP_HDR_OPT_LEN_SACK_MAX 38u #define NET_TCP_HDR_OPT_LEN_MIN 1u #define NET_TCP_HDR_OPT_LEN_MIN_LEN 2u #define NET_TCP_HDR_OPT_LEN_MAX 38u typedef CPU_INT32U NET_TCP_OPT_SIZE; /* TCP opt size data type (see Note #4). */ #define NET_TCP_HDR_OPT_SIZE_WORD (sizeof(NET_TCP_OPT_SIZE)) #define NET_TCP_HDR_OPT_SIZE_MAX (NET_TCP_HDR_SIZE_MAX - NET_TCP_HDR_SIZE_MIN) #define NET_TCP_HDR_OPT_NBR_MIN 0u #define NET_TCP_HDR_OPT_NBR_MAX (NET_TCP_HDR_OPT_SIZE_MAX / NET_TCP_HDR_OPT_SIZE_WORD) #define NET_TCP_HDR_OPT_IX NET_TCP_HDR_SIZE_MIN /*$PAGE*/ /* ********************************************************************************************************* * TCP OPTION CONFIGURATION TYPE DEFINES * * Note(s) : (1) NET_TCP_OPT_CFG_TYPE_&&& #define values specifically chosen as ASCII representations of * the TCP option configuration types. Memory displays of TCP option configuration buffers * will display the TCP option configuration TYPEs with their chosen ASCII names. ********************************************************************************************************* */ /* ---------------- TCP OPT CFG TYPES ----------------- */ #if (CPU_CFG_ENDIAN_TYPE == CPU_ENDIAN_TYPE_BIG) #define NET_TCP_OPT_CFG_TYPE_NONE 0x4E4F4E45u /* "NONE" in ASCII. */ #define NET_TCP_OPT_CFG_TYPE_MAX_SEG_SIZE 0x4D535320u /* "MSS " in ASCII. */ #define NET_TCP_OPT_CFG_TYPE_WIN_SCALE 0x57494E20u /* "WIN " in ASCII (see 'net_tcp.h Note #1c1'). */ #define NET_TCP_OPT_CFG_TYPE_SACK_PERMIT 0x53434B50u /* "SCKP" in ASCII (see 'net_tcp.h Note #1c2'). */ #define NET_TCP_OPT_CFG_TYPE_SACK 0x5341434Bu /* "SACK" in ASCII (see 'net_tcp.h Note #1c2'). */ #define NET_TCP_OPT_CFG_TYPE_ECHO_REQ 0x45524551u /* "EREQ" in ASCII (see 'net_tcp.h Note #1c3'). */ #define NET_TCP_OPT_CFG_TYPE_ECHO_REPLY 0x4543484Fu /* "ECHO" in ASCII (see 'net_tcp.h Note #1c3'). */ #define NET_TCP_OPT_CFG_TYPE_TS 0x54532020u /* "TS " in ASCII (see 'net_tcp.h Note #1c4'). */ #else #if (CPU_CFG_DATA_SIZE == CPU_WORD_SIZE_32) #define NET_TCP_OPT_CFG_TYPE_NONE 0x454E4F4Eu /* "NONE" in ASCII. */ #define NET_TCP_OPT_CFG_TYPE_MAX_SEG_SIZE 0x2053534Du /* "MSS " in ASCII. */ #define NET_TCP_OPT_CFG_TYPE_WIN_SCALE 0x204E4957u /* "WIN " in ASCII (see 'net_tcp.h Note #1c1'). */ #define NET_TCP_OPT_CFG_TYPE_SACK_PERMIT 0x504B4353u /* "SCKP" in ASCII (see 'net_tcp.h Note #1c2'). */ #define NET_TCP_OPT_CFG_TYPE_SACK 0x4B434153u /* "SACK" in ASCII (see 'net_tcp.h Note #1c2'). */ #define NET_TCP_OPT_CFG_TYPE_ECHO_REQ 0x51455245u /* "EREQ" in ASCII (see 'net_tcp.h Note #1c3'). */ #define NET_TCP_OPT_CFG_TYPE_ECHO_REPLY 0x4F484345u /* "ECHO" in ASCII (see 'net_tcp.h Note #1c3'). */ #define NET_TCP_OPT_CFG_TYPE_TS 0x20205354u /* "TS " in ASCII (see 'net_tcp.h Note #1c4'). */ #elif (CPU_CFG_DATA_SIZE == CPU_WORD_SIZE_16) #define NET_TCP_OPT_CFG_TYPE_NONE 0x4F4E454Eu /* "NONE" in ASCII. */ #define NET_TCP_OPT_CFG_TYPE_MAX_SEG_SIZE 0x534D2053u /* "MSS " in ASCII. */ #define NET_TCP_OPT_CFG_TYPE_WIN_SCALE 0x4957204Eu /* "WIN " in ASCII (see 'net_tcp.h Note #1c1'). */ #define NET_TCP_OPT_CFG_TYPE_SACK_PERMIT 0x4353504Bu /* "SCKP" in ASCII (see 'net_tcp.h Note #1c2'). */ #define NET_TCP_OPT_CFG_TYPE_SACK 0x41534B43u /* "SACK" in ASCII (see 'net_tcp.h Note #1c2'). */ #define NET_TCP_OPT_CFG_TYPE_ECHO_REQ 0x52455145u /* "EREQ" in ASCII (see 'net_tcp.h Note #1c3'). */ #define NET_TCP_OPT_CFG_TYPE_ECHO_REPLY 0x43454F48u /* "ECHO" in ASCII (see 'net_tcp.h Note #1c3'). */ #define NET_TCP_OPT_CFG_TYPE_TS 0x53542020u /* "TS " in ASCII (see 'net_tcp.h Note #1c4'). */ #else /* Dflt CPU_WORD_SIZE_08. */ #define NET_TCP_OPT_CFG_TYPE_NONE 0x4E4F4E45u /* "NONE" in ASCII. */ #define NET_TCP_OPT_CFG_TYPE_MAX_SEG_SIZE 0x4D535320u /* "MSS " in ASCII. */ #define NET_TCP_OPT_CFG_TYPE_WIN_SCALE 0x57494E20u /* "WIN " in ASCII (see 'net_tcp.h Note #1c1'). */ #define NET_TCP_OPT_CFG_TYPE_SACK_PERMIT 0x53434B50u /* "SCKP" in ASCII (see 'net_tcp.h Note #1c2'). */ #define NET_TCP_OPT_CFG_TYPE_SACK 0x5341434Bu /* "SACK" in ASCII (see 'net_tcp.h Note #1c2'). */ #define NET_TCP_OPT_CFG_TYPE_ECHO_REQ 0x45524551u /* "EREQ" in ASCII (see 'net_tcp.h Note #1c3'). */ #define NET_TCP_OPT_CFG_TYPE_ECHO_REPLY 0x4543484Fu /* "ECHO" in ASCII (see 'net_tcp.h Note #1c3'). */ #define NET_TCP_OPT_CFG_TYPE_TS 0x54532020u /* "TS " in ASCII (see 'net_tcp.h Note #1c4'). */ #endif #endif /*$PAGE*/ /* ********************************************************************************************************* * TCP CONNECTION TIMEOUT DEFINES * * Note(s) : (1) (a) (1) RFC #1122, Section 4.2.2.13 'DISCUSSION' states that "the graceful close algorithm * of TCP requires that the connection state remain defined on (at least) one end of * the connection, for a timeout period of 2xMSL ... During this period, the (remote * socket, local socket) pair that defines the connection is busy and cannot be reused". * * (2) The following sections reiterate that the TIME-WAIT state timeout scalar is two * maximum segment lifetimes (2 MSL) : * * (A) RFC #793, Section 3.9 'Event Processing : SEGMENT ARRIVES : * Check Sequence Number : TIME-WAIT STATE' * (B) RFC #793, Section 3.9 'Event Processing : SEGMENT ARRIVES : * Check FIN Bit : TIME-WAIT STATE' * * (b) (1) RFC #793, Section 3.3 'Sequence Numbers : Knowing When to Keep Quiet' states that * "the Maximum Segment Lifetime (MSL) is ... to be 2 minutes. This is an engineering * choice, and may be changed if experience indicates it is desirable to do so". * * (2) Microsoft Corporation's Windows XP defaults MSL to 15 seconds. ********************************************************************************************************* */ /* Max seg timeout (see Note #1b) : */ #define NET_TCP_CONN_TIMEOUT_MAX_SEG_MIN_SEC ( 0u ) /* ... min = 0 seconds */ #define NET_TCP_CONN_TIMEOUT_MAX_SEG_MAX_SEC ( 2u * DEF_TIME_NBR_SEC_PER_MIN) /* ... max = 2 minutes */ #define NET_TCP_CONN_TIMEOUT_MAX_SEG_DFLT_SEC ( 15u ) /* ... dflt = 15 seconds */ #define NET_TCP_CONN_TIMEOUT_MAX_SEG_SCALAR 2u /* ... scalar (see Note #1a). */ #define NET_TCP_CONN_TIMEOUT_CONN_DFLT_SEC (120u * DEF_TIME_NBR_SEC_PER_MIN) /* Dflt conn timeout = 120 minutes */ #define NET_TCP_CONN_TIMEOUT_USER_DFLT_SEC ( 30u * DEF_TIME_NBR_SEC_PER_MIN) /* Dflt user timeout = 30 minutes */ /*$PAGE*/ /* ********************************************************************************************************* * TCP CONNECTION STATES * * Note(s) : (1) See the following RFC's for TCP state machine summary : * * (a) RFC # 793; Sections 3.2, 3.4, 3.5, 3.9 * (b) RFC #1122; Sections 4.2.2.8, 4.2.2.10, 4.2.2.11, 4.2.2.13, 4.2.2.18, 4.2.2.20 * * (2) (a) #### Additional closing-data-available state used for closing connections to allow the * application layer to receive any remaining data. * * See also 'net_tcp.c NetTCP_RxPktConnHandlerFinWait1() Note #2f5A2', * 'net_tcp.c NetTCP_RxPktConnHandlerFinWait2() Note #2f5B', * 'net_tcp.c NetTCP_RxPktConnHandlerClosing() Note #2d2B2a1B', * & 'net_tcp.c NetTCP_RxPktConnHandlerLastAck() Note #2d2A1b'. ********************************************************************************************************* */ #define NET_TCP_CONN_STATE_NONE 0u #define NET_TCP_CONN_STATE_FREE 1u #define NET_TCP_CONN_STATE_CLOSED 10u #define NET_TCP_CONN_STATE_LISTEN 20u #define NET_TCP_CONN_STATE_SYNC_RXD 30u #define NET_TCP_CONN_STATE_SYNC_RXD_PASSIVE 31u #define NET_TCP_CONN_STATE_SYNC_RXD_ACTIVE 32u #define NET_TCP_CONN_STATE_SYNC_TXD 35u #define NET_TCP_CONN_STATE_CONN 40u #define NET_TCP_CONN_STATE_FIN_WAIT_1 50u #define NET_TCP_CONN_STATE_FIN_WAIT_2 51u #define NET_TCP_CONN_STATE_CLOSING 52u #define NET_TCP_CONN_STATE_TIME_WAIT 53u #define NET_TCP_CONN_STATE_CLOSE_WAIT 55u #define NET_TCP_CONN_STATE_LAST_ACK 56u #define NET_TCP_CONN_STATE_CLOSING_DATA_AVAIL 59u /* See Note #2a. */ /* ********************************************************************************************************* * TCP CONNECTION QUEUE STATES ********************************************************************************************************* */ #define NET_TCP_RX_Q_STATE_NONE 0u #define NET_TCP_RX_Q_STATE_CLOSED 100u #define NET_TCP_RX_Q_STATE_CLOSING 101u #define NET_TCP_RX_Q_STATE_SYNC 110u #define NET_TCP_RX_Q_STATE_CONN 111u #define NET_TCP_TX_Q_STATE_NONE 0u #define NET_TCP_TX_Q_STATE_CLOSED 200u #define NET_TCP_TX_Q_STATE_CLOSING 201u #define NET_TCP_TX_Q_STATE_SYNC 210u #define NET_TCP_TX_Q_STATE_CONN 211u #define NET_TCP_TX_Q_STATE_SUSPEND 215u #define NET_TCP_TX_Q_STATE_CLOSED_SUSPEND 220u #define NET_TCP_TX_Q_STATE_CLOSING_SUSPEND 221u /*$PAGE*/ /* ********************************************************************************************************* * TCP CONNECTION CODE DEFINES **************
上传时间: 2015-11-22
上传用户:the same kong
SharpMap是一个基于.net 2.0使用C#开发的Map渲染类库,可以渲染各类GIS数据(目前支持ESRI Shape和PostGIS格式),可应用于桌面和Web程序。 它的优点有: 1、占用资源较少,响应比较快。在对于项目中如果只需要简单的地图功能的话,是一个比 较好的选择 。 2、它是基于.NET 2.0环境下开发的,对于.NET环境支持较好。 3、使用简单,只要在.NET项目中引用相应的dll文件即可,没有复杂的安装步骤。 支持B/S及C/S两种方式的DLL调用,支持地图渲染效果 SharpMap最新版基于.NET Framework 4,采用C#开发的地图渲染引擎,非常易于使用。我这次给出的是比较稳定发布的V1.0版本和demo。
上传时间: 2018-01-09
上传用户:mawenyao
#include <stdio.h> #include <stdlib.h> ///链式栈 typedef struct node { int data; struct node *next; }Node,*Linklist; Linklist Createlist() { Linklist p; Linklist h; int data1; scanf("%d",&data1); if(data1 != 0) { h = (Node *)malloc(sizeof(Node)); h->data = data1; h->next = NULL; } else if(data1 == 0) return NULL; scanf("%d",&data1); while(data1 != 0) { p = (Node *)malloc(sizeof(Node)); p -> data = data1; p -> next = h; h = p; scanf("%d",&data1); } return h; } void Outputlist(Node *head) { Linklist p; p = head; while(p != NULL ) { printf("%d ",p->data); p = p->next; } printf("\n"); } void Freelist(Node *head) { Node *p; Node *q = NULL; p = head; while(p != NULL) { q = p; p = p->next; free(q); } } int main() { Node *head; head = Createlist(); Outputlist(head); Freelist(head); return 0; } 2.顺序栈 [cpp] view plain copy #include <iostream> #include <stdio.h> #include <stdlib.h> ///顺序栈 #define MaxSize 100 using namespace std; typedef
上传时间: 2018-05-09
上传用户:123456..
VIP专区-嵌入式/单片机编程源码精选合集系列(20)资源包含以下内容:1. tcp,ip,udp,ethernet等等的源程序.2. 使用iccavr的例子.3. 嵌入式系统启动代码.4. 编程修改网卡mac地址的方法.5. 用于IIC编程的文件.6. msp430 串口模拟程序.7. LCD多级菜单演示.8. 开发UC/GUI用的字体转换工具..9. phillips usb d12的应用程序.10. 飞利浦D12的区动安装及应用程序.11. OCM4X8C驱动 作者:孙新虎 sunxinhu@163.com 日期:200412.12. 面向实时嵌入式系统的GUI源代码.13. c语言写的一个多任务内核.14. 澳洲人写的Cortex,包括uC_IP协议栈.15. 通用数据采集系统成品,带论文的..16. 通用93c06-93c86系列C程序.17. vfd屏C语言驱动程序.18. eb55评估板例程 for ads.19. eb55板子例程for ads.20. eb55评估板例程for ads.21. eb55评估板例程for ads.22. TCPIP协议栈的实现.23. 字体显示.画点阵等嵌入式.24. 自动寻迹机器人的设计材料.25. PIC16c84编程器的制作资料.26. Porting VxDs from Windows 3 to Windows 95.27. 热电偶多路温度检测仪.28. avr用的jtag的例子.29. 这个使用usb的avr jtag ice的例子,同样有sch和pcb.30. win CE .net Serial port class lib.31. 5项步进电机驱动程序C96语言.32. 液晶z1602驱动程序(C语言).33. 位图转pcb 图.34. 步进电机驱动器的介绍.35. 用1543做数据采集的程序.36. r&s是一个可裁剪的抢先式实时内核.37. 386ex初始化程序。使用中断、定时器、串口。.38. AMI 主板的BIOS源码。.39. avr mega8 ad 数据采集源程序.40. avr mega8 使用计算机键盘的源程序.
标签: 模具设计
上传时间: 2013-05-30
上传用户:eeworm
VIP专区-嵌入式/单片机编程源码精选合集系列(39)资源包含以下内容:1. 这是有关SPI总线的一段读写程序.2. 这是一段MAX7219的驱动C51源程序.3. 利用msp430的通用I/O端口模拟I2c协议的源代码.4. 超级下载软件(progisp ver1.1)包括并口下载器与usb isp下载器的详细制作资料.5. MCS51产单片机上实现的tcp/ip,很全的哦,需要的可以参考一下..6. 嵌入式系统图形用户界面编程.7. 05嵌入式大会的部分演讲稿.8. 51系列对CH375模块读写.9. test for boundary scan and CPLD ics..10. 这是我个人再学习ARM7s3c2410的 时候用到的试验代码.11. 本人水品有限.12. 是在不好意思.13. 入门试验代码.14. pxros的使用说明.15. 在NIOS中利用C语言模拟I2C总线时序.16. ALTERA NIOS处理器实验.17. ALTERA NIOS处理器实验.18. ALTERA NIOS处理器实验.19. ALTERA NIOS处理器实验.20. ALTERA NIOS处理器实验.21. 随着高性能计算的需求.22. ADS1.2是一个使用方便的集成开发环境.23. AVR单片机嵌入式操作系统原代码.24. 有关rtos的书.25. 重要的汇编语言编程......和大家一起分享.26. AT91M55800A材料-BasicTimer.27. I2c代码.28. WINDOWS系统下灰度的BMP图片转换成黑白图片..29. 在WINDOWS CE.NET 系统中读RDP连接的用户名的密码..30. 嵌入式实时操作系统μCOS-在ARM上的移植应用.31. 在s3c44b0x运行的俄罗斯方块游戏 DOS参考代码.32. uCOS-II在C51下的一个完整的LCD项目源码.33. 石子归并问题:在一个圆形操场的四周摆放着N堆石子(N<= 100),现要将石子有次序地合并成一堆.规定每次只能选取相邻的两堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分.编一程序,由.34. 单片机及嵌入式系统web实现的文章 很好的:MCU应用系统与Internet连接的一种新技术.35. 单片机发展趋势的文章: 从Cygnal C8051F看8位单片机发展之路 好.36. usb host在ARM7上的实现.37. 对arm300的一些简单的试验做了详细地说明和讲解.38. arm技术手册.39. arm7上开发usb的文档,说得非常好.40. 一个关于s1d13806的应用程序.
上传时间: 2013-04-15
上传用户:eeworm
VIP专区-嵌入式/单片机编程源码精选合集系列(68)资源包含以下内容:1. 2.4G无线芯片NRF24L01的控制程序.2. nios32指令手册.3. SOPC学习板原理图,可以自己DIY一个开发板.4. 嵌入式处理器.5. Linux环境.6. Linux 系统中.7. irda-utils-0.9.18.tar.gz Linux系统中.8. pcmcia-cs-3.2.7.9. 红外通信工具 EVC下的Windows CE红外通信编程实例.10. 将NiosII程序下载到Flash的方法(Step_by_step).11. NIOS 设计从入门到精通 www.sopc.net.cn.12. EM78P153源代码,含24C02,I2C,以及1418FM发射模块控制部分!.13. 摩托罗拉的脉冲信号输出的原代码.14. 摩托罗拉的时钟的原代码.15. 基于CH375的USB数据采集应用程序,上位机VB.16. 三星公司评估板2440的原理图,包含了所有的外围器件的原理图.比较详细.17. MSP430F169+LCD原理图.18. 各种器件的驱动程序.19. Protel原理图需要的Xilinx元件库.20. 本人收集的在protel99下运行的常用元器件的封装库.21. sch是原理图 7920的驱动程序 avr128.22. 是完成从00到99计数的汇编程序生成文件.23. 节点是网络系统的基本控制单元.24. 基于NIOSII的UART的原代码.25. Globus Toolkit 4编程指南 是关于网格计算中最通用的软件GLOBUS工具箱第4版的使用详解.26. CPLD 一个简单程序 希望大家喜欢.27. this a book about cpld fpga developmen,it is very useful for eda development.28. 一个电表的程序.29. 此电路为计时器电路设计原理图.30. 此电路为考勤机电路设计原理图.31. DSP抽样程序,TMS320VC5402,CCSga.32. 这是一个PCI9820CAN通信卡通信控制程序.33. IAR Embedded Workbench下编译的sst25lf080a操作的MSP430程序包括串口通讯.34. 周边报警的报警控制程序需要的爱好者来下载吧.35. Lakey这是一个免费的CW练习/收/发软件.36. HPI与PC相通信的源代码 喜欢DSP的爱好者快来看看吧.37. arm的地址结构fe分析。arm加载和运行空间地址分配详细指导。.38. arm7 lpc2103 的keil 程序开发包 非常有参考价值.39. vxworks下ppp的实现源码.40. vworks 下wlan的实现代码.
标签: 螺纹
上传时间: 2013-05-26
上传用户:eeworm
VIP专区-嵌入式/单片机编程源码精选合集系列(88)资源包含以下内容:1. 计算机并口转3路串行DA的DLL源码及电路,芯片MAX541/MAX5541,可以免费申请,8路I/O输出,5路输入,并口的简单极限应用.经使用各项性能不错,就是DA抗干扰较差,没有较大的电磁干扰运行.2. arm9上测试串口代码.3. I2C controller verilog code for altera fpga platform..4. sigma-delta ADC轉換之matlab模型.5. NiosII的Flash编程指南(www.sopc.net.cn).6. 楼宇门禁对讲机主机原理图.7. 开发环境.8. 开发环境WAVE6000.9. vb环境下用动态规划方法编的0/1背包问题.10. 该实验设计模60计数器.11. 嵌入式课程设计 页面置换算法模拟 列出缺页缺页次数和缺页率.12. DSP系列中的TMS320F2812 ADC范例程序.13. TMS320F2812 GPIO_input范例程序.14. TMS320F2812 SPI_FFDLB范例程序.15. 指令集模拟器.16. s3c44b0x的一些相关芯片资料,是官方的pdf格式,很有用.17. 大屏320240的C语言测试程序,已验证通过,请放心使用.18. 最新火热的CX32 源代码.19. 关于台湾新茂SM5964 I2C的程序.20. gps开发专用的源代码.21. Moore型状态机设计,基于VHDL.能够根据微处理器的读写周期,分别对应存储器输出写使能WE和读使能OE信号..22. 文介绍一款用AT89C51和串行ROM 制作的电子密码锁.23. 总线控制器 altera提供的FPGA源代码.24. bios嵌入DOS操作系统,可以先编译romos.asm制作成BIN文件,加载至BIOS的ISA模块.另外还有制作工具.25. wt89c51 watch dog proce.26. 瑞萨H8系列芯片内置rom读写测试.27. Opencore提供的I2C代码.28. 译码器的逻辑功能是将已赋予特定含义的一组二进制输入代码的原意"翻译"出来,变成对应的输出高低电平信号.该程序为3-8译码器.基于VHDL,其开发环境是MAXPLUS2..29. 驱动SOLOMON的SSD182.30. 驱动三星的KS0107/KS0108.31. 驱动ULTRCHIP的UC1682.32. 是一个带PROTEUS仿真的8路数字电压表.33. SSD3的练习6的答案.快期末考试了.34. S3C2410A 的存储器控制器提供访问外部存储器所需要的存储器控制信号。 S3C2410A 的存储器控制器有以下的特性:.35. 这是一个三星44b0的中文文档.36. 这个arm7嵌入式蕊版的起动代码.37. 这个代码是用ADS1.2平台开发的一个mp3播放器。.38. 该程序能够对信号进行OFDM处理.39. 在网上看见很多人用DM413.40. 介绍了CPCI总线及快速、低功耗模数转换器件AD976的主要特点.
上传时间: 2013-06-18
上传用户:eeworm
VIP专区-嵌入式/单片机编程源码精选合集系列(128)资源包含以下内容:1. 嵌入式数据库sqlite 3.5.9的文档.2. 嵌入式开发圣经.3. Zlg_IP软件包,对初学网络的朋友不错的源代码.4. 单个ds18b20温度4 位LED显示 源程序+protues仿真.5. arm 的bootload 源码 是s344b0x.6. arm 系统的bootloader 起始加载的代码.7. t6963控制器 液晶显示程序.8. cc2420的头文件相关cc2420的介绍和使用过程.9. 自己写的iic配置芯片的源程序.10. tft4267的驱动程序,里面还带有显示几张图片的范例程序.11. 周立功的文件系统源代码,需要配合底层驱动程序使用.12. 自己编写的linux下的i2c驱动程序,是基于lpc2200编写的,已经测试ok.13. 基于凌阳单片机SPCE061A的PWM电机控制.14. 异步电动机直接转矩控制基本原理 doc文档.15. 2004-12-31(校)电气符号00DX001.dwg cad图纸.16. 编写程序方式的参考资料_华为公司的编程规范.17. matlab的gui:创建图形用户界面的gui.18. 周立功的 I2C驱动,,适合ADS1.2调试环境,源码.19. 这个文件是简易数字存储示波器的全部输出程序.20. s3c 2440 vivi源代码.21. egui 嵌入式图形系统.22. 1)兼容FAT16文件系统.23. 关于设计CCFL的论文.24. 我是自己编的可设置时间的闹钟.25. X5045读写程序:包括看门狗功能.26. 《数字电子技术基础》习题答案(阎石第四版).27. 嵌入式系统的C程序设计,很清楚.28. Give folders full access to account ASP.Net. Folders names are: ProMatrix.Lib and ProMatrix.TestCont.29. ldpcLDPC码原理与应用_文红 符初生 周亮.30. MCU测试程序.31. 最简单的DS1302的电子钟,包含仿真原理图和编译好的16进制文件.32. 51系列单片机在使用时.33. 本文讲述了如何提高c++代码的质量以及一些号的编程习惯.34. 单片机课程设计,编写电脑时钟的源代码,有详细的流程图和解释,上传给有需要的朋友分享!.35. 最近收集的一些CPLD的文章.36. 基于CPLD的路灯控制系统论文.37. pcf8563的中文技术资料,不知道具体上载到哪儿,因此放入其他类中,希望对大家有所帮助.38. 基于51单片机设计的实时温度程序.39. 用3310显示温度与数字钟.40. 用51单片机设计的歌曲播放.
上传时间: 2013-05-22
上传用户:eeworm
资源包含以下内容:1.三菱PLC A系列 AD 变换模块A1S68AD.pdf2.三菱PLC A系列 CPU模块Q2ASCPU.pdf3.三菱PLC A系列 DA 变换模块A1S62DA .pdf4.三菱PLC A系列 GPPWLLT编程调试程序.pdf5.三菱PLC A系列 Io link 网络系统模块A1SJ51T64.pdf6.三菱PLC A系列 QnACPU 编程参考.pdf7.三菱PLC A系列 Q系列 CC-LINK网络系统.pdf8.三菱PLC A系列 余CPU模块Q4ARCPU.pdf9.三菱PLC A系列 模拟输入输出模块A1S66ADA.pdf10.三菱PLC A系列 热电偶温度数字变化模块A1S68TD .pdf11.三菱PLC A系列 网络系统.pdf12.三菱PLC A系列 网络系统设置.pdf13.三菱PLC A系列 远程网络篇.pdf14.三菱PLC A系列 高速记数模块A1SD62.pdf15.三菱PLC FX-20P-E手持编程器操作手册.pdf16.三菱PLC FX1N使用手册.pdf17.三菱PLC FX1S,FX1N,FX2N,FX2NC系列编程手册.pdf18.三菱PLC FX2N-10GM和20GM硬件、编程手册.pdf19.三菱PLC FX2N-10PG用户手册.pdf20.三菱PLC FX2N-2LC温度控制模块用户手册.pdf21.三菱PLC FX2N-5A特殊功能模块用户手册.pdf22.三菱PLC FX2N使用手册.pdf23.三菱PLC FX3U FX3UC编程手册(基本)应用指令说明书.pdf24.三菱PLC FX3UC使用手册(硬件篇).pdf25.三菱PLC FX3U·FX3UC用户手册(定位控制篇).pdf26.三菱PLC FX3U·FX3UC用户手册(模拟量控制篇).pdf27.三菱PLC FX3U硬件手册.pdf28.三菱PLC FX中文文字版002.pdf29.三菱PLC FX系列特殊功能模块手册b.pdf30.三菱PLC FX系列特殊功能模块用户手册.pdf31.三菱PLC FX通讯用户手册.pdf32.三菱PLC QCPU用户手册(功能解说-程序基础篇).pdf33.三菱PLC QCPU(Q系列)QnACPU编程手册(PID控制指令篇).pdf34.三菱PLC QCPU-QnACPU 编程手册(SFC 控制指令篇).pdf35.三菱PLC Q系列 +series+temperature+control+module+user+manual.pdf36.三菱PLC Q系列 CC-LinK Safety系统 主站模块 详细篇.pdf37.三菱PLC Q系列 CC-LINK SAFETY系统远程Io模块 详细篇.pdf38.三菱PLC Q系列 CC-Link数字模拟变换模块.pdf39.三菱PLC Q系列 CC-Link本地站模块.pdf40.三菱PLC Q系列 CC-link系统主站本地站模块用户手册.pdf41.三菱PLC Q系列 CC-link系统小型IO模块用户手册(详细篇).pdf42.三菱PLC Q系列 CC-Link远程IO模块.pdf43.三菱PLC Q系列 CPU 功能解说 程序基础.pdf44.三菱PLC Q系列 Fl net(OPCN-2)接口模块用户手册.pdf45.三菱PLC Q系列 GX comfinurator-DP Version.pdf46.三菱PLC Q系列 G网络系统 控制网络篇.pdf47.三菱PLC Q系列 H网络系统 plc至plc网络.pdf48.三菱PLC Q系列 IO模块用户手册.pdf49.三菱PLC Q系列 manual list price 2005-07.pdf50.三菱PLC Q系列 MELSEC通讯协议用户手册.pdf51.三菱PLC Q系列 MES接口模块.pdf52.三菱PLC Q系列 PROFIBUS-DP从站模块.pdf53.三菱PLC Q系列 PROFIBUS-DP接口模块(详细篇).pdf54.三菱PLC Q系列 Q62DA,Q64DA,Q68DAI,Q68DAV用户手册.pdf55.三菱PLC Q系列 Q62HLC用户手册.pdf56.三菱PLC Q系列 Q64RD 热电阻输入模块用户手册.pdf57.三菱PLC Q系列 Q66DA-G用户手册(详细篇).pdf58.三菱PLC Q系列 QCPU+Users+Manual(Hardware+Design).pdf59.三菱PLC Q系列 QCPU用户手册(多CPU系统).pdf60.三菱PLC Q系列 QD62,QD62D,QD62E用户参考手册.pdf61.三菱PLC Q系列 QD70定位模块用户手册.pdf62.三菱PLC Q系列 QD72P3C3型内置计数器功能定位模块 详细篇.pdf63.三菱PLC Q系列 QD75P定位模块用户手册(硬件篇).pdf64.三菱PLC Q系列 QD75P定位模块用户手册(详细篇).pdf65.三菱PLC Q系列 QJ61CL12用户手册(详细篇).pdf66.三菱PLC Q系列 QJ71PB92D用户手册(详细篇).pdf67.三菱PLC Q系列 QJ71PB93D用户手册.pdf68.三菱PLC Q系列 QJ71WS96用户手册(详细篇).pdf69.三菱PLC Q系列 QnACPU编程手册 公共指令.pdf70.三菱PLC Q系列 QnACPU编程手册(PID控制指令篇).pdf71.三菱PLC Q系列 QnAprogram(add).pdf72.三菱PLC Q系列 QnA编程手册.pdf73.三菱PLC Q系列 QnPRHCPU用户手册冗余系统篇.pdf74.三菱PLC Q系列 QnPRHCPU编程手册(过程控制指令).pdf75.三菱PLC Q系列 QS CPU 功能解说 程序基础篇.pdf76.三菱PLC Q系列 QS CPU 硬件设计 维护点检篇.pdf77.三菱PLC Q系列 QSCPU公共指令篇.pdf78.三菱PLC Q系列 Q基本模式CPU硬件设计保养.pdf79.三菱PLC Q系列 Q系列H网主-从站使用手册.pdf80.三菱PLC Q系列 Q系列I-O模块使用手册.pdf81.三菱PLC Q系列 Q系列MELSECNETH网络系统参考手册(远程IO网络).pdf82.三菱PLC Q系列 Q系列MELSECNETH远程IO模块.pdf83.三菱PLC Q系列 Q高性能CPU功能解说程序基础.pdf84.三菱PLC Q系列 SW0IVNT-CSKP通信包入门手册.pdf85.三菱PLC Q系列 以太网模块基础.pdf86.三菱PLC Q系列 以太网模块用户手册(web功能篇).pdf87.三菱PLC Q系列 以太网(应用篇).pdf88.三菱PLC Q系列 冗余系统用户手册.pdf89.三菱PLC Q系列 基本模式CPU功能解说程序基础篇.pdf90.三菱PLC Q系列 多通道高速计数器模块 详细篇.pdf91.三菱PLC Q系列 安全应用程序指南.pdf92.三菱PLC Q系列 定位模块QD75P QD75D详细篇.pdf93.三菱PLC Q系列 数模转换模块.pdf94.三菱PLC Q系列 模数转换模块 用户手册.pdf95.三菱PLC Q系列 模数转换模块.pdf96.三菱PLC Q系列 温度控制模块用户手册.pdf97.三菱PLC Q系列 热电偶输入模块 通道绝缘形型电偶 微电压输入模块.pdf98.三菱PLC Q系列 类串行口通信模块 应用篇.pdf99.三菱PLC Q系列 编程手册(SFC).pdf100.三菱PLC Q系列 通信协议.pdf101.三菱PLC Q系列 高速计数器模块.pdf102.三菱PLC Q系列(硬件设计维护点检篇).pdf103.三菱PLC Q系类 串行口通信模块 基础篇.pdf104.三菱PLC X2N-16CCL-M和FX2N-32CCL CC-Link主站模块和接口模块用户手册.pdf105.三菱PLC X3U用户手册(硬件手册).pdf106.伺服电机使用手册Vol.2.pdf107.运动控制器(实模式).pdf108.运动控制器(虚模式).pdf109.运动控制器使用手册SFC编程手册.pdf110.运动控制器用户手册.pdf111.三菱PLC A系列、FX系列、Q系列资料合集
标签: 激光
上传时间: 2013-04-15
上传用户:eeworm
C# 与NET技术平台实战演练
标签: NET
上传时间: 2013-07-23
上传用户:eeworm