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

📄 driver1302.lst

📁 实现了时间的定时记录
💻 LST
字号:
C51 COMPILER V7.20   DRIVER1302                                                            04/29/2009 23:40:10 PAGE 1   


C51 COMPILER V7.20, COMPILATION OF MODULE DRIVER1302
OBJECT MODULE PLACED IN driver1302.OBJ
COMPILER INVOKED BY: E:\keilUV3\C51\BIN\C51.EXE driver1302.c ROM(COMPACT) BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include "driver1302.h"
   2          #include "stc5410.h"
   3          
   4          void delay()
   5          {
   6   1      uchar i=4;
   7   1      while(i--);
   8   1      }                          
   9          void init1302()
  10          {
  11   1      Sclk=0;delay();
  12   1      Rst=0;
  13   1      writecmd(0x8e);//open write
  14   1      writecmd(0x00);
  15   1      Rst=0;
  16   1      delay();
  17   1      Sclk=0;
  18   1      delay();
  19   1      writecmd(0x90);//trickle charger,R1=2k
  20   1      writecmd(0xa5);//select R1=2k;one DIODE 
  21   1      Rst=0;
  22   1      delay();
  23   1      Sclk=0;
  24   1      delay();
  25   1      writecmd(0x80);//start real time clock
  26   1      writecmd(0x00);
  27   1      Rst=0;
  28   1      delay();
  29   1      Sclk=0;
  30   1      delay();
  31   1      }
  32          
  33          //not finished
  34          uchar gettime(uchar mode)
  35          {
  36   1      uchar i=8;
  37   1      uchar tmp;
  38   1      uchar tmp1;
  39   1      tmp=mode<<1;
  40   1      tmp=0x81|tmp;
  41   1      Sclk=0;
  42   1      delay();
  43   1      Rst=1;
  44   1      delay();
  45   1      writecmd(tmp);//read address
  46   1      i=8;
  47   1      while(i--)
  48   1      {
  49   2      tmp=tmp>>1;     
  50   2      Sclk=0;
  51   2      delay();
  52   2      tmp1=0;
  53   2      tmp1=Io;
  54   2      delay();
  55   2      tmp1=tmp1<<7;
C51 COMPILER V7.20   DRIVER1302                                                            04/29/2009 23:40:10 PAGE 2   

  56   2      tmp=tmp|tmp1;
  57   2      Sclk=1;
  58   2      delay();
  59   2      }
  60   1      Rst=0;
  61   1      delay();
  62   1      Sclk=0;
  63   1      delay();
  64   1      return tmp;
  65   1      }
  66          void writetime(uchar hms,uchar mode)
  67          //modee=5,4,3,2,1,0::year,month,d,h,minute,second
  68          //write hour,minute,second to 1302
  69          {
  70   1      uchar tmp;
  71   1      mode=mode<<1;
  72   1      tmp=0x80|mode;
  73   1      Sclk=0;
  74   1      delay();
  75   1      Rst=1;
  76   1      delay();
  77   1      writecmd(tmp);//address
  78   1      writecmd(hms);  //data
  79   1      Rst=0;
  80   1      delay();
  81   1      Sclk=0;
  82   1      delay();
  83   1      }
  84          //1302 cmd 
  85          void writecmd(uchar cmd) //write cmd,need initialize the signal
  86          {
  87   1      uchar i=8;
  88   1      bit tmp;
  89   1      while(i--)
  90   1      {
  91   2              Sclk=0;
  92   2              delay();
  93   2              tmp=cmd&0x01;
  94   2              Io=tmp;
  95   2              delay();
  96   2              Sclk=1;
  97   2              cmd=cmd>>1;
  98   2      }
  99   1      }


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