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

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

?? testtime.c

?? 這是我測試pcf8563的程序
?? C
字號:
#include <reg52.H>
#include <absacc.h>
#include <string.h>
#include <intrins.h>
#include <math.h>
#define uint  		unsigned int
#define uchar 		unsigned char
#define ulong		unsigned long

#define ulong unsigned long

//I2C定義位
sbit SDA=P2^1;            //模擬I2C數(shù)據(jù)傳送位
sbit SCL=P2^0;            //模擬I2C時鐘控制位
bit ack;	              //應答標志位

uchar P8563_Store[5]; /*時間交換區(qū),全局變量聲明*/
uchar code CP8563_Store[5]={0x21,0x09,0x28,0x11,0x08}; /*寫入時間初值:08-11-20 00:00*/
/********************************************************************************
	                             I2C總線協(xié)議
********************************************************************************/


/*******************************************************************
                    (1) 起動總線函數(shù)
函數(shù)原型: void  Start_I2c();
功能:       啟動I2C總線,即發(fā)送I2C起始條件.

********************************************************************/
void Start_I2c()
{
  SDA=1;             //發(fā)送起始條件的數(shù)據(jù)信號
  _nop_();
  SCL=1;
  _nop_();         //起始條件建立時間大于4.7us,延時
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  SDA=0;           //發(fā)送起始信號
  _nop_();        // 起始條件鎖定時間大于4μs
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  SCL=0;             //鉗住I2C總線,準備發(fā)送或接收數(shù)據(jù)
  _nop_();
  _nop_();
}
/*******************************************************************
                     (2)結(jié)束總線函數(shù)
函數(shù)原型: void  Stop_I2c();
功能:       結(jié)束I2C總線,即發(fā)送I2C結(jié)束條件.
 ********************************************************************/
void Stop_I2c()
{
  SDA=0;              //發(fā)送結(jié)束條件的數(shù)據(jù)信號
  _nop_();           //發(fā)送結(jié)束條件的時鐘信號
  SCL=1;             //結(jié)束條件建立時間大于4μs
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  SDA=1;            //發(fā)送I2C總線結(jié)束信號
  _nop_();
  _nop_();
  _nop_();
  _nop_();
}
/*******************************************************************
                (3)字節(jié)數(shù)據(jù)發(fā)送函數(shù)
函數(shù)原型: void  SendByte(uchar c);
功能:  將數(shù)據(jù)c發(fā)送出去,可以是地址,也可以是數(shù)據(jù),發(fā)完后等待應答,并對
     此狀態(tài)位進行操作.(不應答或非應答都使ack=0 假)
     發(fā)送數(shù)據(jù)正常,ack=1; ack=0表示被控器無應答或損壞。
********************************************************************/
void  SendByte(uchar c)
{
 uchar BitCnt;
  for(BitCnt=0;BitCnt<8;BitCnt++)  //要傳送的數(shù)據(jù)長度為8位
    {
     if((c<<BitCnt)&0x80)SDA=1;   //判斷發(fā)送位
       else  SDA=0;
     _nop_();
     SCL=1;               //置時鐘線為高,通知被控器開始接收數(shù)據(jù)位
      _nop_();
      _nop_();               //保證時鐘高電平周期大于4μs
      _nop_();
      _nop_();
      _nop_();
     SCL=0;
    }
    _nop_();
    _nop_();
    SDA=1;               //8位發(fā)送完后釋放數(shù)據(jù)線,準備接收應答位
    _nop_();
    _nop_();
    SCL=1;
    _nop_();
    _nop_();
    _nop_();
    if(SDA==1)ack=0;
       else ack=1;        //判斷是否接收到應答信號
    SCL=0;
    _nop_();
    _nop_();
}
/*******************************************************************
                 (4)字節(jié)數(shù)據(jù)接收函數(shù)
函數(shù)原型: uchar  RcvByte();
功能:  用來接收從器件傳來的數(shù)據(jù),并判斷總線錯誤(不發(fā)應答信號),
     發(fā)完后請用應答函數(shù)。
********************************************************************/
uchar  RcvByte()
{
  uchar retc;
  uchar BitCnt;

  retc=0;
  SDA=1;             //置數(shù)據(jù)線為輸入方式
  for(BitCnt=0;BitCnt<8;BitCnt++)
      {
        _nop_();
        SCL=0;          //置時鐘線為低,準備接收數(shù)據(jù)位
        _nop_();
        _nop_();         //時鐘低電平周期大于4.7μs
        _nop_();
        _nop_();
        _nop_();
        SCL=1;       //置時鐘線為高使數(shù)據(jù)線上數(shù)據(jù)有效
        _nop_();
        _nop_();
        retc=retc<<1;
        if(SDA==1)retc=retc+1; //讀數(shù)據(jù)位,接收的數(shù)據(jù)位放入retc中
        _nop_();
        _nop_();
      }
  SCL=0;
  _nop_();
  _nop_();
  return(retc);
}
/********************************************************************
                     (5)應答子函數(shù)
原型:  void Ack_I2c(bit a);

功能:主控器進行應答信號,(可以是應答或非應答信號)
********************************************************************/
void Ack_I2c(bit a)
{

  if(a==0)SDA=0;     //在此發(fā)出應答或非應答信號
        else SDA=1;
  _nop_();
  _nop_();
  _nop_();
  SCL=1;
    _nop_();
    _nop_();             //時鐘低電平周期大于4μs
    _nop_();
    _nop_();
    _nop_();
 SCL=0;                //清時鐘線,鉗住I2C總線以便繼續(xù)接收
    _nop_();
    _nop_();
}
/*******************************************************************
                    (6)向無子地址器件發(fā)送字節(jié)數(shù)據(jù)函數(shù)
函數(shù)原型: bit  ISendByte(uchar sla,ucahr c);
功能:     從啟動總線到發(fā)送地址,數(shù)據(jù),結(jié)束總線的全過程,從器件地址sla.
           如果返回1表示操作成功,否則操作有誤。
注意:    使用前必須已結(jié)束總線。
********************************************************************/
bit ISendByte(uchar sla,uchar c)
{
   Start_I2c();               //啟動總線
   SendByte(sla);            //發(fā)送器件地址
     if(ack==0)return(0);
   SendByte(c);               //發(fā)送數(shù)據(jù)
     if(ack==0)return(0);
  Stop_I2c();                 //結(jié)束總線
  return(1);
}
/*******************************************************************
                    (7)向有子地址器件發(fā)送多字節(jié)數(shù)據(jù)函數(shù)
函數(shù)原型: bit  ISendStr(uchar sla,uchar suba,ucahr *s,uchar no);
功能:     從啟動總線到發(fā)送地址,子地址,數(shù)據(jù),結(jié)束總線的全過程,從器件
          地址sla,子地址suba,發(fā)送內(nèi)容是s指向的內(nèi)容,發(fā)送no個字節(jié)。
           如果返回1表示操作成功,否則操作有誤。
注意:    使用前必須已結(jié)束總線。
********************************************************************/
bit ISendStr(uchar sla,uchar suba,uchar *s,uchar no)
{
   uchar i;

   Start_I2c();               //啟動總線
   SendByte(sla);            //發(fā)送器件地址
     if(ack==0)return(0);
   SendByte(suba);            //發(fā)送器件子地址
     if(ack==0)return(0);

   for(i=0;i<no;i++)
    {
     SendByte(*s);               //發(fā)送數(shù)據(jù)
       if(ack==0)return(0);
     s++;
    }
 Stop_I2c();                 //結(jié)束總線
  return(1);
}
/*******************************************************************
                    (8)向無子地址器件讀字節(jié)數(shù)據(jù)函數(shù)
函數(shù)原型: bit  IRcvByte(uchar sla,ucahr *c);
功能:     從啟動總線到發(fā)送地址,讀數(shù)據(jù),結(jié)束總線的全過程,從器件地
          址sla,返回值在c.
           如果返回1表示操作成功,否則操作有誤。
注意:    使用前必須已結(jié)束總線。
********************************************************************/
bit IRcvByte(uchar sla,uchar *c)
{
   Start_I2c();                //啟動總線
   SendByte(sla+1);           //發(fā)送器件地址
     if(ack==0)return(0);
   *c=RcvByte();               //讀取數(shù)據(jù)
     Ack_I2c(1);               //發(fā)送非就答位
  Stop_I2c();                  //結(jié)束總線
  return(1);
}
/*******************************************************************
                    (9)向有子地址器件讀取多字節(jié)數(shù)據(jù)函數(shù)
函數(shù)原型: bit  ISendStr(uchar sla,uchar suba,ucahr *s,uchar no);
功能:     從啟動總線到發(fā)送地址,子地址,讀數(shù)據(jù),結(jié)束總線的全過程,從器件
          地址sla,子地址suba,讀出的內(nèi)容放入s指向的存儲區(qū),讀no個字節(jié)。
           如果返回1表示操作成功,否則操作有誤。
注意:    使用前必須已結(jié)束總線。
********************************************************************/
bit IRcvStr(uchar sla,uchar suba,uchar *s,uchar no)
{
   uchar i;

   Start_I2c();               //啟動總線
   SendByte(sla);            //發(fā)送器件地址
     if(ack==0)return(0);
   SendByte(suba);            //發(fā)送器件子地址
     if(ack==0)return(0);
   Start_I2c();
   SendByte(sla+1);
      if(ack==0)return(0);
   for(i=0;i<no-1;i++)
    {
     *s=RcvByte();               //發(fā)送數(shù)據(jù)
      Ack_I2c(0);                //發(fā)送就答位
     s++;
    }
   *s=RcvByte();
    Ack_I2c(1);                 //發(fā)送非應位
 Stop_I2c();                    //結(jié)束總線
  return(1);
}

/*******************************************************************
                    向有子地址器件發(fā)送字節(jié)數(shù)據(jù)函數(shù)
函數(shù)原型: bit  ISendByte(uchar sla,uchar suba,uchar c);
功能:     從啟動總線到發(fā)送地址,數(shù)據(jù),結(jié)束總線的全過程,從器件地址sla,
          子地址suba,如果返回1表示操作成功,否則操作有誤。
注意:    使用前必須已結(jié)束總線。
********************************************************************/
bit ISendByte3(uchar sla,uchar suba,uchar c)
{
   Start_I2c();               /*啟動總線*/
   SendByte(sla);            /*發(fā)送器件地址*/
     if(ack==0)return(0);
  SendByte(suba);            /*發(fā)送器件地址*/
     if(ack==0)return(0);
   SendByte(c);               /*發(fā)送數(shù)據(jù)*/
     if(ack==0)return(0);
  Stop_I2c();                 /*結(jié)束總線*/
  return(1);
}

/*******************************************************************
                    向有子地址器件讀字節(jié)數(shù)據(jù)函數(shù)
函數(shù)原型: bit  IRcvByte(uchar sla,ucahr *c);
功能:     從啟動總線到發(fā)送地址,讀數(shù)據(jù),結(jié)束總線的全過程,從器件地
          址sla,返回值在c.
           如果返回1表示操作成功,否則操作有誤。
注意:    使用前必須已結(jié)束總線。
********************************************************************/
uchar IRcvByte2(uchar sla,uchar suba)
{
uchar c;
   Start_I2c();                /*啟動總線*/
   SendByte(sla);           /*發(fā)送器件地址*/
     if(ack==0)return(0);
   SendByte(suba);           /*發(fā)送子器件地址*/
     if(ack==0)return(0);

  Start_I2c();

 SendByte(sla+1);           /*發(fā)讀器件地址*/
     if(ack==0)return(0);
   c=RcvByte();               /*讀取數(shù)據(jù)*/
     Ack_I2c(1);               /*發(fā)送非就答位*/
  Stop_I2c();                  /*結(jié)束總線*/
  return c;
}

void main()
{
	
	 uchar min1,hour1,day1,mon1,year1;
	uchar min10,hour10,day10,mon10,year10;
	 ISendByte3(0xa2,0x00,0x00);
	 ISendByte3(0xa2,0x03,CP8563_Store[0]);//分
	 ISendByte3(0xa2,0x04,CP8563_Store[1]);//時
	 ISendByte3(0xa2,0x05,CP8563_Store[2]);//日
	 ISendByte3(0xa2,0x07,CP8563_Store[3]);//月
	 ISendByte3(0xa2,0x08,CP8563_Store[4]);//年
	while(1) 
	 {
	  P8563_Store[0]=IRcvByte2(0xa2, 0x03);
	  P8563_Store[1]=IRcvByte2(0xa2, 0x04);
	  P8563_Store[2]=IRcvByte2(0xa2, 0x05);
	  P8563_Store[3]=IRcvByte2(0xa2, 0x07);
	  P8563_Store[4]=IRcvByte2(0xa2, 0x08);
	 
  
	
	min1=P8563_Store[0]&0x0f;
	min10=P8563_Store[0]>>4&0x07;
	hour1=P8563_Store[1]&0x0f;
	hour10=P8563_Store[1]>>4&0x07; 
	day1=P8563_Store[2]&0x0f;
	day10=P8563_Store[2]>>4&0x03;
	mon1=P8563_Store[3]&0x0f;
	mon10=P8563_Store[3]>>4&0x01;
	year1=P8563_Store[4]&0x0f;
	year10=P8563_Store[4]>>4&0x0f;
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲高清视频中文字幕| 日韩三级精品电影久久久| 欧美日韩国产一级| 国产欧美精品国产国产专区| 日韩高清国产一区在线| 91在线精品秘密一区二区| 欧美成人一级视频| 亚洲制服欧美中文字幕中文字幕| 国产电影精品久久禁18| 91精品国产一区二区人妖| 日韩理论片中文av| 97se亚洲国产综合在线| 色一情一伦一子一伦一区| 欧美一区二区三区小说| 中文字幕日本不卡| 国产精品一区2区| 日韩三级视频在线观看| 肉色丝袜一区二区| 色欧美片视频在线观看| 国产精品高清亚洲| 国产成人av福利| 久久久久88色偷偷免费| 六月丁香婷婷久久| 91精品国产欧美一区二区| 亚洲国产精品久久人人爱| 91蜜桃视频在线| 中文字幕一区二区日韩精品绯色| 成人亚洲精品久久久久软件| 久久品道一品道久久精品| 久久精品999| 成人h动漫精品| 91精品国产aⅴ一区二区| 亚洲人成人一区二区在线观看 | 久久久久久久久久久久久夜| 蜜桃在线一区二区三区| 日韩精品一区二区三区蜜臀| 欧美aaaaa成人免费观看视频| 69精品人人人人| 免费不卡在线视频| 久久色在线视频| 国产精品白丝jk黑袜喷水| 国产日产精品1区| 成人午夜免费电影| 亚洲欧美日韩中文播放| 欧美亚一区二区| 亚洲午夜久久久久中文字幕久| 在线欧美小视频| 欧美一区二区三区日韩视频| av电影在线观看完整版一区二区| 久久久久久亚洲综合| 懂色av中文一区二区三区| 国产亚洲欧洲一区高清在线观看| 国产精品一区一区| 国产精品久久久久久久午夜片| 91网站在线观看视频| 一区二区三区.www| 欧美videossexotv100| 国模一区二区三区白浆| 国产精品的网站| 91黄色免费观看| 美女视频一区二区三区| 国产精品亲子伦对白| 欧美三级乱人伦电影| 狠狠色丁香婷婷综合| 亚洲欧洲国产日韩| 欧美丰满少妇xxxxx高潮对白| 精品一区中文字幕| 一区二区三区不卡视频在线观看 | 亚洲摸摸操操av| 在线免费一区三区| 美女视频黄免费的久久| 国产清纯白嫩初高生在线观看91 | 成人午夜av电影| 亚洲自拍另类综合| 久久久精品综合| 欧美日韩高清影院| 成人福利电影精品一区二区在线观看| 一卡二卡欧美日韩| 久久女同精品一区二区| 欧美伊人久久大香线蕉综合69| 蜜臀av一区二区| 亚洲精品中文在线| 337p亚洲精品色噜噜| 成人午夜视频免费看| 日韩国产精品91| 亚洲免费观看在线视频| 久久综合久久久久88| 欧美日韩视频一区二区| 成人免费三级在线| 精品一区二区三区免费观看 | 国产成人一级电影| 香蕉久久夜色精品国产使用方法| 国产日产欧美一区二区视频| 4438成人网| 一本一道久久a久久精品综合蜜臀| 精品亚洲porn| 美女视频黄久久| 亚洲成av人片在线| 日韩美女啊v在线免费观看| 久久先锋影音av| 欧美大白屁股肥臀xxxxxx| 欧美色综合网站| 日本韩国欧美在线| 国产成人啪免费观看软件| 伦理电影国产精品| 麻豆精品一区二区| 日韩福利视频导航| 日韩精品1区2区3区| 一区二区三区四区乱视频| 国产精品伦一区| 国产精品美女www爽爽爽| 国产三级一区二区| 国产女同互慰高潮91漫画| 精品成人在线观看| 国产性色一区二区| 中文文精品字幕一区二区| 国产欧美日产一区| 国产精品视频在线看| 综合久久国产九一剧情麻豆| 亚洲三级理论片| 亚洲午夜在线电影| 亚洲va中文字幕| 免费人成网站在线观看欧美高清| 日本免费在线视频不卡一不卡二| 日韩—二三区免费观看av| 奇米影视7777精品一区二区| 蜜臀av性久久久久蜜臀aⅴ四虎| 狂野欧美性猛交blacked| 黄色资源网久久资源365| 极品销魂美女一区二区三区| 国产精品一区二区果冻传媒| 成人激情综合网站| 91成人在线精品| 欧美一激情一区二区三区| 久久综合九色综合欧美亚洲| 久久久久国产一区二区三区四区| 国产欧美综合在线| 中文字幕欧美三区| 国产精品乱人伦| 亚洲一级二级三级在线免费观看| 亚洲国产aⅴ天堂久久| 麻豆一区二区在线| 丰满少妇久久久久久久| 欧美日韩一区精品| 精品久久久久久久一区二区蜜臀| 国产精品女同一区二区三区| 亚洲一区二区影院| 九九视频精品免费| 一本色道a无线码一区v| 欧美疯狂做受xxxx富婆| 中文字幕精品一区| 日韩激情一二三区| 成人小视频免费在线观看| 欧美亚洲免费在线一区| 精品99999| 亚洲国产精品一区二区久久恐怖片| 久久福利资源站| 91丨porny丨首页| 精品久久久久久久久久久久久久久 | 精品久久免费看| 亚洲图片另类小说| 老司机精品视频导航| fc2成人免费人成在线观看播放| 欧美久久一二区| 亚洲欧美aⅴ...| 国产成人av一区二区三区在线| 欧美三区在线观看| 一区在线中文字幕| 久久99久国产精品黄毛片色诱| 91官网在线观看| 国产精品无遮挡| 国产在线精品视频| 欧美色图在线观看| 国产精品情趣视频| 国产乱码精品一区二区三| 欧美一区二区三区系列电影| 亚洲精品网站在线观看| 国产91丝袜在线18| 精品蜜桃在线看| 男女激情视频一区| 成人在线一区二区三区| 欧美日韩亚洲高清一区二区| 国产精品国产自产拍高清av王其 | 自拍视频在线观看一区二区| 久久精品国产精品青草| 欧美三级韩国三级日本一级| 亚洲视频一区在线| 成人免费看黄yyy456| 国产偷国产偷精品高清尤物| 久久激五月天综合精品| 日韩一区二区电影| 国产精品一二二区| 日韩色视频在线观看| 日韩电影免费在线看| 在线观看91av| 男男成人高潮片免费网站| 日韩欧美一区在线| 蜜臀国产一区二区三区在线播放| 91精品国产美女浴室洗澡无遮挡| 日韩一区欧美二区|