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

📄 ir.lst

📁 一款居于世纪民生CS6208的带TCP-IP网络功能的8位MCU内核的芯片的应用代码。
💻 LST
📖 第 1 页 / 共 5 页
字号:
 298   1          __wisr = NIC_ISR;
 299   1      
 300   1              if (__wisr&ISR_RcvOK)
 301   1                 {
 302   2                    //NIC_ISR = 0xFF;
 303   2                NIC_ISR = ISR_RcvOK;
C51 COMPILER V7.06   IR                                                                    10/10/2003 10:51:50 PAGE 6   

 304   2      
 305   2                NIC_CR = CR_Stop|CR_Page1;//change to page 1
 306   2                        __wcurr = NIC_CURR;
 307   2                //__wcurr0 = NIC_CURR;
 308   2                //__wcurr1 = NIC_CURR;
 309   2                //__wcurr2 = NIC_CURR;
 310   2                //if (__wcurr0 == __wcurr1)  __wcurr = __wcurr0;
 311   2                //else if (__wcurr0 == __wcurr2)  __wcurr = __wcurr0;
 312   2                //else if (__wcurr1 == __wcurr2)  __wcurr = __wcurr1;
 313   2                NIC_CR1 = CR_Stop|CR_Page0;//return to page 0
 314   2                        
 315   2      
 316   2                        NIC_CR = CR_Start;
 317   2      
 318   2                while (__wcurr != NextPacket)
 319   2                              {
 320   3                         point = NextPacket*256;
 321   3                                         for (i=0;i<240;i++)
 322   3                                             {
 323   4                                NIC_RECV_BUFFER[i] = *point;
 324   4                                                        point ++;
 325   4                                                 }
 326   3                                         /*for (i=0;i<4;i++)
 327   3                                             {
 328   3                                NIC_RECV_BUFFER[i] = *point;
 329   3                                                        point ++;
 330   3                                                 }
 331   3                         PacketLength = NIC_RECV_BUFFER[2] + NIC_RECV_BUFFER[3]*256;
 332   3                         for (i=4;i<(PacketLength+4);i++)
 333   3                                             {
 334   3                                NIC_RECV_BUFFER[i] = *point;
 335   3                                                        point ++;
 336   3                                                        if (point == RPSTOP*256)  point = RPSTART*256;
 337   3                                                 }*/
 338   3                          /*
 339   3                          NextPacket = NIC_RECV_BUFFER[1];
 340   3                                              if (NextPacket == RPSTART) NIC_BNRY = RPSTOP-1;
 341   3                                              else NIC_BNRY = NextPacket-1;
 342   3                          */
 343   3                                         if (  (NIC_RECV_BUFFER[4] == 0xFF)
 344   3                             &&(NIC_RECV_BUFFER[5] == 0xFF)
 345   3                             &&(NIC_RECV_BUFFER[6] == 0xFF)
 346   3                             &&(NIC_RECV_BUFFER[7] == 0xFF)
 347   3                             &&(NIC_RECV_BUFFER[8] == 0xFF)
 348   3                             &&(NIC_RECV_BUFFER[9] == 0xFF) 
 349   3                                                 &&(NIC_RECV_BUFFER[16] == 0x08)
 350   3                             &&(NIC_RECV_BUFFER[17] == 0x06)  )
 351   3                             {
 352   4                                //ARP
 353   4                                if ( (NIC_RECV_BUFFER[42] == IPADDRESS[0])&&
 354   4                                     (NIC_RECV_BUFFER[43] == IPADDRESS[1])&&
 355   4                                     (NIC_RECV_BUFFER[44] == IPADDRESS[2])&&
 356   4                                     (NIC_RECV_BUFFER[45] == IPADDRESS[3])&&
 357   4                                     (NIC_RECV_BUFFER[24] == 0x00     )&&
 358   4                                     (NIC_RECV_BUFFER[25] == 0x01     ) )
 359   4                                   {
 360   5                                      if ( (NIC_RECV_BUFFER[32] == IPADDRESS[0])&&
 361   5                                           (NIC_RECV_BUFFER[33] == IPADDRESS[1])&&
 362   5                                           (NIC_RECV_BUFFER[34] == IPADDRESS[2])&&
 363   5                                           (NIC_RECV_BUFFER[35] == IPADDRESS[3]) )
 364   5                                         {
 365   6                                                                           // XmitPoint = __wxmitcurr*XMIT_NUMBER;
C51 COMPILER V7.06   IR                                                                    10/10/2003 10:51:50 PAGE 7   

 366   6                                                                               // __wxmitcurr ++;
 367   6                                                                               // if (__wxmitcurr > XMIT_STOP)  __wxmitcurr = XMIT_START;
 368   6                                                                               // for (i=0;i<6;i++)
 369   6                                           //     NIC_XMIT_RING[XmitPoint+i] = NIC_RECV_BUFFER[10+i];
 370   6                                             
 371   6                                              //ARPCOL();
 372   6                                                                                  NIC_TPSTART = TPSTART;
 373   6                                                                                  //destination address
 374   6                                                                                  NIC_XMIT_BUFFER[0] = NIC_RECV_BUFFER[10];
 375   6                                              NIC_XMIT_BUFFER[1] = NIC_RECV_BUFFER[11];
 376   6                                              NIC_XMIT_BUFFER[2] = NIC_RECV_BUFFER[12];
 377   6                                              NIC_XMIT_BUFFER[3] = NIC_RECV_BUFFER[13];
 378   6                                              NIC_XMIT_BUFFER[4] = NIC_RECV_BUFFER[14];
 379   6                                              NIC_XMIT_BUFFER[5] = NIC_RECV_BUFFER[15];
 380   6                                                                                      
 381   6                                                                         }
 382   5                                                                      else
 383   5                                                                         {
 384   6                                                                            //XmitPoint = __wxmitcurr*XMIT_NUMBER;
 385   6                                                                                //__wxmitcurr ++;
 386   6                                                                                //if (__wxmitcurr > XMIT_STOP)  __wxmitcurr = XMIT_START;
 387   6                                                                                //for (i=0;i<6;i++)
 388   6                                            //    NIC_XMIT_RING[XmitPoint+i] = 0xFF;
 389   6                                             
 390   6                                              //ARPACK();
 391   6                                                                                  NIC_TPSTART = TPSTART;
 392   6                                              //destination address
 393   6                                                                                  NIC_XMIT_BUFFER[0] = 0xFF;
 394   6                                              NIC_XMIT_BUFFER[1] = 0xFF;
 395   6                                              NIC_XMIT_BUFFER[2] = 0xFF;
 396   6                                              NIC_XMIT_BUFFER[3] = 0xFF;
 397   6                                              NIC_XMIT_BUFFER[4] = 0xFF;
 398   6                                              NIC_XMIT_BUFFER[5] = 0xFF;
 399   6                                                                                      
 400   6                                                                         }
 401   5                                                                           //for (i=6;i<12;i++)
 402   5                                           //     NIC_XMIT_RING[XmitPoint+i] = MACADDRESS[i-6];
 403   5                                                                             
 404   5                                              //source address
 405   5                                              NIC_XMIT_BUFFER[6] = MACADDRESS[0];
 406   5                                              NIC_XMIT_BUFFER[7] = MACADDRESS[1];
 407   5                                              NIC_XMIT_BUFFER[8] = MACADDRESS[2];
 408   5                                              NIC_XMIT_BUFFER[9] = MACADDRESS[3];
 409   5                                              NIC_XMIT_BUFFER[10] = MACADDRESS[4];
 410   5                                              NIC_XMIT_BUFFER[11] = MACADDRESS[5];
 411   5                                                                                      
 412   5                                                                           //for (i=12;i<20;i++)
 413   5                                           //     NIC_XMIT_RING[XmitPoint+i] = NIC_RECV_BUFFER[i+4];
 414   5                                                                                      
 415   5                                             //port
 416   5                                                                                  NIC_XMIT_BUFFER[12] = NIC_RECV_BUFFER[16];
 417   5                                                                                  NIC_XMIT_BUFFER[13] = NIC_RECV_BUFFER[17];
 418   5                                                                                  NIC_XMIT_BUFFER[14] = NIC_RECV_BUFFER[18];
 419   5                                                                                  NIC_XMIT_BUFFER[15] = NIC_RECV_BUFFER[19];
 420   5                                                                                  NIC_XMIT_BUFFER[16] = NIC_RECV_BUFFER[20];
 421   5                                                                                  NIC_XMIT_BUFFER[17] = NIC_RECV_BUFFER[21];
 422   5                                                                                  NIC_XMIT_BUFFER[18] = NIC_RECV_BUFFER[22];
 423   5                                                                                  NIC_XMIT_BUFFER[19] = NIC_RECV_BUFFER[23];
 424   5                                                                                      
 425   5                                                                                      //NIC_XMIT_RING[XmitPoint+20] = 0x00;
 426   5                                                                                      //NIC_XMIT_RING[XmitPoint+21] = 0x02;
 427   5                                              
C51 COMPILER V7.06   IR                                                                    10/10/2003 10:51:50 PAGE 8   

 428   5                                                                                  NIC_XMIT_BUFFER[20] = 0x00;
 429   5                                                                                  NIC_XMIT_BUFFER[21] = 0x02;
 430   5                                                                                      
 431   5                                                                           //for (i=22;i<28;i++)
 432   5                                           //     NIC_XMIT_RING[XmitPoint+i] = MACADDRESS[i-22];
 433   5                                                                                      
 434   5                                                                                  //source MAC address
 435   5                                                                                  NIC_XMIT_BUFFER[22] = MACADDRESS[0];
 436   5                                                                                  NIC_XMIT_BUFFER[23] = MACADDRESS[1];
 437   5                                                                                  NIC_XMIT_BUFFER[24] = MACADDRESS[2];
 438   5                                                                                  NIC_XMIT_BUFFER[25] = MACADDRESS[3];
 439   5                                                                                  NIC_XMIT_BUFFER[26] = MACADDRESS[4];
 440   5                                                                                  NIC_XMIT_BUFFER[27] = MACADDRESS[5];
 441   5                                                                                      
 442   5                                                                           //for (i=28;i<32;i++)
 443   5                                           //     NIC_XMIT_RING[XmitPoint+i] = NIC_RECV_BUFFER[i+14];
 444   5                                                                                      
 445   5                                                                                  //source IP address
 446   5                                                                                  NIC_XMIT_BUFFER[28] = NIC_RECV_BUFFER[42];
 447   5                                                                                  NIC_XMIT_BUFFER[29] = NIC_RECV_BUFFER[43];
 448   5                                                                                  NIC_XMIT_BUFFER[30] = NIC_RECV_BUFFER[44];

⌨️ 快捷键说明

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