📄 rtl8019as_tcp_m128.h
字号:
#ifndef __RTL8019AS_TCP_M128_H
#define __RTL8019AS_TCP_M128_H
#include <macros.h>
#include <iom16v.h>
//******************************************************************
//* TCP Header Layout
//******************************************************************
#define TCP_srcport 0x22 //TCP source port
#define TCP_destport 0x24 //TCP destination port
#define TCP_seqnum 0x26 //sequence number
#define TCP_acknum 0x2A //acknowledgement number
#define TCP_hdrflags 0x2E //4-bit header len and flags
#define TCP_window 0x30 //window size
#define TCP_cksum 0x32 //TCP checksum
#define TCP_urgentptr 0x34 //urgent pointer
#define TCP_data 0x36 //option/data
//******************************************************************
//* TCP Flags
//* IN flags represent incoming bits
//* OUT flags represent outgoing bits
//******************************************************************
#define FIN_IN (packet[TCP_hdrflags+1] & 0x01)
#define SYN_IN (packet[TCP_hdrflags+1] & 0x02)
#define RST_IN (packet[TCP_hdrflags+1] & 0x04)
#define PSH_IN (packet[TCP_hdrflags+1] & 0x08)
#define ACK_IN (packet[TCP_hdrflags+1] & 0x10)
#define URG_IN (packet[TCP_hdrflags+1] & 0x20)
#define FIN_OUT packet[TCP_hdrflags+1] |= 0x01 //00000001
#define SYN_OUT packet[TCP_hdrflags+1] |= 0x02 //00000010
#define RST_OUT packet[TCP_hdrflags+1] |= 0x04 //00000100
#define PSH_OUT packet[TCP_hdrflags+1] |= 0x08 //00001000
#define ACK_OUT packet[TCP_hdrflags+1] |= 0x10 //00010000
#define URG_OUT packet[TCP_hdrflags+1] |= 0x20 //00100000
//******************************************************************
//* TELNET SERVER BANNER STATEMENT CONSTANT
//******************************************************************
char const telnet_banner[] = {"\r\nEasy Ethernet AVR>"};
/*
//******************************************************************
//* AVR RAM Definitions
//******************************************************************
unsigned char aux_data[20]; //tcp received data area
unsigned int tcpdatalen_in;
unsigned int tcpdatalen_out;
unsigned char flags;
unsigned int cntr;
unsigned char byteout;
//******************************************************************
//* Flags
//******************************************************************
#define hexflag 0x04 //00000100
//******************************************************************
//* RTL8019AS PIN MACROS
//******************************************************************
#define set_le_pin iorwport |= LE_pin
#define clr_le_pin iorwport &= ~LE_pin
#define clr_hex flags &= ~hexflag
#define latchdata set_le_pin; \
delay_us(1); \
clr_le_pin;
*/
void application_code(void);
void tcp(void);
void assemble_ack(void);
void send_tcp_packet(void);
void readwrite(void);
void show_regs(void);
void dump_header(void);
void cls(void);
void show_packet(void);
void show_aux_packet(void);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -