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

📄 ir.lst

📁 一款居于世纪民生CS6208的带TCP-IP网络功能的8位MCU内核的芯片的应用代码。
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.06   IR                                                                    10/10/2003 10:51:50 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE IR
OBJECT MODULE PLACED IN IR.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE IR.c BROWSE MODDP2 DEBUG OBJECTEXTEND CODE

stmt level    source

   1          #include "CS6208.H"
   2          #include "REG.H"
   3          #include <intrins.h>
   4          #include <stdlib.h>
   5          #include <math.h>
   6          #include <absacc.h>
   7          
   8          #include "NIC.H"
   9          #include "IR.H"
  10          
  11          #define  IR38KHz //use 38khz crastal,else use timer0 generate 38khz
  12          #define  TIMER0_RELOAD 0x7C
  13          
  14          #define  TRUE   1
  15          #define  FALSE  0
  16          
  17          unsigned char __wsystemtimer = 0;
  18          #define TIME_1S  100
  19          
  20          unsigned char __wsend = 0;
  21          #define TIME_ARPREQ   100
  22          #define TIME_SEND     200
  23          
  24          unsigned char idata __wmeterquantity;
  25          unsigned char idata __warmed;
  26          unsigned char idata ALARM_BUFFER[4];
  27          unsigned char xdata TIME[7];
  28          unsigned char xdata CONTROL[4];
  29          struct METER{
  30          unsigned char TYPE;
  31          unsigned char PULSE;
  32          unsigned char WIDTH;
  33          unsigned char COUNTER0;
  34          unsigned char COUNTER1;
  35          unsigned long AMOUNT;
  36          unsigned char WRITE; 
  37          }METER0,METER1,METER2,METER3,METER4,METER5;
  38          
  39          void PARA_INIT();
  40          void CS6208_INIT();
  41          
  42          /*************************/
  43          
  44          /************************/
  45          main()
  46          {
  47   1      
  48   1          PBOE = 0xFF;//PB as output
  49   1          PCOE = 0xFF;//PC as output
  50   1              BREG = 0xFF;
  51   1          CREG = 0xFF;
  52   1          
  53   1              PARA_INIT();
  54   1              CHECKSUM_UDP();
  55   1      
C51 COMPILER V7.06   IR                                                                    10/10/2003 10:51:50 PAGE 2   

  56   1              Init_NIC();
  57   1          CS6208_INIT();
  58   1          ARPREQ();
  59   1      
  60   1              while(1)
  61   1                   {
  62   2      
  63   2                  TA = 0xAA;
  64   2                      TA = 0x55;
  65   2                      WDCON = WDCON|0x01;//clear watchdog timer
  66   2                  
  67   2                  #ifdef IR38KHz
  68   2                  if (__wirtime >= TIME_IR)
  69   2                     {
  70   3                        __wirtime = 0;
  71   3      
  72   3                        if (!__blearn)
  73   3                           {
  74   4                              __blearn = TRUE;
  75   4                              __sbbusy = 0;
  76   4                              IR_CLEAR();
  77   4                              EX0 = 1;//enable ir interrupt
  78   4                           }
  79   3                        else
  80   3                           {
  81   4                              __blearn = FALSE;
  82   4                              if (__dir)
  83   4                                 {
  84   5                                    __dirlong = 0;
  85   5                                    EX0 = 1;//enable ir interrupt
  86   5                                 }
  87   4                           }
  88   3                     }
  89   2                  #endif
  90   2      
  91   2                              Deal_Packet();
  92   2                  
  93   2                          if (__wsend == TIME_ARPREQ)
  94   2                     {
  95   3                        __wsend = TIME_ARPREQ + 30;
  96   3                        ARPREQ();
  97   3                     }
  98   2                              if (__wsend == TIME_SEND)
  99   2                     {
 100   3                        __wsend = TIME_SEND + 30;
 101   3                        UDP(R_BROARDCAST);
 102   3                     }            
 103   2                       }
 104   1      }
 105          /**********************************************************/
 106          
 107          void PARA_INIT()
 108          {
 109   1      
 110   1              MACADDRESS[0] = 0x00;
 111   1              MACADDRESS[1] = 0x40;
 112   1              MACADDRESS[2] = 0x9D;
 113   1              MACADDRESS[3] = 0xFF;
 114   1              MACADDRESS[4] = 0xFF;
 115   1              MACADDRESS[5] = 0xFF;
 116   1      
 117   1              IPADDRESS[0] = 221;
C51 COMPILER V7.06   IR                                                                    10/10/2003 10:51:50 PAGE 3   

 118   1          IPADDRESS[1] = 222;
 119   1              IPADDRESS[2] = 222;
 120   1              IPADDRESS[3] = 164;
 121   1      
 122   1              PC_MACADDRESS[0] = 0x00;
 123   1              PC_MACADDRESS[1] = 0x40;
 124   1              PC_MACADDRESS[2] = 0x9D;
 125   1              PC_MACADDRESS[3] = 0xFF;
 126   1              PC_MACADDRESS[4] = 0xFF;
 127   1              PC_MACADDRESS[5] = 0x00;
 128   1      
 129   1              PC_IPADDRESS[0] = 221;
 130   1          PC_IPADDRESS[1] = 222;
 131   1              PC_IPADDRESS[2] = 222;
 132   1              PC_IPADDRESS[3] = 1;
 133   1      }
 134          void CS6208_INIT()
 135          {
 136   1          PLLFC = 0x28;//PLL CLOCK :20*(8+1)/(2+1)=60MHz
 137   1          //PLLFC = 0x5B;//PLL CLOCK :20*(B+1)/(5+1)=40MHz
 138   1              //PLLFC = 0x4A;//PLL CLOCK :20*(A+1)/(4+1)=44MHz
 139   1              //PLLFC = 0x45;//PLL CLOCK :20*(5+1)/(4+1)=24MHz
 140   1          CCR = 0x05;//using fast OSC and disable slow OSC 
 141   1      
 142   1          CKCON = 0xC0;
 143   1          
 144   1          TA = 0xAA;

⌨️ 快捷键说明

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