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

📄 flashmodule.lst

📁 该程序完成了c8051外围电路的驱动和串口协议的编写。希望能给大家学习51单片机带来帮助
💻 LST
📖 第 1 页 / 共 3 页
字号:
 332          
 333          //--------------------------------------------------------------------------------------------------
 334          //函数名称:void CheckSystemRAMInvalidation(void)
 335          //功    能:检测系统RAM是否失效     
 336          //输入参数:无 
 337          //返    回:无
 338          //完成日期:4/13/2007
 339          //-------------------------------------------------------------------------------------------------
 340          
 341          void CheckSystemRAMInvalidation(void)
 342          {
 343   1              unsigned char xdata uchDataCheck[13] = {0xff, 0x94, 0xC0, 0x25, 0x04, 0xf3, 
 344   1                                                                                                      0xb0, 0x07, 0x5D, 0x07, 0x06, 0x00, 0x00};
 345   1              unsigned int  xdata uiDataResult;
 346   1              unsigned int  xdata uiTempDataRCR = 0xffff;
 347   1              unsigned char xdata uchDataCheckLength = 11;
 348   1              unsigned char xdata *p_uchDataCheck = &uchDataCheck; 
 349   1              unsigned int  xdata uiTempData;
 350   1          
 351   1              while(uchDataCheckLength > 0)
 352   1          {
 353   2              uiTempDataRCR = ((unsigned char)(uiTempDataRCR)) ^ uchDataCheck[((unsigned char)(uiTempDataRCR >> 
             -8) ^ *p_uchDataCheck)];
 354   2              uchDataCheckLength--;
 355   2              p_uchDataCheck++;
 356   2      
 357   2          }
 358   1          uiDataResult = uiTempDataRCR;
 359   1              uchDataCheck[11] = uiDataResult;
 360   1          uchDataCheck[12] = (uiDataResult >> 8);    
C51 COMPILER V7.10   FLASHMODULE                                                           09/18/2008 14:09:29 PAGE 7   

 361   1              uchDataCheckLength = 11;
 362   1              uiTempDataRCR = 0xffff;
 363   1              p_uchDataCheck = &uchDataCheck;
 364   1      
 365   1              while(uchDataCheckLength > 0)
 366   1          {
 367   2                      uiTempDataRCR = ((unsigned char)(uiTempDataRCR)) ^ uchDataCheck[((unsigned char)(uiTempDataRCR >> 8) ^ 
             -*p_uchDataCheck)];
 368   2              uchDataCheckLength--;
 369   2              p_uchDataCheck++;
 370   2      
 371   2          }
 372   1              
 373   1              uiDataResult = uiTempDataRCR;   
 374   1              uiTempData = uchDataCheck[11] + (uchDataCheck[12] << 8);
 375   1              
 376   1              if (uiTempDataRCR == uiTempData)
 377   1              {
 378   2                      SetRAMLostStatusMain(0);        
 379   2              }       
 380   1              else if (uiTempDataRCR != uiTempData)
 381   1              {
 382   2                      SetRAMLostStatusMain(1);        
 383   2              }               
 384   1      }
 385          
 386          
 387          //--------------------------------------------------------------------------------------------------
 388          //函数名称:void CheckSystemFLASHInvalidation(void)
 389          //功    能:检测系统FLASH是否失效     
 390          //输入参数:无 
 391          //返    回:无
 392          //完成日期:4/13/2007
 393          //-------------------------------------------------------------------------------------------------
 394          void CheckSystemFLASHInvalidation(void)
 395          {
 396   1              unsigned char code uchDataCheck[11] = {0xff, 0x94, 0xCc, 0x25, 0x04, 0xf3, 
 397   1                                                                                                      0xb0, 0x07, 0x5D, 0x07, 0xf6};
 398   1              unsigned int  xdata uiDataResult;
 399   1              unsigned int  xdata uiTempDataRCR = 0xffff;
 400   1              unsigned char xdata uchDataCheckLength = 11;
 401   1              unsigned char xdata *p_uchDataCheck = &uchDataCheck; 
 402   1          
 403   1              while(uchDataCheckLength > 0)
 404   1          {
 405   2              uiTempDataRCR = ((unsigned char)(uiTempDataRCR)) ^ uchDataCheck[((unsigned char)(uiTempDataRCR >> 
             -8) ^ *p_uchDataCheck)];
 406   2              uchDataCheckLength--;
 407   2              p_uchDataCheck++;
 408   2          }
 409   1          uiDataResult = uiTempDataRCR;    
 410   1              uchDataCheckLength = 11;
 411   1              uiTempDataRCR = 0xffff;
 412   1              p_uchDataCheck = &uchDataCheck;
 413   1      
 414   1              while(uchDataCheckLength > 0)
 415   1          {
 416   2                      uiTempDataRCR = ((unsigned char)(uiTempDataRCR)) ^ uchDataCheck[((unsigned char)(uiTempDataRCR >> 8) ^ 
             -*p_uchDataCheck)];
 417   2              uchDataCheckLength--;
 418   2              p_uchDataCheck++;
 419   2          }   
C51 COMPILER V7.10   FLASHMODULE                                                           09/18/2008 14:09:29 PAGE 8   

 420   1              if (uiTempDataRCR == uiDataResult)
 421   1              {
 422   2                      SetFLASHLostStatusMain(0);      
 423   2              }       
 424   1              else if (uiTempDataRCR != uiDataResult)
 425   1              {
 426   2                      SetFLASHLostStatusMain(1);      
 427   2              }                       
 428   1      }
 429          
 430          
 431          
 432          
 433          
 434          
 435          
 436          
 437          
 438          
 439          
 440          
 441          
 442          
 443          
 444          
 445          
 446          
 447          
 448          
 449          
 450          
 451          
 452          
 453          
 454          
 455          
 456          
 457          
 458          
 459          
 460          
 461          
 462          
 463          
 464          
 465          
 466          
 467          
 468          
 469          
 470          
 471          
 472          
 473          
 474          
 475          
 476          
 477          
 478          
 479          
 480          
 481          
C51 COMPILER V7.10   FLASHMODULE                                                           09/18/2008 14:09:29 PAGE 9   



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1881    ----
   CONSTANT SIZE    =    238    ----
   XDATA SIZE       =   ----     264
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      14
   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 + -