📄 main.lst.svn-base
字号:
C51 COMPILER V7.06 MAIN 07/24/2007 16:32:57 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN E:\NETBRO~1\TRUNK\NETBRO~1\VW\MAIN.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE E:\NETBRO~1\TRUNK\NETBRO~1\VW\MAIN.C DB SB OE
stmt level source
1 #include <reg51.h>
2 #include <stdio.h>
3 #include "config.h"
4 #include "GloblDef.h"
5 #include "TCPIPmem.h"
6 #include "RTL8019.h"
7 #include "IP.h"
8 #include "etherif.h"
9 #include "ARP.h"
10 #include "Netif.h"
11 #include "ICMP.h"
12 #include "TCP.h"
13 //#include "UDP.h"
14 //#include "I2C.h"
15 //#include "w77e58.h"
16 #include <absacc.h>
17
18
19 unsigned char data gTemp;
20 //static unsigned char xdata EtherAddr[6] = MACAddr;
21
22 /******************************************************************************
23 函数:Delay()
24 功能:延时chDelay ms
25 参数:
26 unsigned char chDelay:要延时的时长,<=255MS
27 返回:无
28 说明:请根据具体情况调整延时值
29 ******************************************************************************/
30 void delay(unsigned int iDly)
31 {
32 1 unsigned char chTmpIn;
33 1 unsigned int iTmpOut;
34 1 for(iTmpOut = 0;iTmpOut < iDly;iTmpOut++)
35 1 //针对24MHZ的主频
36 1 for(chTmpIn = 0;chTmpIn < 250;chTmpIn++)
37 1 {
38 2 ;
39 2 }
40 1 }
41
42 /******************************************************************************
43 函数:SerialInit()
44 功能:对串口进行初始化,设置工作模式、波特率等
45 参数:无
46 返回:无
47 说明:
48 *****************************************************************************/
49 void SerialInit()
50 {
51 1 //set TI to 1, set TR1 to 1
52 1 SCON = 0x52;// SM0 SM1 =1 SM2 REN TB8 RB8 TI RI
53 1 TMOD = 0x20;// GATE=0 C/T-=0 M1 M0=2 GATE C/T- M1 M0
54 1 TH1 = 0xE6; // TH1=E6 4800 when at 24MHz,TH1=F3,9600,24MHz
55 1 PCON = 0x80;
C51 COMPILER V7.06 MAIN 07/24/2007 16:32:57 PAGE 2
56 1 TCON = 0x40;// 01101001 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT
57 1 }
58
59
60 /******************************************************************************
61 函数:InterruptInit()
62 功能:对定时中断进行初始化,设置定时器及其中断时长
63 参数:无
64 返回:无
65 说明:
66 *****************************************************************************/
67 void InterruptInit()
68 {
69 1 TMOD |= 0x01;
70 1 TH0 = 0x3C; //TIMER_24M_25MS_H;
71 1 TL0 = 0xAA; //TIMER_24M_25MS_L;
72 1 TR0 = 1;
73 1
74 1 //open interrupt for rtl and timer
75 1 EA = 1;
76 1 // EX0 = 1;
77 1 ET0 = 1;
78 1 }
79
80 /******************************************************************************
81
82 主程序
83
84 ******************************************************************************/
85 void main()
86 {
87 1 //分配显示缓冲,每屏显示32个字
88 1 unsigned int xdata chDisplayBuf[64];
89 1 unsigned char chtmp = 0;
90 1
91 1 //分配网络缓冲
92 1 struct SMemHead xdata *MemHead;
93 1 struct SEtherDevice xdata DevRTL;
94 1 struct SNetIf xdata *pNetIf;
95 1 unsigned long IPAddr = 0xc0a80103; //本机IP地址:192.168.1.3
96 1 unsigned long NetMask = 0xffffff00; //子网掩码:255.255.255.0 */
97 1 unsigned long GateWay = 0xc0a80101; //网关地址:192.168.1.1 */
98 1 unsigned char xdata EtherAddr[6] = {0x52,0x54,0x4C,0x30,0x2e,0x2f}; //本机MAC地址
99 1
100 1 // 显示驱动流程 //
101 1 SerialInit();
102 1 //LEDInit();
103 1
104 1 //中断
105 1 InterruptInit();
106 1
107 1 // 网络驱动流程 //
108 1 RTL8019Init();
109 1
110 1 // 协议栈处理流程 //
111 1
112 1 MemInit();
113 1 NetIfInit();
114 1 ARPInit();
115 1 TCPInit();
116 1 /* init Devcie struct and init this device */
117 1 EtherDevInit(&DevRTL,EtherAddr,&RTLSendPacket,RTLReceivePacket);
C51 COMPILER V7.06 MAIN 07/24/2007 16:32:57 PAGE 3
*** WARNING C182 IN LINE 117 OF E:\NETBRO~1\TRUNK\NETBRO~1\VW\MAIN.C: pointer to different objects
118 1 /* add this device to NetIf */
119 1 pNetIf = NetIfAdd(IPAddr,NetMask,GateWay,EtherInput,EtherOutput,&DevRTL);
120 1
121 1 // 解码驱动流程 //
122 1 //I2CInit();
123 1 //Sta013Init();
124 1
125 1 //用于测试对RTL8019内部寄存器读写是否正常
126 1 //RTL8019RegTest();
127 1
128 1 //RTLInit();
129 1 //Test8019();
130 1 //TestDataBus();
131 1
132 1 // 主循环 //
133 1 while(1)
134 1 {
135 2 RTL8019SendPacketTest();
136 2 }
137 1
138 1
139 1
140 1 }
*** WARNING C280 IN LINE 88 OF E:\NETBRO~1\TRUNK\NETBRO~1\VW\MAIN.C: 'chDisplayBuf': unreferenced local variable
*** WARNING C280 IN LINE 92 OF E:\NETBRO~1\TRUNK\NETBRO~1\VW\MAIN.C: 'MemHead': unreferenced local variable
C51 COMPILER V7.06 MAIN 07/24/2007 16:32:57 PAGE 4
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
gTemp. . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0000H 1
P0 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0080H 1
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
DWORD. . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
_?NetIfAdd . . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
P3 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B0H 1
EA . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AFH 1
socket . . . . . . . . . . . . . . . . TYPEDEF ----- STRUCT ----- 43
pNext. . . . . . . . . . . . . . . . MEMBER ----- PTR 0000H 2
TCPState . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0002H 1
PortScr. . . . . . . . . . . . . . . MEMBER ----- U_INT 0003H 2
PortDest . . . . . . . . . . . . . . MEMBER ----- U_INT 0005H 2
IPScr. . . . . . . . . . . . . . . . MEMBER ----- U_LONG 0007H 4
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -