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

📄 供暖控制_ip协议.h

📁 用MSP430汇编写的简单IP协议程序
💻 H
字号:
;******************************************************************************
;该头文件中定义了所有关于TCP/IP协议栈的变量和参数          
;               TCP_IP协议栈.h       Dying  V1.0版
;******************************************************************************
;
;应用层包括协议:
;SMTP、NIS、NFS、HTTP、LPD、Telnet等等
;传输层包括协议:
;TCP、UDP
;网络层包括协议:
;IP、ICMP、IGMP、RIP、EGP、OSPF
;链路层:
;ARP、RARP

;注:
;   本程序中包括TCP/IP协议的ARP、IP、TCP、UDP、ICMP协议
;   本程序中内存的定义都是以IP首部为20个字节定义的 

;-----------------------------------------------------------------------
;协议类型
MACType_IP              EQU     0008H           ;IP类型为0800H
MACType_ARP             EQU     0608H           ;ARP类型为0806H
MACType_RARP            EQU     3508H           ;RARP类型为0835H

ARP_Request             EQU     0100H           ;ARP请求类型
ARP_Answer              EQU     0200H           ;ARP应答类型

Protocol_ICMP           EQU     01H             ;1               
Protocol_TGMP           EQU     02H             ;2
Protocol_TCP            EQU     06H             ;6 
Protocol_UDP            EQU     11H             ;17

IP_VER_IHL              EQU     45H             ;IPv4, Header Length = 5x32 bit
IP_TOS_D                EQU     00H             ;TOS defule
IP_TOS_T                EQU     08H             ;TOS high throughput
IP_TOS_R                EQU     04H             ;TOS high reliability

NetGatePort             EQU     08F04H          ;是1167        
MyConfigPort            EQU     09004H          ;是1168

MyselfPort        EQU    09004H

MyWorkPort              EQU     0B507H          ;是1973

;******************************************************************************
;MAC层数据格式定义
MACHeadData             DS      0
MACHead_Status          DS      1
MACHead_NextPackerPoint DS      1
MACHead_ByteCount       DS      0
MACHead_ByteCount0      DS      1
MACHead_ByteCount1      DS      1
EthernetFrameData       DS      0
MACDestinationUDS       DS      6
MACResourceUDS          DS      6
MACType                 DS      2   
MACProtocolData         DS      150  
MACPRotocolDataEnd      DS      0
;******************************************************************************
;ICMP首部数据定义
ICMP_IP_VarAndLength    EQU     MACProtocolData+0
ICMP_IP_TOS             EQU     MACProtocolData+1    
ICMP_IP_ByteLength      EQU     MACProtocolData+2    
ICMP_IP_Identification  EQU     MACProtocolData+4     
ICMP_IP_FlagAndPoint    EQU     MACProtocolData+6     
ICMP_IP_LiveTime        EQU     MACProtocolData+8     
ICMP_IP_ProtocolType    EQU     MACProtocolData+9     
ICMP_IP_HeaderCheckSum  EQU     MACProtocolData+10    
ICMP_IP_ResourceIP      EQU     MACProtocolData+12     
ICMP_IP_DestinationIP   EQU     MACProtocolData+16                  

ICMP_MessageType        EQU     MACProtocolData+20
ICMP_MessageCode        EQU     MACProtocolData+21
ICMP_MessageCheckSum    EQU     MACProtocolData+22
ICMP_Data               EQU     MACProtocolData+24
ICMP_End                EQU     MACPRotocolDataEnd

UDP_Rec_SourcePort      EQU     MACProtocolData+20
UDP_Rec_DestinationPort EQU     MACProtocolData+22
UDP_Rec_Length          EQU     MACProtocolData+24
UDP_Rec_CheckSum        EQU     MACProtocolData+26
;------------------------------------------------------------------------------
;ARP数据格式定义
ARP_HardwareType        EQU     MACProtocolData+0            ;
ARP_ProtocolType        EQU     MACProtocolData+2            ;
ARP_HardwareLength      EQU     MACProtocolData+4            ;
ARP_ProtocolLength      EQU     MACProtocolData+5            ;
ARP_OP                  EQU     MACProtocolData+6            ;
ARP_TransmitUDS         EQU     MACProtocolData+8            ;
ARP_TransmitIP          EQU     MACProtocolData+14           ;
ARP_ReceiveUDS          EQU     MACProtocolData+18           ;
ARP_ReceiveIP           EQU     MACProtocolData+24           ;
ARP_End                 EQU     MACProtocolData+28           ;

;******************************************************************************
;IP数据的MAC层数据格式定义
IP_EthernetFrameData    DS      0
IP_MACDestinationUDS    DS      6
IP_MACResourceUDS       DS      6
IP_MACType              DS      2   
IP_MACProtocolData      DS      0
;-----------------------------------------------------------------------------
;IP数据格式定义
IP_VarAndLength         DS      1
IP_TOS                  DS      1
IP_ByteLength           DS      2
IP_Identification       DS      2
IP_FlagAndPoint         DS      2
IP_LiveTime             DS      1
IP_ProtocolType         DS      1
IP_HeadCheckSum         DS      2
IP_ResourceIP           DS      4
IP_DestinationIP        DS      4
IP_Options              DS      0
IP_Data                 DS      20
IP_End                  DS      0
                        DS      4
;******************************************************************************
;UDP首部数据定义
UDP_ResourcePort        EQU     IP_Data+0
UDP_DestinationPort     EQU     IP_Data+2
UDP_DataLength          EQU     IP_Data+4
UDP_CheckSum            EQU     IP_Data+6
UDP_Data                EQU     IP_Data+8
UDP_End                 EQU     IP_End

;******************************************************************************
;TCP首部数据定义
TCP_ResourcePort        EQU     IP_Data+0
TCP_DestinationPort     EQU     IP_Data+2
TCP_Sequence            EQU     IP_Data+4
TCP_Acknowledgement     EQU     IP_Data+8
TCP_HeaderLength        EQU     IP_Data+12              ;高4位有效
TCP_FlagBit             EQU     IP_Data+13              ;低6位有效
TCP_WindowLength        EQU     IP_Data+14
TCP_CheckSum            EQU     IP_Data+16
TCP_ExigencePoint       EQU     IP_Data+18
TCP_Options             EQU     IP_Data+20
TCP_Data                EQU     IP_Data+20
TCP_End                 EQU     IP_End

;TCP标志位定义
#define TCP_Flag_URG            20H,&TCP_FlagBit
#define TCP_Flag_ACK            10H,&TCP_FlagBit
#define TCP_Flag_PSH            08H,&TCP_FlagBit
#define TCP_Flag_RST            04H,&TCP_FlagBit
#define TCP_Flag_SYN            02H,&TCP_FlagBit
#define TCP_Flag_FIN            01H,&TCP_FlagBit

;******************************************************************************

;共156个字节

⌨️ 快捷键说明

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