亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ds1302.lst

?? 用于GPRS遠程電力抄表系統中采集器端的程序
?? LST
字號:
C51 COMPILER V7.50   DS1302                                                                07/19/2006 10:05:10 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE DS1302
OBJECT MODULE PLACED IN ds1302.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE ds1302.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include "ds1302.h"
   2          
   3          void    wr_oneword_ds1302(uchar,uchar);
   4          uchar   rd_oneword_ds1302(uchar);
   5          void    delay1302(void);
   6          
   7          uchar    xdata    rdtime[6] = {0};
   8          uchar    xdata    inittime[6]={0};//初始時間(yy,mm,dd,hh,mm,ss)
   9          
  10          sbit    sck1302    =P1^5;    //1302的clock
  11          sbit    sio1302    =P1^6;    //1302的io口
  12          sbit    rst1302    =P1^7;    //1302的rst
  13          
  14          
  15          /************************************************************/
  16          /*函數名:ds1302set
  17          /*描述:設置1302的時間
  18          /*輸入:inittime:初始時間暫存區頭指針
  19          /*輸出:無
  20          /************************************************************/
  21          void    ds1302set(void)
  22              {
  23   1              uchar    xdata    *inittimeptr;
  24   1              uchar    ctrl1302;    //存放1302控制碼
  25   1              uchar    data1302;    //存放1302數據
  26   1              inittimeptr=inittime;
  27   1      
  28   1              ctrl1302=0x8e;        
  29   1              data1302=0x00;        //控制字(允許寫)
  30   1              wr_oneword_ds1302(ctrl1302,data1302);
  31   1      
  32   1              ctrl1302=0x80;        //禁止1302
  33   1              data1302=0x80;
  34   1              wr_oneword_ds1302(ctrl1302,data1302);        
  35   1          
  36   1              
  37   1              ctrl1302=0x8c;        //寫入年
  38   1              data1302=*inittimeptr;
  39   1              wr_oneword_ds1302(ctrl1302,data1302);
  40   1              inittimeptr++;
  41   1      
  42   1              ctrl1302=0x88;        //寫入月
  43   1              data1302=*inittimeptr;
  44   1              wr_oneword_ds1302(ctrl1302,data1302);
  45   1              inittimeptr++;        
  46   1      
  47   1              ctrl1302=0x86;        //寫入日期
  48   1              data1302=*inittimeptr;
  49   1              wr_oneword_ds1302(ctrl1302,data1302);
  50   1              inittimeptr++;        
  51   1      
  52   1              ctrl1302=0x84;        //寫入小時
  53   1              data1302=*inittimeptr;
  54   1              data1302&=0x7f;//24小時制
  55   1              wr_oneword_ds1302(ctrl1302,data1302);
C51 COMPILER V7.50   DS1302                                                                07/19/2006 10:05:10 PAGE 2   

  56   1              inittimeptr++;        
  57   1              
  58   1              ctrl1302=0x82;        //寫入分
  59   1              data1302=*inittimeptr;
  60   1              wr_oneword_ds1302(ctrl1302,data1302);
  61   1              inittimeptr++;    
  62   1      
  63   1              ctrl1302=0x80;
  64   1              data1302=*inittimeptr;
  65   1              data1302|=0x80;
  66   1              wr_oneword_ds1302(ctrl1302,data1302);
  67   1      
  68   1              ctrl1302=0x80;        //寫入秒 
  69   1              data1302=*inittimeptr;
  70   1              data1302&=0x7f;//開始計時
  71   1              wr_oneword_ds1302(ctrl1302,data1302);    
  72   1                      
  73   1              ctrl1302=0x90;
  74   1              data1302=0xa5;
  75   1              wr_oneword_ds1302(ctrl1302,data1302);//trikle charger    
  76   1          
  77   1      
  78   1              ctrl1302=0x8e;        //結束(寫保護)
  79   1              data1302=0x80;
  80   1              wr_oneword_ds1302(ctrl1302,data1302);    
  81   1          
  82   1          }
  83          /***********************************************************/
  84          /*函數名:ds1302read
  85          /*描述:讀出1302計數器中的當前值
  86          /*輸入:inittime:讀出數據保存區的頭指針
  87          /*輸出:無
  88          /***********************************************************/
  89          void    ds1302read(void)    //讀1302內部數據
  90              {    
  91   1              uchar    ctrl1302;
  92   1              uchar    data1302;
  93   1      
  94   1              uchar    xdata        *inittimep;
  95   1              inittimep = rdtime;
  96   1      
  97   1              ctrl1302=0x8e;        
  98   1              data1302=0x00;        //控制字(允許寫)
  99   1              wr_oneword_ds1302(ctrl1302,data1302);
 100   1      
 101   1              ctrl1302=0x8d;        //讀入年
 102   1              data1302=rd_oneword_ds1302(ctrl1302);
 103   1              *inittimep = data1302;
 104   1              inittimep++;
 105   1      
 106   1      
 107   1              ctrl1302=0x89;        //讀入月
 108   1              data1302=rd_oneword_ds1302(ctrl1302);
 109   1              *inittimep=data1302;
 110   1              inittimep++;
 111   1      
 112   1      
 113   1              ctrl1302=0x87;        //讀入日期
 114   1              data1302=rd_oneword_ds1302(ctrl1302);
 115   1              *inittimep=data1302;
 116   1              inittimep++;
 117   1      
C51 COMPILER V7.50   DS1302                                                                07/19/2006 10:05:10 PAGE 3   

 118   1              ctrl1302=0x85;        //讀入小時
 119   1              data1302=rd_oneword_ds1302(ctrl1302);
 120   1              *inittimep=data1302;
 121   1              inittimep++;
 122   1      
 123   1              ctrl1302=0x83;        //讀入分鐘
 124   1              data1302=rd_oneword_ds1302(ctrl1302);
 125   1              *inittimep=data1302;
 126   1              inittimep++;
 127   1      
 128   1              ctrl1302=0x81;        //讀入秒
 129   1              data1302=rd_oneword_ds1302(ctrl1302);
 130   1              *inittimep=data1302;
 131   1      
 132   1              ctrl1302=0x8e;        //結束(寫保護)
 133   1              data1302=0x80;
 134   1              wr_oneword_ds1302(ctrl1302,data1302);
 135   1              inittimep = rdtime;
 136   1          //    return(inittimep);    
 137   1          }
 138          
 139          /*************************************************************/
 140          /*函數名:wr_oneword_ds1302
 141          /*描述:向ds1302的某一指定單元寫入一字節
 142          /*輸入:ctrl1302:命令字節
 143                  data1302:數據字節
 144          /*輸出:無
 145          /************************************************************/
 146          void    wr_oneword_ds1302(uchar    ctrl1302,uchar    data1302)
 147              {
 148   1              uchar    i;
 149   1              uchar    ds1302tmp;
 150   1              ds1302tmp =ctrl1302;
 151   1              ds1302tmp|=0x80;//控制碼最高位必須位1
 152   1              ds1302tmp&=0xfe;//寫入時,最低位必須為0
 153   1              sck1302 =0;//當把rst驅動為1時,sck必須為0
 154   1              delay1302();
 155   1              rst1302 =1;//只有rst為高時,才允許數據傳送
 156   1      
 157   1              for(i=0;i<8;i++)//寫入控制碼
 158   1              {
 159   2                  sck1302 =0;
 160   2                  delay1302();
 161   2                  if(ds1302tmp&0x01)
 162   2                      sio1302 =1;
 163   2                  else
 164   2                      sio1302 =0;
 165   2                  _nop_();
 166   2                  _nop_();
 167   2                  sck1302 =1;//上升沿將數據寫入
 168   2                  delay1302();
 169   2                  ds1302tmp>>=1;
 170   2              }
 171   1      
 172   1              ds1302tmp =data1302;//寫入數據
 173   1              for(i=0;i<8;i++)
 174   1              {
 175   2                  sck1302 =0;
 176   2                  delay1302();
 177   2                  if(ds1302tmp&0x01)
 178   2                      sio1302 =1;
 179   2                  else    
C51 COMPILER V7.50   DS1302                                                                07/19/2006 10:05:10 PAGE 4   

 180   2                      sio1302 =0;
 181   2                  _nop_();
 182   2                  _nop_();
 183   2                  sck1302 =1;
 184   2                  delay1302();
 185   2                  ds1302tmp>>=1;
 186   2              }
 187   1              _nop_();
 188   1              _nop_();
 189   1              rst1302 =0;//禁止芯片操作
 190   1              sck1302 =0;//恢復原有狀態
 191   1              
 192   1          }
 193          /************************************************************/
 194          /*函數名:rd_oneword_ds1302
 195          /*描述:從ds1302的指定單元讀出一字節
 196          /*輸入:ctrl1302:指定要讀取的單元
 197          /*輸出:讀取的字節
 198          /***********************************************************/
 199          uchar    rd_oneword_ds1302(uchar    ctrl1302)
 200              {
 201   1              
 202   1              uchar    i;
 203   1              uchar    ds1302tmp;
 204   1              ds1302tmp =ctrl1302;
 205   1              ds1302tmp|=0x80;//控制碼最高位必須為1
 206   1              ds1302tmp|=0x01;//讀出時,最低位必須為1
 207   1              sck1302 =0;//當把rst驅動為1時,sck必須為0
 208   1              delay1302();
 209   1              rst1302 =1;//只有rst為高時,才允許數據傳送
 210   1      
 211   1              for(i=0;i<8;i++)//輸出控制碼
 212   1              {
 213   2                  sck1302 =0;
 214   2                  delay1302();
 215   2                  if(ds1302tmp&0x01)
 216   2                      sio1302 =1;
 217   2                  else    
 218   2                      sio1302 =0;
 219   2                  _nop_();
 220   2                  _nop_();
 221   2                  sck1302 =1;
 222   2                  delay1302();
 223   2                  ds1302tmp>>=1;    
 224   2              }
 225   1          
 226   1              for(i=0;i<8;i++)//讀出控制碼指定單元內容
 227   1              {    
 228   2                  ds1302tmp>>=1;
 229   2                  sck1302 =1;
 230   2                  delay1302();
 231   2                  sck1302 =0;
 232   2                  delay1302();
 233   2                  if(sio1302)
 234   2                      ds1302tmp|=0x80;//最高位為1
 235   2                  else
 236   2                      ds1302tmp&=0x7f;//最高位為0
 237   2                  delay1302();
 238   2              }
 239   1              rst1302 =0;//禁止芯片操作
 240   1              sck1302 =0;//恢復原有狀態
 241   1              return(ds1302tmp);
C51 COMPILER V7.50   DS1302                                                                07/19/2006 10:05:10 PAGE 5   

 242   1          }
 243          /*****************************************/
 244          /*函數名:delay1302
 245          /*描述:延時,使程序時序符合芯片要求
 246          /*輸入:無 
 247          /*輸出:無
 248          /****************************************/
 249          void    delay1302(void)//對于11.0592Mhz,延時為1us
 250              {
 251   1              _nop_();
 252   1              _nop_();
 253   1              _nop_();
 254   1              _nop_();
 255   1              _nop_();
 256   1              _nop_();
 257   1              _nop_();
 258   1              _nop_();
 259   1              _nop_();
 260   1              _nop_();
 261   1          } 
 262          
 263          
 264          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    532    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =     12    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       9
   IDATA SIZE       =   ----    ----
   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 + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看91视频| 成人免费黄色在线| 亚洲尤物在线视频观看| 亚洲女同一区二区| 一区在线播放视频| 综合久久久久久久| 亚洲欧美偷拍另类a∨色屁股| 久久综合精品国产一区二区三区| 精品国产乱码久久久久久图片| 日韩一区二区在线播放| 26uuu另类欧美亚洲曰本| www久久精品| 国产精品久久久久9999吃药| 亚洲女子a中天字幕| 一个色综合网站| 视频在线观看91| 国产一区二区三区四| 成人一区二区在线观看| 一本色道久久综合亚洲91| 欧美日韩五月天| 欧美精品一区二区三区蜜桃| 中文字幕av资源一区| 亚洲精品欧美综合四区| 日韩国产欧美在线观看| 国产一区 二区 三区一级| 不卡一区二区在线| 欧美军同video69gay| 久久久久久久电影| 夜夜夜精品看看| 国产真实乱子伦精品视频| av网站免费线看精品| 欧美日韩国产首页在线观看| 久久久久一区二区三区四区| 一区av在线播放| 国产一区二区成人久久免费影院| 97国产精品videossex| 91精品福利在线一区二区三区 | 91美女在线看| 欧美一级二级在线观看| 国产精品久久久久久久久晋中 | 成人h版在线观看| 欧美美女bb生活片| 欧美国产日韩亚洲一区| 亚洲成在人线免费| av在线这里只有精品| 精品日韩在线观看| 午夜日韩在线电影| 色94色欧美sute亚洲13| 国产欧美中文在线| 精品一二三四在线| 91精品国产综合久久婷婷香蕉| 成人免费在线观看入口| 色综合久久久久综合体桃花网| 日韩精品一区二区三区四区 | 午夜日韩在线电影| 99在线精品视频| 26uuu精品一区二区| 肉丝袜脚交视频一区二区| 91麻豆国产福利精品| 国产精品国产三级国产专播品爱网| 美腿丝袜亚洲一区| 欧美高清视频一二三区 | 色狠狠桃花综合| 日本一区二区三区四区| 国产在线一区二区| 欧美精品一区二区在线观看| 美国十次了思思久久精品导航| 91麻豆精品国产91久久久更新时间| 洋洋成人永久网站入口| 99久久婷婷国产精品综合| 国产精品你懂的| 成人午夜电影网站| 国产亚洲精品中文字幕| 国产福利一区二区| 国产午夜久久久久| 粉嫩aⅴ一区二区三区四区 | 日本美女视频一区二区| 欧美精品一卡两卡| 日本aⅴ免费视频一区二区三区| 欧美日韩中文字幕一区| 亚洲国产成人高清精品| 欧美精品视频www在线观看| 日韩不卡免费视频| 精品国产乱码久久久久久闺蜜| 日韩电影在线一区二区三区| 日韩视频免费直播| 精品无人码麻豆乱码1区2区| 国产午夜三级一区二区三| 成人av资源在线| 一二三四社区欧美黄| 欧美一区二区三区免费观看视频 | 欧美亚洲禁片免费| 日韩中文字幕区一区有砖一区| 91精品国产综合久久久蜜臀粉嫩 | 在线视频你懂得一区| 五月婷婷综合激情| 久久综合九色综合97_久久久| 成人免费观看av| 亚洲va韩国va欧美va精品| 亚洲精品一区二区三区在线观看 | 一区二区三区视频在线看| 欧美系列亚洲系列| 精品一区精品二区高清| 国产精品毛片大码女人| 欧美丰满一区二区免费视频| 精品一区二区三区视频在线观看 | 色婷婷激情综合| 青青草精品视频| 国产精品人妖ts系列视频 | 欧美日韩精品一区二区三区四区| 亚洲第一主播视频| 国产午夜精品久久久久久免费视| 色94色欧美sute亚洲线路一ni| 久久99精品久久久久婷婷| 亚洲私人黄色宅男| 欧美va在线播放| 91女厕偷拍女厕偷拍高清| 狠狠色2019综合网| 亚洲午夜一二三区视频| 国产精品污www在线观看| 欧美一区二区在线播放| 成年人网站91| 国产资源精品在线观看| 婷婷久久综合九色综合伊人色| 国产精品麻豆欧美日韩ww| 日韩视频一区二区在线观看| 欧美性猛交一区二区三区精品| 粉嫩高潮美女一区二区三区| 蜜桃av一区二区| 亚洲h在线观看| 亚洲精品免费在线播放| 中文文精品字幕一区二区| 欧美电影一区二区| 欧美区在线观看| 色婷婷综合久色| jiyouzz国产精品久久| 国产一区二区电影| 麻豆国产91在线播放| 天涯成人国产亚洲精品一区av| 亚洲精品国产a| 国产精品女主播av| 中文天堂在线一区| 国产精品传媒入口麻豆| 久久无码av三级| 亚洲精品一区二区三区香蕉| 欧美一区二区大片| 91精品欧美综合在线观看最新 | 国产欧美一区二区精品性色超碰| 日韩欧美在线网站| 91精选在线观看| 日韩欧美激情一区| 精品三级在线看| 亚洲精品一区二区三区99| 欧美大片免费久久精品三p | 国内精品久久久久影院一蜜桃| 日韩激情av在线| 日本成人在线电影网| 麻豆成人综合网| 国产精品99久久久久久久女警| 国产黄色91视频| 成人深夜在线观看| 97久久精品人人做人人爽| 99国产一区二区三精品乱码| 99re这里只有精品6| 欧美亚洲国产bt| 日韩一区和二区| 国产欧美一区二区精品性色超碰| 一区在线中文字幕| 亚洲国产精品嫩草影院| 日韩电影在线免费观看| 激情综合色综合久久综合| 北条麻妃一区二区三区| 精品视频免费在线| 久久综合久久综合亚洲| 国产精品福利影院| 亚洲午夜视频在线观看| 喷水一区二区三区| 国产不卡免费视频| 欧美性高清videossexo| 欧美大片日本大片免费观看| 国产精品午夜电影| 日韩av中文在线观看| 成人免费不卡视频| 欧美日韩成人综合天天影院| 久久免费国产精品| 亚洲精品大片www| 激情深爱一区二区| 色综合久久综合网97色综合 | 91亚洲午夜精品久久久久久| 欧美日韩一区二区三区免费看| 日韩亚洲电影在线| 亚洲色图欧美偷拍| 久久99精品视频| 精品视频1区2区| 欧美国产日韩a欧美在线观看| 亚洲444eee在线观看| 成人蜜臀av电影| 日韩精品一区二区三区swag| 亚洲制服欧美中文字幕中文字幕| 国产精品一区三区|