📄 eth.lst
字号:
C51 COMPILER V7.06 ETH 12/04/2007 13:46:19 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE ETH
OBJECT MODULE PLACED IN eth.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE eth.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include "ne2000.h"
2 #include "arp.h"
3 #include "ip.h"
4 #include "cp2200.h"
5 #include <stdio.h>
6 extern union NetNode xdata myNode;
7 void eth_send (INT8U xdata * outbuf,union ethernet_address_type hwaddr,INT16U proto_cal, INT16U len)
8 {
9 1 INT8U i;
10 1 ethernet_head xdata * eth;
11 1 eth=(ethernet_head xdata *)outbuf;
12 1 for(i=0;i<6;i++)
13 1 {
14 2 eth->sourcenodeid[i]=myNode.node.mac[i];
15 2 eth->destnodeid[i]=hwaddr.bytes[i];
16 2 }
17 1 eth->protocal=proto_cal;
18 1 CP220x_Send(outbuf, len+14);
19 1
20 1 }
21 void eth_rcve(const INT8U xdata * inbuf)
22 {
23 1 INT16U protol;
24 1 INT8U i;
25 1 ethernet_head xdata * eth;
26 1 union ethernet_address_type xdata rx_hwaddr;
27 1 eth=(ethernet_head xdata * )inbuf;
28 1 protol=eth->protocal;
29 1 for(i=0;i<6;i++)
30 1 rx_hwaddr.bytes[i]=eth->sourcenodeid[i];
31 1 switch(protol)
32 1 {
33 2 case ARP_PACKET:
34 2 arp_rcve(inbuf);
35 2 break;
36 2 case IP_PACKET:
37 2 ip_rcve(inbuf,rx_hwaddr);
38 2 break;
39 2 default:
40 2 break;
41 2 }
42 1 }
43
44
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 208 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- 6
PDATA SIZE = ---- ----
DATA SIZE = ---- 14
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILER V7.06 ETH 12/04/2007 13:46:19 PAGE 2
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -