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

📄 main.lst

📁 51单片机下的RTL8019网络芯片的驱动程序
💻 LST
字号:
C51 COMPILER V7.06   MAIN                                                                  08/08/2007 09:33:18 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN E:\NETBRO~1\TRUNK\NETBRO~1\RTL8019\MAIN.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE E:\NETBRO~1\TRUNK\NETBRO~1\RTL8019\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          函数:Delay()
  20          功能:延时chDelay ms
  21          参数:
  22                unsigned char chDelay:要延时的时长,<=255MS
  23          返回:无
  24          说明:请根据具体情况调整延时值
  25          ******************************************************************************/
  26          void delay(unsigned int iDly)
  27          {
  28   1       unsigned char chTmpIn;
  29   1       unsigned int iTmpOut;
  30   1       for(iTmpOut = 0;iTmpOut < iDly;iTmpOut++)
  31   1           //针对24MHZ的主频
  32   1           for(chTmpIn = 0;chTmpIn < 250;chTmpIn++)
  33   1           {
  34   2           ;
  35   2           }
  36   1      }
  37          
  38          /******************************************************************************
  39          函数:SerialInit()
  40          功能:对串口进行初始化,设置工作模式、波特率等
  41          参数:无
  42          返回:无
  43          说明:
  44          *****************************************************************************
  45          void SerialInit()
  46          {
  47                  //set TI to 1, set TR1 to 1 
  48                  SCON = 0x52;// SM0 SM1 =1 SM2 REN TB8 RB8 TI RI 
  49                  TMOD = 0x20;// GATE=0 C/T-=0 M1 M0=2 GATE C/T- M1 M0 
  50                  TH1 = 0xE6;     // TH1=E6 4800 when at 24MHz,TH1=F3,9600,24MHz 
  51                  PCON = 0x80;
  52                  TCON = 0x40;// 01101001 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT 
  53          }*/
  54          
  55          
C51 COMPILER V7.06   MAIN                                                                  08/08/2007 09:33:18 PAGE 2   

  56          /******************************************************************************
  57          函数:InterruptInit()
  58          功能:对定时中断进行初始化,设置定时器及其中断时长
  59          参数:无
  60          返回:无
  61          说明:
  62          *****************************************************************************
  63          void InterruptInit()
  64          {
  65                  TMOD |= 0x01;
  66                  TH0 = 0x3C;     //TIMER_24M_25MS_H;
  67                  TL0 = 0xAA;     //TIMER_24M_25MS_L;
  68                  TR0 = 1;
  69          
  70                  //open interrupt for rtl and timer 
  71                  EA = 1;
  72                  // EX0 = 1;
  73                  ET0 = 1;
  74          } */
  75          
  76          /******************************************************************************
  77          
  78                                                  主程序
  79          
  80          ******************************************************************************/
  81          void main()
  82          {
  83   1          //分配显示缓冲,每屏显示32个字
  84   1          //unsigned int xdata chDisplayBuf[64];
  85   1          //unsigned char chtmp = 0;
  86   1      
  87   1          //分配网络缓冲
  88   1          //struct SMemHead xdata *MemHead;
  89   1              //struct SEtherDevice xdata DevRTL;
  90   1          //struct SNetIf xdata *pNetIf;
  91   1          //unsigned long     IPAddr  = 0xc0a80103;   //本机IP地址:192.168.1.3
  92   1              //unsigned long NetMask = 0xffffff00;   //子网掩码:255.255.255.0 */
  93   1              //unsigned long GateWay = 0xc0a80101;   //网关地址:192.168.1.1  */
  94   1          //unsigned char xdata EtherAddr[6] = {0x52,0x54,0x4C,0x30,0x2e,0x2f};  //本机MAC地址
  95   1      
  96   1          //      显示驱动流程      //
  97   1          //SerialInit();
  98   1          //LEDInit();
  99   1      
 100   1          //中断
 101   1          //InterruptInit();
 102   1      
 103   1          //      网络驱动流程      //
 104   1          RTL8019Init();
 105   1      
 106   1          //     协议栈处理流程     //
 107   1      
 108   1          //MemInit();
 109   1              //NetIfInit();
 110   1              //ARPInit();
 111   1              //TCPInit();
 112   1              /* init Devcie struct and init this device */
 113   1              //EtherDevInit(&DevRTL,EtherAddr,&RTLSendPacket,RTLReceivePacket);
 114   1              /* add this device to NetIf */
 115   1              //pNetIf = NetIfAdd(IPAddr,NetMask,GateWay,EtherInput,EtherOutput,&DevRTL);
 116   1      
 117   1          //      解码驱动流程      //
C51 COMPILER V7.06   MAIN                                                                  08/08/2007 09:33:18 PAGE 3   

 118   1          //I2CInit();
 119   1          //Sta013Init();
 120   1             
 121   1      
 122   1          //         主循环         //
 123   1          while(1)
 124   1          {
 125   2               RTL8019SendPacketTest();
 126   2          }
 127   1      
 128   1      
 129   1      
 130   1      }
C51 COMPILER V7.06   MAIN                                                                  08/08/2007 09:33:18 PAGE 4   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


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
P3 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
size_t . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
BOOL . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
BYTE . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
WORD . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
RTL8019SendPacketTest. . . . . . . . .  EXTERN   CODE   PROC     -----  -----
SMemHead . . . . . . . . . . . . . . .  * TAG *  -----  STRUCT   -----  9
  pNext. . . . . . . . . . . . . . . .  MEMBER   -----  PTR      0000H  2
  pPre . . . . . . . . . . . . . . . .  MEMBER   -----  PTR      0002H  2
  used . . . . . . . . . . . . . . . .  MEMBER   -----  U_CHAR   0004H  1
  pStart . . . . . . . . . . . . . . .  MEMBER   -----  PTR      0005H  2
  pEnd . . . . . . . . . . . . . . . .  MEMBER   -----  PTR      0007H  2
_delay . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  iDly . . . . . . . . . . . . . . . .  * REG *  DATA   U_INT    0006H  2
  chTmpIn. . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0003H  1
  iTmpOut. . . . . . . . . . . . . . .  * REG *  DATA   U_INT    0004H  2
_?RTL8019Init. . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     32    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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