eepromcopy.lst

来自「一个非常好的微处理器烧录EEPROM的C++ 原代码项目文件,直接可用,一拖一」· LST 代码 · 共 307 行 · 第 1/2 页

LST
307
字号
C51 COMPILER V7.50   EEPROMCOPY                                                            07/08/2006 11:59:22 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE EEPROMCOPY
OBJECT MODULE PLACED IN EepromCopy.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE EepromCopy.c LARGE BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*********************************************************************************************************
             -******************
   2          * Project:              EepromCopy Software Part                                                    
   3          *                                                                                                         
             -                 
   4          * File:                         EepromCopy.C (Source)                                                                   
             -               
   5          *                                                                                                         
             -                 
   6          *Version:               V0.00                                                                                    
             -           
   7          *                                                                                                         
             -                 
   8          * Created:              2006.05.10
   9          * Last Change:      2006.05.10                                                                          
  10          *                                                                                                         
             -                 
  11          * Author:                       LaiJun                                                                                  
             -       
  12          *                                                                                                                           
  13          * Company:              COBY                                                                                        
  14          *                                                                                                         
             -                
  15          * Compiler:             KEIL C51 V7.07                                                                           
             -   
  16          *                                                                                                         
             -                
  17          * Description:          
  18          *
  19          * SM5964(@12MHz)                                                                                            
  20          *
  21          *Copyright (c) COBY Integration Technology, Inc.
  22          *All rights reserved.
  23          *
  24          **********************************************************************************************************
             -*****************/
  25          #include        "PublicDef.h"
  26          #include        "PublicFunction.h"
  27          //define        Public var
  28          union
  29                  {
  30                          BYTE     bytes[128];
  31                          WORD     words[64];
  32                          DWORD    dwords[32];
  33                  }       GpBuffer;
  34          BYTE    *ptGpBuffer;
  35          
  36          BYTE    bDelayTime,Operate_Flag;
  37          WORD    wDelayTime,wDemoDelay;
  38          void    InitMcu(void)
  39          {
  40   1      #ifdef  MCU_SM5964_SynCmos
  41   1              TMOD=0x10;
  42   1              TL1=bCOPYTL1;
  43   1              TH1=bCOPYTH1;
C51 COMPILER V7.50   EEPROMCOPY                                                            07/08/2006 11:59:22 PAGE 2   

  44   1              SCON=0x50;
  45   1              T2CON=0x30;
  46   1              PCON=0x00;
  47   1              TH2=RCAP2H=0xff;
  48   1              TL2=RCAP2L=BAUD_UART;
  49   1              IT1 =0;
  50   1              ET1=ES=1;
  51   1              PT1=0;PS=1;
  52   1              TR1=TR2=1;
  53   1              EX1=0;
  54   1              WDTC=0;
  55   1              EA=btENABLE;
  56   1              SCONF=0x0E;
  57   1              DBANK=0x00;
  58   1      #endif
  59   1      }
  60          
  61          void    TurnOnOff_Light(BYTE    Light)
  62          {
  63   1              switch  (Light)
  64   1              {
  65   2                      case    LIGHT_RED:
  66   2                                      Pin_LIGHT_RED=1;
  67   2                                      Pin_LIGHT_GREEN=0;
  68   2                                      break;
  69   2                      case    LIGHT_GREEN:
  70   2                                      Pin_LIGHT_RED=0;
  71   2                                      Pin_LIGHT_GREEN=1;
  72   2                                      break;
  73   2                      case    LIGHT_YELLOW:
  74   2                                      Pin_LIGHT_RED=1;
  75   2                                      Pin_LIGHT_GREEN=1;
  76   2                                      break;
  77   2                      case    LIGHT_OFF:
  78   2                                      Pin_LIGHT_RED=0;
  79   2                                      Pin_LIGHT_GREEN=0;
  80   2                                      break;
  81   2              }
  82   1      }
  83          
  84          BYTE    Chek_Chip(BYTE  Chip_Number)
  85          {
  86   1              #define         CHIP_R          1
  87   1              #define         CHIP_D          2
  88   1      
  89   1              if      (Chip_Number&CHIP_R)
  90   1              {
  91   2                      SetIIC_Type(IIC_AT24CXX_R);
  92   2                      Reset_Eeprom();
  93   2                      ptGpBuffer=GpBuffer.bytes;
  94   2                      if      (EepromRead(0,1)==btIIC_ERROR)
  95   2                      return          btIIC_ERROR;
  96   2              }
  97   1              if      (Chip_Number&CHIP_D)
  98   1              {
  99   2                      SetIIC_Type(IIC_AT24CXX_D);
 100   2                      Reset_Eeprom();
 101   2                      ptGpBuffer=GpBuffer.bytes;
 102   2                      if      (EepromRead(0,1)==btIIC_ERROR)
 103   2                      return          btIIC_ERROR;
 104   2              }
 105   1              return          btIIC_RIGHT;
C51 COMPILER V7.50   EEPROMCOPY                                                            07/08/2006 11:59:22 PAGE 3   

 106   1      }
 107          
 108          void    Copy_Eeprom(void)
 109          {
 110   1              WORD    Eeprom_Pages;
 111   1              #if     SELECT_TYPE_METHOD==SELECT_BY_SOFT
 112   1              Eeprom.bType_Eeprom=EEPROM_TYPE;
 113   1              #else
                      Eeprom.bType_Eeprom=Pin_Type_Select&0x0f;
                      #endif
 116   1              switch  (Eeprom.bType_Eeprom)
 117   1              {
 118   2                      case    EEPROM_24C01:
 119   2                                      Eeprom.wPages_Eeprom=EEPROM_PAGES_24C01;
 120   2                                      Eeprom.bBytes_PerPage=PAGEBYTES_24C02;
 121   2                                      break;
 122   2                      case    EEPROM_24C02:
 123   2                                      Eeprom.wPages_Eeprom=EEPROM_PAGES_24C02;
 124   2                                      Eeprom.bBytes_PerPage=PAGEBYTES_24C02;
 125   2                                      break;
 126   2                      case    EEPROM_24C04:
 127   2                                      Eeprom.wPages_Eeprom=EEPROM_PAGES_24C04;
 128   2                                      Eeprom.bBytes_PerPage=PAGEBYTES_24C16;
 129   2                                      break;

⌨️ 快捷键说明

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