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

📄 ds1302.lst

📁 KEIL下编的SST89E58单片机万年历(定时器)程序
💻 LST
字号:
C51 COMPILER V7.06   DS1302                                                                10/21/2008 02:27:25 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE DS1302
OBJECT MODULE PLACED IN DS1302.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE DS1302.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          /*
   2           *      Copyright (C) 2007, 华中科技大学电气与电子科技创新中心
   3           *      All Rights Reserved.
   4           *      
   5           *      文件名:         DS1302.c
   6           *      文件描述:       DS1302驱动程序
   7           *                      
   8           *      当前版本:       1.0
   9           *      作者:           Zuowenping(fmku007@163.com)
  10           *      完成日期:       2008年10月20日
  11           *      
  12          */
  13          
  14          #include "DS1302.h"
  15          
  16          /**************************************
  17          ///////////////写DS1302,(地址/数据)
  18          ***************************************/
  19          void wr_ds1302(unsigned char addr1,unsigned char data1)
  20          {unsigned char i;
  21   1              CE=0;
  22   1              nop();
  23   1              CE=1;
  24   1              for(i=0;i<8;i++)         //////address
  25   1                      {       SCLK=0;
  26   2                              DATA=(bit)((addr1>>i)&0x01);
  27   2                              nop();
  28   2                              SCLK=1;
  29   2                              nop();
  30   2                      }
  31   1              for(i=0;i<8;i++)             //////data
  32   1                      {       SCLK=0;
  33   2                              DATA=(bit)((data1>>i)&0x01);
  34   2                              nop();
  35   2                              SCLK=1;
  36   2                              nop();
  37   2                      }
  38   1                      SCLK=0;
  39   1                      CE=0;
  40   1       }
  41          /**************************************
  42          ///////////////读DS1302,(地址/数据)
  43          ***************************************/
  44          unsigned char rd_ds1302(unsigned char addr1)
  45           {unsigned char i,dataout;
  46   1              CE=0;
  47   1              nop();
  48   1              CE=1;   
  49   1              for(i=0;i<8;i++)         //////address
  50   1                      {       SCLK=0;
  51   2                              DATA=(bit)((addr1>>i)&0x01);
  52   2                              nop();
  53   2                              SCLK=1;
  54   2                              nop();
  55   2                      }
C51 COMPILER V7.06   DS1302                                                                10/21/2008 02:27:25 PAGE 2   

  56   1                      dataout=0;
  57   1              for(i=0;i<8;i++)         //////data out
  58   1                      {       SCLK=1;
  59   2                              nop();
  60   2                              DATA=1;
  61   2                          SCLK=0;
  62   2                              nop();                  
  63   2                              dataout|=(((char)DATA)<<i);
  64   2                      }
  65   1              CE=0;
  66   1      
  67   1                      return(dataout);
  68   1      
  69   1      }
  70          
  71          
  72          /**************************************
  73          ///////////////充电控制,(地址/数据)
  74          ***************************************/
  75          void ChargeCtrl(bit Ctrl)
  76          {
  77   1              unsigned char temp=rd_ds1302(RdSec);
  78   1              if(Ctrl)
  79   1                      wr_ds1302(WrSec,temp|0x80);
  80   1              else
  81   1                      wr_ds1302(WrSec,temp&0x7f);
  82   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    213    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     21       7
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       1
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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