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

📄 ds12887.lst

📁 一个分选系统的软件:用SmallRtos操作系统
💻 LST
字号:
C51 COMPILER V7.06   DS12887                                                               12/21/2004 15:11:28 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE DS12887
OBJECT MODULE PLACED IN .\output\DS12887.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE DS12887.C OPTIMIZE(6,SPEED) BROWSE ORDER DEBUG OBJECTEXTEND PRINT(.\output\
                    -DS12887.lst) OBJECT(.\output\DS12887.obj)

stmt level    source

   1          /*********************************************************************************************************
   2          **--------------文件信息--------------------------------------------------------------------------------
   3          **文   件   名: DS12887.C
   4          **创   建   人: 刘宝贵
   5          **最后修改日期: 2004年4月20日
   6          **描        述: 时钟驱动
   7          **
   8          **--------------历史版本信息----------------------------------------------------------------------------
   9          ** 创建人: 刘宝贵
  10          ** 版  本: V1.00
  11          ** 日 期: 2004年4月20日
  12          ** 描 述: 原始版本
  13          **
  14          **------------------------------------------------------------------------------------------------------
  15          ** 修改人:
  16          ** 版  本:
  17          ** 日 期:
  18          ** 描 述:
  19          **
  20          **------------------------------------------------------------------------------------------------------
  21          **--------------当前版本修订------------------------------------------------------------------------------
  22          ** 修改人: 刘宝贵
  23          ** 日 期: 2004年4月20日
  24          ** 描 述:
  25          **
  26          **------------------------------------------------------------------------------------------------------
  27          ********************************************************************************************************/
  28          
  29          #include "config.h"
  30          
  31          /*********************************************************************************************************
  32          ** 函数名称: ConfigMe
  33          ** 功能描述: 系统配置如果是第一次使用将所有参数初始化,DA置为0
  34          ** 输 入:   无
  35          ** 输 出:   无
  36          ** 全局变量:
  37          ** 调用模块: OSSemPend OSSemPost
  38          **
  39          ** 作 者: 刘宝贵
  40          ** 日 期: 2004年5月23日
  41          **-------------------------------------------------------------------------------------------------------
  42          ** 修改人:
  43          ** 日 期:
  44          **-------------------------------------------------------------------------------------------------------
  45          ***************************************************************************************************/
  46           /****************************************************************************/
  47          /****************************************************************************/
  48          /*********************************************************************
  49          * 函数原型:  uint read_ds12887_char(uchar adress)                      *
  50          * 功能:   从ds12887指定地址读取数据                                   *
  51          *********************************************************************/
  52          /******************************************************************************/
  53          
  54          /******************************************************************************/
C51 COMPILER V7.06   DS12887                                                               12/21/2004 15:11:28 PAGE 2   

  55          void time_set(void)
  56          {
  57   1          uint8 idata tempc,tempd ;
  58   1          tempd = read_ds12887_char(13);
  59   1          write_ds12887_char(10,0x70);
  60   1          write_ds12887_char(11,0x8E);
  61   1          write_ds12887_char(0,0);//second
  62   1          write_ds12887_char(2,0);//minute
  63   1          write_ds12887_char(4,9);//hour
  64   1          write_ds12887_char(7,1);//date
  65   1          write_ds12887_char(8,8);//month
  66   1          write_ds12887_char(9,04);//year
  67   1          write_ds12887_char(10,0x26);//A
  68   1          write_ds12887_char(11,0x1E);//B
  69   1          tempc = read_ds12887_char(11);
  70   1      }
  71          /******************************************************************************/
  72          /******************************************************************************/
  73          uint8 read_ds12887_char(uint8 address)
  74          {
  75   1          uint8 dsdata;
  76   1      //    DSDS  P60  1:|0x1   0:&0xFE
  77   1      //    DSRW  P61  1:|0x2   0:&0xFD
  78   1      //    DSAS  P62  1:|0x4   0:&0xFB
  79   1      //    DSCS  P63  1:|0x8   0:&0xF7
  80   1      
  81   1      //    DSAS=0;
  82   1          P6 = P6 & 0xFB;
  83   1      //    DSDS=1;
  84   1          P6 = P6 | 0x1;
  85   1      //    DSRW=0;
  86   1          P6 = P6 & 0xFD;
  87   1      //    DSCS=1;
  88   1          P6 = P6 | 0x8;
  89   1      //    DSDS=0;
  90   1          P6 = P6 & 0xFE;
  91   1      //    DSAS=1;
  92   1          P6 = P6 | 0x4;  
  93   1          P5=address;
  94   1      //    DSCS=0;
  95   1          P6 = P6 & 0xF7;
  96   1      //    DSAS=0;
  97   1          P6 = P6 & 0xFB;
  98   1      //    DSRW=1;
  99   1          P6 = P6 | 0x2;
 100   1      //    DSDS=1;
 101   1          P6 = P6 | 0x1;
 102   1          P5=0xFF;_nop_();_nop_();
 103   1          dsdata=P5;
 104   1      //    DSDS=0;
 105   1          P6 = P6 & 0xFE ;
 106   1      //    DSRW=1;
 107   1          P6 = P6 | 0x2;
 108   1      //    DSAS=1;
 109   1          P6 = P6 | 0x4;
 110   1      //    DSCS=1;
 111   1          P6 = P6 | 0x8;
 112   1          return (dsdata);
 113   1      }
 114          /*********************************************************************
 115          * 函数原型:write_ds12887_char(unsigned char adress,unsigned char temp) *
 116          * 功能:   在ds12887指定地址写一个char的数据                            *
C51 COMPILER V7.06   DS12887                                                               12/21/2004 15:11:28 PAGE 3   

 117          *********************************************************************/
 118          
 119          /**************************************************************/
 120          void write_ds12887_char(uint8 address,uint8 dsdata)
 121          {
 122   1      //    DSDS  P60  1:|0x1   0:&0xFE
 123   1      //    DSRW  P61  1:|0x2   0:&0xFD
 124   1      //    DSAS  P62  1:|0x4   0:&0xFB
 125   1      //    DSCS  P63  1:|0x8   0:&0xF7
 126   1      
 127   1      //    DSAS=0;
 128   1          P6 = P6 & 0xFB;
 129   1      //    DSDS=1;
 130   1          P6 = P6 | 0x1;
 131   1      //    DSRW=1;
 132   1          P6 = P6 | 0x2;
 133   1      //    DSCS=1;
 134   1          P6 = P6 | 0x8;
 135   1      //    DSDS=0;
 136   1          P6 = P6 & 0xFE;
 137   1      //    DSAS=1;
 138   1          P6 = P6 | 0x4;
 139   1          P5=address;
 140   1      //    DSCS=0;
 141   1          P6 = P6 & 0xF7;    
 142   1      //    DSAS=0;
 143   1          P6 = P6 & 0xFB;
 144   1      //    DSRW=0;
 145   1          P6 = P6 & 0xFD;
 146   1      //    DSDS=1;
 147   1          P6 = P6 | 0x1;    
 148   1          P5=dsdata;
 149   1      //    DSDS=0;
 150   1          P6 = P6 & 0xFE;   
 151   1      //    DSRW=1;
 152   1          P6 = P6 | 0x2;
 153   1      //    DSAS=1;
 154   1          P6 = P6 | 0x4;
 155   1      //    DSCS=1;
 156   1          P6 = P6 | 0x8;
 157   1       }
 158          /**************************************************************/


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    187    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----       2
   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 + -