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

📄 rtc_eeprom.lst

📁 一个以前开发的实际应用的交通灯控制器程序
💻 LST
字号:
C51 COMPILER V7.50   RTC_EEPROM                                                            04/03/2007 10:38:52 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE RTC_EEPROM
OBJECT MODULE PLACED IN RTC_EEPROM.obj
COMPILER INVOKED BY: E:\Keil\C51\BIN\C51.EXE IIC[Ultral]\RTC_EEPROM.c BROWSE DEBUG OBJECTEXTEND PRINT(.\RTC_EEPROM.lst) 
                    -OBJECT(RTC_EEPROM.obj)

line level    source

   1          #include "iic.h"
   2          //////////////////////////////////////////////////////////////////////////
   3          
   4          //RTC
   5          void RTC_FirstInit()
   6          {
   7   1              XBYTE[RTC_BASE+CtrlRegB]=0x80;//SET
   8   1              
   9   1              //XX:00:00
  10   1              XBYTE[RTC_BASE+RegSeconds]=0x00;
  11   1              XBYTE[RTC_BASE+RegSeconds_Alarm]=0x00;
  12   1              XBYTE[RTC_BASE+RegMinutes]=0x00;
  13   1              XBYTE[RTC_BASE+RegMinutes_Alarm]=0x00;
  14   1              XBYTE[RTC_BASE+RegHours]=0x00;
  15   1              XBYTE[RTC_BASE+RegHours_Alarm]=0xff;
  16   1      
  17   1              XBYTE[RTC_BASE+RegDay]=SYS_BEGIN_DAY;
  18   1              XBYTE[RTC_BASE+RegDate]=SYS_BEGIN_DATE;
  19   1              XBYTE[RTC_BASE+RegMonth]=SYS_BEGIN_MONTH;
  20   1              XBYTE[RTC_BASE+RegYear]=SYS_BEGIN_YEAR;
  21   1              XBYTE[RTC_BASE+RegCentury]=20;
  22   1      
  23   1              temp=XBYTE[RTC_BASE+CtrlRegC];//clear interrupts
  24   1              XBYTE[RTC_BASE+CtrlRegB]=0x37;//AIE+UIE+DM+24+DSE
  25   1      
  26   1              XBYTE[RTC_BASE+CtrlRegA]=0x20;//begin the oscilators
  27   1      }
  28          
  29          void RTC_GeneralInit()
  30          {
  31   1              temp=XBYTE[RTC_BASE+CtrlRegC];//clear interrupts
  32   1              XBYTE[RTC_BASE+CtrlRegB]=0x37;//AIE+UIE+DM+24+DSE
  33   1      }
  34          
  35          //////////////////////////////////////////////////////////////////////////
  36          //EEPROM
  37          void EPR_Write(unsigned int addr,unsigned char dat)
  38          {
  39   1              unsigned int xdata lgtemp;
  40   1      
  41   1      //锁定不可写
  42   1              addr+=EEPROM_BASE;
  43   1              XBYTE[addr]=dat;
  44   1              lgtemp=1000;
  45   1              while (lgtemp)
  46   1              {
  47   2                      temp=XBYTE[addr];
  48   2                      if(temp==dat)
  49   2                              break;
  50   2                      lgtemp-=1;
  51   2              }
  52   1      }
  53          
  54          unsigned char EPR_Read(unsigned int addr)
C51 COMPILER V7.50   RTC_EEPROM                                                            04/03/2007 10:38:52 PAGE 2   

  55          {
  56   1              unsigned char xdata dat;
  57   1              addr+=EEPROM_BASE;
  58   1              dat=XBYTE[addr];
  59   1              return dat;
  60   1      }
  61          
  62          void EPR_Page_0()
  63          {
  64   1              //缓冲页面
  65   1              EEPROM_PAGE = 0;
  66   1              EPRChangeFlag=1;
*** ERROR C202 IN LINE 66 OF IIC[ULTRAL]\RTC_EEPROM.C: 'EPRChangeFlag': undefined identifier
  67   1      }
  68          
  69          void EPR_Page_1()
  70          {
  71   1              EEPROM_PAGE = 1;
  72   1      }
  73          
  74          void EPR_Reset()
  75          {//重新恢复EEPROM
  76   1              unsigned int xdata i,k;
  77   1              EPR_Page_0();
  78   1              for(i=0;i<13*2;i++)
  79   1              {//一共26个相组
  80   2                      for(k=0;k<7*8;k++)
  81   2                              EPR_Write(i*PHASE_GROUP_LEN+k,DefaultPhaseGroup[k]);
*** ERROR C202 IN LINE 81 OF IIC[ULTRAL]\RTC_EEPROM.C: 'DefaultPhaseGroup': undefined identifier
  82   2              }
  83   1              k=0;
  84   1              for(i=0x0fff;i>ADDR_LOW_END;i--)
  85   1              {
  86   2                      EPR_Write(i,DefaultSetting[k]);
  87   2                      k++;
  88   2              }
  89   1      
  90   1              EPR_Page_1();
  91   1              for(i=0;i<13*2;i++)
  92   1              {//一共26个相组
  93   2                      for(k=0;k<7*8;k++)
  94   2                              EPR_Write(i*PHASE_GROUP_LEN+k,DefaultPhaseGroup[k]);
*** ERROR C202 IN LINE 94 OF IIC[ULTRAL]\RTC_EEPROM.C: 'DefaultPhaseGroup': undefined identifier
  95   2              }
  96   1              k=0;
  97   1              for(i=0x0fff;i>ADDR_LOW_END;i--)
  98   1              {
  99   2                      EPR_Write(i,DefaultSetting[k]);
 100   2                      k++;
 101   2              }
 102   1              
 103   1              EPRChangeFlag=0;
*** ERROR C202 IN LINE 103 OF IIC[ULTRAL]\RTC_EEPROM.C: 'EPRChangeFlag': undefined identifier
 104   1      }
 105          
 106          void EPR_CopyPage()
 107          {
 108   1              unsigned int xdata i;
 109   1              unsigned char xdata k1,k2;
 110   1              for(i=0;i<13*2*PHASE_GROUP_LEN;i++)
 111   1              {
 112   2                      EPR_Page_0();
C51 COMPILER V7.50   RTC_EEPROM                                                            04/03/2007 10:38:52 PAGE 3   

 113   2                      k1=EPR_Read(i);
 114   2                      EPR_Page_1();
 115   2                      k2=EPR_Read(i);
 116   2                      if(k2!=k1)
 117   2                              EPR_Write(i,k1);
 118   2              }
 119   1              
 120   1              for(i=0x0fff;i>ADDR_LOW_END;i--)
 121   1              {
 122   2                      EPR_Page_0();
 123   2                      k1=EPR_Read(i);
 124   2                      EPR_Page_1();
 125   2                      k2=EPR_Read(i);
 126   2                      if(k2!=k1)
 127   2                              EPR_Write(i,k1);
 128   2              }
 129   1              
 130   1              EPRChangeFlag=0;
*** ERROR C202 IN LINE 130 OF IIC[ULTRAL]\RTC_EEPROM.C: 'EPRChangeFlag': undefined identifier
 131   1      }
 132          //////////////////////////////////////////////////////////////////////////
 133          

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

⌨️ 快捷键说明

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